我正在使用 Terraform 创建 LogicApps。逻辑应用程序将执行 Webhook,我想发布文本。
我想使用 If 语句自定义 Terraform 代码的文本字段。 我希望文本的某些部分仅在产品环境中显示。 但是,我的 terraform 代码将整个 if 语句传递给 LogicApps,并且在 LogicApps 执行时出现有效负载错误。
resource "azurerm_logic_app_action_http" "example" {
name = "webhook"
logic_app_id = azurerm_logic_app_workflow.example.id
method = "GET"
uri = "http://example.com/some-webhook"
method = "POST"
headers = { "Content-Type" = "application/json" }
body = <<-BODY
{
"blocks": [
{
"text": {
"text": "[${var.environment_name}] == "prod" ? *This is prod alert* : *---*",
"type": "mrkdwn"
}
}
最佳答案
您可以在 BODY
中使用条件,如下所示:
body = <<-BODY
{
"blocks": [
{
"text": {
"text": "Alert: ${var.environment_name == "prod" ? "*This is prod alert*" : "*---*"}",
"type": "mrkdwn"
}
}
BODY
关于azure - 如何在 Terraform for LogicApps 中创建 if 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69568501/