如何在 ARM 模板的参数内引用参数?

Bir*_*man 6 azure azure-devops azure-rm-template

我似乎找不到任何方法将参数的值用作ARM 模板参数文件中另一个参数的一部分:

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "someCustomParam": {
        "value": "desired value"
    },
    "tags": {
        "value": {
            "tag1": "[parameters('someCustomParam')]",
            "tag2": "some tag value"
        }
    },
  }
}
Run Code Online (Sandbox Code Playgroud)

请注意我想如何使用前一个参数的值作为另一个参数的值。

“tag1”的值只是字符串,并且该值不会从parameter() 函数中替换。我已经使用Test-AzResourceGroupDeploymentPowerShell cmdlet 对此进行了测试。

我有什么办法可以做到这一点吗?

Jac*_*Jia -1

您需要使用变量

在变量中,您可以使用“[parameters('parameterName')]”。

您可以以与参数类似的方式使用变量:“[variables('variableName')]”

更新:

这是一个示例:

"parameters": {
    "someCustomParam": {
        "type": "string"
    }
},
"variables": {
    "tags": {
        "tag1": "[parameters('someCustomParam')]",
        "tag2": "some tag value"
    }
}
Run Code Online (Sandbox Code Playgroud)

然后您可以在模板的资源中使用该变量。