Я создаю шаблон для развертывания связанного шаблона n количество раз, используя функцию copy
, увеличивая используемую объектную переменную (например, с vmRole1
до vmRole2
), но кажется, что пока я могу чтобы объединить правильную строку переменной (например, variables('vmRole1').roleInstanceCount
), она никогда не оценивается до того, как будет передана связанному шаблону.
Есть ли способ заставить шаблон ARM фактически оценить объединенную строку внутри цикла перед отправкой ее в связанный шаблон?
Образец переменной:
"vmRole1": {
...
"roleInstanceCount": 2,
...
}
Пример ресурса:
{
"apiVersion": "2015-01-01",
"type": "Microsoft.Resources/deployments",
"name": "[concat('DeployRole',copyIndex(1) ,variables('vmRole1Name'))]",
"copy": {
"name": "rolecopy",
"count": 2
},
"properties": {
"mode": "Incremental",
"templateLink": {
"uri": "<proper URL here>",
"contentVersion": "1.0.0.0"
},
"parameters": {
...
"roleInstanceCount": { "value": "[concat('variables(', variables('singleQuote'), 'vmRole', copyIndex(1), variables('singlequote'), ').roleInstanceCount')]" },
...