Azure Lighthouse — получите регион для развертывания на уровне подписки

Я хочу внедрить подписку Azure в свой клиент. Для этого я создал шаблон ARM с помощью subscriptionDeploymentSchema. Если я открою этот шаблон с портала, мне будет предложено выбрать регион. Есть ли способ получить значение этого встроенного поля в свой шаблон и использовать его? Azure Lighthouse — получите регион для развертывания на уровне подписки Я хочу отобразить значение поля «Регион» (встроенное) в «Имя региона», которое является моим полем. Это возможно? Я знаю, что для развертывания на уровне группы ресурсов я могу использовать 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
            ...
        }
    ],
...
}

Это вообще возможно? Или я должен создать поле для пользователя, чтобы указать регион? Второй вариант не имеет смысла, так как вам будет предложено указать два местоположения.

Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
Как установить LAMP Stack 1/2 на Azure Linux VM
Как установить LAMP Stack 1/2 на Azure Linux VM
В дополнение к нашему предыдущему сообщению о намерении Azure прекратить поддержку Azure Database для MySQL в качестве единого сервера после 16...
0
0
22
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать deployment().location, чтобы получить значение поля Region.

Кроме того, если вы установите для значения по умолчанию значение [deployment().location], это то, что появится в текстовом поле, то есть нет будет EastUS в пользовательском интерфейсе портала. Если вы действительно хотите настроить UX, вы должны предоставить свой собственный файл uiDefinition.json — или вы можете просто удалить параметр regionName из шаблона и использовать [deployment().location] для значения свойства местоположения.

bmoore-msft 18.03.2022 16:37

Работает как шарм. Спасибо вам, ребята!

xaos_xv 21.03.2022 09:36

Другие вопросы по теме