Шаблон ARM, вывод для передачи в следующее развертывание

#azure #arm-template

#azure #arm-шаблон

Вопрос:

Я пытаюсь создать брандмауэр Azure, используя шаблон ARM. Часть развертывания требует, чтобы я передал адрес назначения правила DNAT. Это должен быть общедоступный IP-адрес брандмауэра. Но я не знаю значения до тех пор, пока не будет создан общедоступный IP-адрес брандмауэра, который является частью развертывания брандмауэра.

Как мне использовать общедоступный IP-адрес брандмауэра public IP и перейти к правилу DNAT? Я пытался ссылаться на IP с помощью.IPAddress но я получаю, что IPAddress не является допустимым параметром.

                             "destinationAddresses": [
                            "Needs to be Public IP"
                        ],
  

Это ошибка, возникающая при попытке сослаться на IP

 The language expression property 'ipAddress' can't be evaluated.'
  

Я использую это для создания IP:

   {
  "name": "[concat(variables('publicIPNamePrefix'), add(copyIndex(), 1))]",
  "type": "Microsoft.Network/publicIPAddresses",
  "apiVersion": "2019-04-01",
  "location": "[resourceGroup().location]",
  "sku": {
    "name": "Standard"
  },
  "properties": {
    "publicIPAllocationMethod": "Static",
    "publicIPAddressVersion": "IPv4"
  },
  "copy": {
    "name": "publicIpCopy",
    "count": "[parameters('numberOfPublicIPAddresses')]"
  }
  

},

Любая помощь была бы замечательной. Спасибо

Ответ №1:

вам нужно сделать что-то вроде этого:

 reference(resourceId('Microsoft.Resources/deployments', 'previous_deployment_name'), '2017-05-10').outputs.%OUTPUT_NAME%.value