4 votes

Le modèle Azure ARM dépend des ressources dans la boucle de copie

Je suis en train de créer un modèle ARM qui prend une table de hachage de sous-réseaux et les crée. Cependant, il semble que je doive attendre que le premier sous-réseau soit prêt avant de créer le second, etc. Mais je ne sais pas comment je pourrais dépendre du sous-réseau précédent dans la boucle de copie. Ma ressource modèle ressemble à ceci actuellement :

      {
    "apiVersion": "2018-06-01",
    "type": "Microsoft.Network/virtualNetworks/subnets",
    "name": "[concat(parameters('vnetName') , '/' , parameters('subnets').settings[copyIndex()].name)]",
    "location": "[variables('location')]",
    "copy": {
      "name": "subnetLoop",
      "count": "[variables('subnetcount')]"
    },
    "dependsOn": ["[parameters('vnetName')]",
    "[resourceId(variables('rgname'), 'Microsoft.Network/virtualNetworks/subnets', parameters('vNetName'), parameters('subnets').settings[copyIndex()].name)]"
  ],
    "properties": {
      "addressPrefix": "[parameters('subnets').settings[copyIndex()].addressPrefix]",
       }

Ce qui ne fonctionne pas car le premier sous-réseau ne peut pas se référer à lui-même.

4voto

4c74356b41 Points 23968

Vous pouvez utiliser "mode": "serial" pour contourner ce problème.

"copy": {
  "name": "subnetLoop",
  "count": "[variables('subnetcount')]",
  "mode": "serial"
},

https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-create-multiple#resource-iteration

mais vous devez vraiment examiner les propriétés de la boucle, consultez ce lien :

https://docs.microsoft.com/en-us/azure/architecture/building-blocks/extending-templates/objects-as-parameters#using-a-property-object-in-a-copy-loop

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X