带有多行的 ARM 模板连接

时间:2021-07-16 14:41:18

标签: azure arm-template

我几乎可以肯定,上次我使用 ARM 模板时,有一些技巧可以使代码整洁,并使用多行 concat()。是的,我知道我可以使用

"myvar": "[concat(
  'abc',
  'def
  )]"

如果我正在使用 cli/powershell 进行部署,但我不会控制模板用户的工具,因此他们很可能只是复制粘贴到 Web 控制台中。

有什么想法吗?除了有一个自定义函数来加入编码为数组的多行文本:

"variables": {
    "splitStr": [
      "first line",
      "second line",
      "third line"
    ],
    "output": "[custom.join(variables('splitStr'))]"
  },
  "functions": [
    {
      "namespace": "custom",
      "members": {
        "join": {
          "parameters": [
            {
            "type": "array",
            "name": "splitStr"
            }
          ],
          "output": {
            "type": "string",
            "value": "[replace(replace(replace(string(parameters('splitStr')), '[\"', ''), '\"]', ''), '\",\"', '\\n')]"
          }
        }
      }
    }
  ],

我们正在讨论一个将数百行配置文本推送到已部署 VM 的工作示例代码,因此文本可读性很重要。

0 个答案:

没有答案