为什么terraform使用"formatdate"函数生成相同的时间戳



https://www.terraform.io/docs/configuration/functions/formatdate.html上面是这个函数的文档,我用它在SageMaker批处理转换作业的名称上添加了一个时间戳,它将从stepfunction状态机触发:

locals {
timestamp = formatdate("YYYYMMDDhhmmss", timestamp())
}

在stepfunction地形文件中:

definition = templatefile("stepfuntion.json",
{
xxx
timestamp      = local.timestamp
)

在";stepfuntion.json":

{...
"TransformJobName": "jobname-${timestamp}",

}
},
"End": true
}
}
}

具体地在"TransformJobName": "jobname-${timestamp}"中定义作业名称,我应用了两次地形,上午10点和11点,但第二次它生成了与第一次相同的时间戳,我是不是遗漏了什么?我以为这个函数会生成实时时间戳。我已经挣扎了一上午了,非常感谢。

工作非常好,我使用了问题中描述的您的代码和模板文件stepfuction.json

# main.tf
locals {
current  = formatdate("YYYYMMDDhhmmss",timestamp())
}
output "tempasda"{
value = templatefile("task.json", {timestamp = local.current, model_name="mymodel"})
}

以及相应的输出

$ terraform  apply -auto-approve |grep TransformJobName
"TransformJobName": "jobname-20210106134614",
$ terraform  apply -auto-approve |grep TransformJobName
"TransformJobName": "jobname-20210106134615",
$ terraform  apply -auto-approve |grep TransformJobName
"TransformJobName": "jobname-20210106134617",

$ terraform  apply -auto-approve |grep TransformJobName
"TransformJobName": "jobname-20210106134618",

terrform版本使用0.13.x和0.14.x测试

相关内容

  • 没有找到相关文章

最新更新