我目前正在寻找构建一个事件驱动的 EventBridge 事件模块(例如,与预定的事件模块相反),以便在我们的 IaaC 产品组合中使用。下面的示例代码显示了正常事件 JSON 模式的外观。我显然可以为“详细类型”和“源”添加一个普通的单个变量,但是有人可以建议一种创建某种单一映射变量的方法,我可以为“详细”映射传递一个或多个参数?
event_pattern = <<PATTERN
{
"detail-type": ["Glue Job State Change"],
"source": ["aws.glue"],
"detail": {
"jobName": ["${var.env}_${var.department}_gluejob_${var.pipeline}_publish-small", "${var.env}_${var.department}_gluejob_${var.pipeline}_catalog", "${var.env}_${var.department}_gluejob_${var.pipeline}_publish-large", "${var.env}_${var.department}_gluejob_${var.pipeline}_notify"],
"state": ["FAILED"]
}
}
对此的需求是,在许多不同的服务中,我们可能需要“详细信息”中的任意数量的键和值参数,因此以某种方式传递可以具有任意数量的键值对的映射将是理想的。现在,如果这不是 json,我可以在 TF 中使用动态值,但我不确定如何使用它作为内联 JSON 模式。
在有人建议之前我还应该提到,我目前刚刚完成了将事件模式作为变量传递并使用数据和模板 json.tpl 文件的工作,该文件可以为每个资源的每次使用单独传递模式该模块,但想知道是否有人可以就我希望上面的解决方案提供建议?
任何建议将不胜感激!