Azure ARM 模板动态变量绑定
Azure ARM template dynamic variable binding
如何通过传递动态变量从列表中获取键的值?
我的代码
"variables": {
"locationCodeList": [
{
"southcentralus": "ussc",
"northcentralus": "usnc",
"westcentralus": "uswc",
"centralus": "usce",
"westus": "uswe",
"westus2": "usw2"
}
],
"locCode": "[variables('locationCodeList')[0].(resourceGroup().location)]"
}
我想在 resourceGroup().location 为 southcentralus 时获取值 ussc。有没有更好的方法来实现这个?
它是 json 所以你可以只使用 []
我用这个命令来测试下面的模板。
az deployment group create --resource-group rg-test --template-file .\blank.template
进行更新,使 locationCodeList 成为对象而不是数组。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
},
"variables": {
"locationCodeList": {
"southcentralus": "ussc",
"northcentralus": "usnc",
"westcentralus": "uswc",
"centralus": "usce",
"westus": "uswe",
"westus2": "usw2"
},
"locCode": "[variables('locationCodeList')[resourceGroup().location]]"
},
"resources": [
],
"outputs": {
"locCodeOutput": {
"type": "string",
"value": "[variables('locCode')]"
}
}
}
万一有这个需要,我想离开它。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
},
"variables": {
"locationCodeList": [
{
"southcentralus": "ussc",
"northcentralus": "usnc",
"westcentralus": "uswc",
"centralus": "usce",
"westus": "uswe",
"westus2": "usw2"
}
],
"locCode": "[variables('locationCodeList')[0][resourceGroup().location]]"
},
"resources": [
],
"outputs": {
"locCodeOutput": {
"type": "string",
"value": "[variables('locCode')]"
}
}
}
如何通过传递动态变量从列表中获取键的值?
我的代码
"variables": {
"locationCodeList": [
{
"southcentralus": "ussc",
"northcentralus": "usnc",
"westcentralus": "uswc",
"centralus": "usce",
"westus": "uswe",
"westus2": "usw2"
}
],
"locCode": "[variables('locationCodeList')[0].(resourceGroup().location)]"
}
我想在 resourceGroup().location 为 southcentralus 时获取值 ussc。有没有更好的方法来实现这个?
它是 json 所以你可以只使用 []
我用这个命令来测试下面的模板。 az deployment group create --resource-group rg-test --template-file .\blank.template
进行更新,使 locationCodeList 成为对象而不是数组。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
},
"variables": {
"locationCodeList": {
"southcentralus": "ussc",
"northcentralus": "usnc",
"westcentralus": "uswc",
"centralus": "usce",
"westus": "uswe",
"westus2": "usw2"
},
"locCode": "[variables('locationCodeList')[resourceGroup().location]]"
},
"resources": [
],
"outputs": {
"locCodeOutput": {
"type": "string",
"value": "[variables('locCode')]"
}
}
}
万一有这个需要,我想离开它。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
},
"variables": {
"locationCodeList": [
{
"southcentralus": "ussc",
"northcentralus": "usnc",
"westcentralus": "uswc",
"centralus": "usce",
"westus": "uswe",
"westus2": "usw2"
}
],
"locCode": "[variables('locationCodeList')[0][resourceGroup().location]]"
},
"resources": [
],
"outputs": {
"locCodeOutput": {
"type": "string",
"value": "[variables('locCode')]"
}
}
}