Я хочу внедрить подписку Azure в свой клиент. Для этого я создал шаблон ARM с помощью subscriptionDeploymentSchema
. Если я открою этот шаблон с портала, мне будет предложено выбрать регион. Есть ли способ получить значение этого встроенного поля в свой шаблон и использовать его?
Я хочу отобразить значение поля «Регион» (встроенное) в «Имя региона», которое является моим полем. Это возможно?
Я знаю, что для развертывания на уровне группы ресурсов я могу использовать resourceGroup().location
, но здесь это не работает.
Часть моего шаблона:
{
"$schema": "https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"mspOfferName": {
"type": "string",
"metadata": {
"description": "Specify a unique name for your offer"
}
},
"mspOfferDescription": {
"type": "string",
"metadata": {
"description": "Name of the Managed Service Provider offering"
}
},
"regionName": {
"type": "string",
"metadata": {
"description": "Should have value of the 'Region' built-in field"
}
}
},
"resources": [
...
{
"name": "myNestedTemplate",
"type": "Microsoft.Resources/deployments",
"apiVersion": "2020-10-01",
"location": "<i-want-to-use-value-from-the-built-in-field>", // <-- I WANT TO USE REGION FROM THE BUILT-IN FIELD HERE
...
}
],
...
}
Это вообще возможно? Или я должен создать поле для пользователя, чтобы указать регион? Второй вариант не имеет смысла, так как вам будет предложено указать два местоположения.
Кроме того, если вы установите для значения по умолчанию значение
[deployment().location]
, это то, что появится в текстовом поле, то есть нет будет EastUS в пользовательском интерфейсе портала. Если вы действительно хотите настроить UX, вы должны предоставить свой собственный файл uiDefinition.json — или вы можете просто удалить параметр regionName из шаблона и использовать[deployment().location]
для значения свойства местоположения.