pky*_*eck 8 terraform terraform-provider-aws terraform0.12+
我有一个使用 terraform 创建的 AWS Lambda 函数。代码更改是从我们的 CI 服务器自动部署的,并且 commit-sha 作为环境变量 ( GIT_COMMIT_HASH
) 传递 -因此这会更改 Terraform 范围之外的 Lambda 函数(因为人们在问...)。
到目前为止效果很好。但现在我想更新函数的节点版本,并且 terraform 尝试将环境变量重置为 的初始值"unknown"
。
我尝试使用该ignore_changes
块,但无法让 terraform 忽略其他地方所做的更改......
resource "aws_lambda_function" "test" {
filename = data.archive_file.helloworld.output_path
function_name = "TestName_${var.environment}"
role = aws_iam_role.test.arn
handler = "src/index.handler"
runtime = "nodejs14.x"
timeout = 1
memory_size = 128
environment {
variables = {
GIT_COMMIT_HASH = "unknown"
}
}
lifecycle {
ignore_changes = [
environment.0.variables["GIT_COMMIT_HASH"],
]
}
}
Run Code Online (Sandbox Code Playgroud)
这可能吗?我该如何引用该变量?
** 编辑 **
计划输出如下所示:
# aws_lambda_function.test will be updated in-place
~ resource "aws_lambda_function" "test" {
# ... removed some lines
source_code_size = 48012865
tags = {}
timeout = 1
version = "12"
~ environment {
~ variables = {
~ "GIT_COMMIT_HASH" = "b7a77d0" -> "unknown"
}
}
tracing_config {
mode = "PassThrough"
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4613 次 |
最近记录: |