我希望在AWS参数存储中存储一个web钩子URL,并使用terraform将值传递给lambda环境变量。当我运行terraform时,lambdas环境变量不会从SSM参数store.Any中获得值,如果这可能通过terraform而不更新lambda代码的话?
Lambda Env Variable
WEBHOOK_URL:
data.aws_ssm_parameter.ecr_scan_notify_ssm.valueConfig
resource "aws_ssm_parameter" "ecr_scan_notify_ssm" {
name = "ecr_scan_notify_ssm"
type = "SecureString"
value = "not defined here"
overwrite = false
lifecycle {
ignore_changes = [value,]
}
}
data "aws_ssm_parameter" "ecr_scan_notify_ssm" {
name = "ecr_scan_notify_ssm"
}
environment {
variables = {
WEBHOOK_URL = "data.aws_ssm_parameter.ecr_scan_notify_ssm.value"
CHANNEL = "test-scan"
}
}发布于 2021-02-04 16:58:49
您只是传递一个硬编码字符串"data.aws_ssm_parameter.ecr_scan_notify_ssm.value"。这里没有查到。您要么需要使用字符串内插语法:
WEBHOOK_URL = "${data.aws_ssm_parameter.ecr_scan_notify_ssm.value}"
或者直接引用值:
WEBHOOK_URL = data.aws_ssm_parameter.ecr_scan_notify_ssm.value
https://stackoverflow.com/questions/66050188
复制相似问题