【发布时间】:2019-08-27 16:07:19
【问题描述】:
我正在尝试创建 AWS Cloudwatch 事件规则,以便在运行特定任务的容器成功完成运行时发送 SNS 电子邮件通知。我浏览了 Terraform 文档,但找不到动态注入 taskArn 的好方法:
resource "aws_cloudwatch_event_rule" "important-task-complete-rule" {
name = "reporting-task-completed"
description = "Notification for when an important task finishes running successfully."
event_pattern = <<PATTERN
{
"source": [
"aws.ecs"
],
"detail-type": [
"ECS Task State Change"
],
"detail": {
"lastStatus": [
"STOPPED"
],
"stoppedReason" : [
"Essential container in task exited"
],
"containers": {
"exitCode": [
0
],
"taskArn": "arn:aws:ecs:us-east-1:MY_ACCOUNT:task/MY_TASK_ID_THAT_I_WANT_TO_INJECT"
}
}
}
PATTERN
}
例如,这里的documentation examples 提供了与我在上面使用的相同的硬编码<<PATTERN 示例。
是否有一种模板文件方法可以动态插入我的 ARN 而无需硬编码?
【问题讨论】:
-
您可以在内联 JSON 中使用变量。
标签: amazon-web-services terraform devops amazon-cloudwatch