AzureResourceManagerTemplateDeployment@3 — задача развертывания шаблона ARM версии 3
Используйте эту задачу для развертывания шаблона Azure Resource Manager (ARM) во всех областях развертывания.
Синтаксис
# ARM template deployment v3
# Deploy an Azure Resource Manager (ARM) template to all the deployment scopes.
- task: AzureResourceManagerTemplateDeployment@3
inputs:
# Azure Details
deploymentScope: 'Resource Group' # 'Management Group' | 'Subscription' | 'Resource Group'. Required. Deployment scope. Default: Resource Group.
azureResourceManagerConnection: # string. Alias: ConnectedServiceName. Required. Azure Resource Manager connection.
#subscriptionId: # string. Alias: subscriptionName. Required when deploymentScope != Management Group. Subscription.
#action: 'Create Or Update Resource Group' # 'Create Or Update Resource Group' | 'DeleteRG'. Required when deploymentScope = Resource Group. Action. Default: Create Or Update Resource Group.
#resourceGroupName: # string. Required when deploymentScope = Resource Group. Resource group.
#location: # string. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Location.
# Template
#templateLocation: 'Linked artifact' # 'Linked artifact' | 'URL of the file'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Template location. Default: Linked artifact.
#csmFileLink: # string. Required when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template link.
#csmParametersFileLink: # string. Optional. Use when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters link.
#csmFile: # string. Required when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template.
#csmParametersFile: # string. Optional. Use when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters.
#overrideParameters: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Override template parameters.
#deploymentMode: 'Incremental' # 'Incremental' | 'Complete' | 'Validation'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment mode. Default: Incremental.
# Advanced
#deploymentName: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment name.
#deploymentOutputs: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment outputs.
#addSpnToEnvironment: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Access service principal details in override parameters. Default: false.
#useWithoutJSON: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Use individual output values without JSON.Stringify applied. Default: false.
# ARM template deployment v3
# Deploy an Azure Resource Manager (ARM) template to all the deployment scopes.
- task: AzureResourceManagerTemplateDeployment@3
inputs:
# Azure Details
deploymentScope: 'Resource Group' # 'Management Group' | 'Subscription' | 'Resource Group'. Required. Deployment scope. Default: Resource Group.
azureResourceManagerConnection: # string. Alias: ConnectedServiceName. Required. Azure Resource Manager connection.
#subscriptionId: # string. Alias: subscriptionName. Required when deploymentScope != Management Group. Subscription.
#action: 'Create Or Update Resource Group' # 'Create Or Update Resource Group' | 'DeleteRG'. Required when deploymentScope = Resource Group. Action. Default: Create Or Update Resource Group.
#resourceGroupName: # string. Required when deploymentScope = Resource Group. Resource group.
#location: # string. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Location.
# Template
#templateLocation: 'Linked artifact' # 'Linked artifact' | 'URL of the file'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Template location. Default: Linked artifact.
#csmFileLink: # string. Required when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template link.
#csmParametersFileLink: # string. Optional. Use when templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters link.
#csmFile: # string. Required when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template.
#csmParametersFile: # string. Optional. Use when templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group. Template parameters.
#overrideParameters: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Override template parameters.
#deploymentMode: 'Incremental' # 'Incremental' | 'Complete' | 'Validation'. Required when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment mode. Default: Incremental.
# Advanced
#deploymentName: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment name.
#deploymentOutputs: # string. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Deployment outputs.
#addSpnToEnvironment: false # boolean. Optional. Use when action = Create Or Update Resource Group || deploymentScope != Resource Group. Access service principal details in override parameters. Default: false.
Входные данные
deploymentScope
-
Область развертывания
string
. Обязательный. Допустимые значения: Management Group
, Subscription
, Resource Group
. Значение по умолчанию: Resource Group
.
Область развертывания. Дополнительные сведения об областях развертывания.
azureResourceManagerConnection
-
Подключение azure Resource Manager
Входной псевдоним: ConnectedServiceName
.
string
. Обязательный.
Указывает подключение службы azure Resource Manager с доступом к выбранному область развертывания.
subscriptionId
-
Подписки
Входной псевдоним: subscriptionName
.
string
. Требуется при .deploymentScope != Management Group
Указывает подписку Azure.
Важно!
Указанное значение должно быть идентификатором подписки, а не именем подписки.
action
-
Действий
string
. Требуется при .deploymentScope = Resource Group
Допустимые значения: Create Or Update Resource Group
, DeleteRG
(удалить группу ресурсов). Значение по умолчанию: Create Or Update Resource Group
.
Действие, выполняеме с ресурсами Или группой ресурсов Azure.
resourceGroupName
-
Группа ресурсов
string
. Требуется при .deploymentScope = Resource Group
Предоставляет имя группы ресурсов.
location
-
Расположение
string
. Требуется при .action = Create Or Update Resource Group || deploymentScope != Resource Group
Области развертывания группы ресурсов. Расположение для развертывания группы ресурсов. Если группа ресурсов уже существует в подписке Azure, это значение будет игнорироваться. Другие области развертывания. Расположение для хранения метаданных развертывания.
templateLocation
-
Расположение шаблона
string
. Требуется при .action = Create Or Update Resource Group || deploymentScope != Resource Group
Допустимые значения: Linked artifact
, URL of the file
. Значение по умолчанию: Linked artifact
.
Расположение JSON-файлов шаблона и параметров. Выберите Связанный артефакт , если файлы являются частью связанного кода или артефактов сборки. Для связанных артефактов можно также указать путь к файлу Bicep. Выберите URL-адрес файла, если JSON-файлы находятся по любым общедоступным URL-адресам http/https. Чтобы использовать файл, хранящийся в частной учетной записи хранения, извлеките и включите маркер подписанного URL-адреса (SAS) в URL-адрес шаблона. Например, <blob_storage_url>/template.json?
. Чтобы отправить файл параметров в учетную запись хранения и создать маркер SAS, можно использовать задачу копирования файлов Azure или выполнить действия с помощью PowerShell или Azure CLI.
csmFileLink
-
Ссылка на шаблон
string
. Требуется при .templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group
Указывает URL-адрес файла шаблона. Пример URL-адреса: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.json
Чтобы развернуть шаблон, хранящийся в частной учетной записи хранения, получите и включите маркер подписанного URL-адреса (SAS) в URL-адрес шаблона. Например, <blob_storage_url>/template.json?<SAStoken>
. Чтобы отправить файл шаблона (или связанный шаблон) в учетную запись хранения и создать маркер SAS, используйте задачу копирования файлов Azure или выполните действия с помощью PowerShell или Azure CLI.
Чтобы просмотреть параметры шаблона в сетке ...
, щелкните рядом с текстовым полем Переопределить параметры шаблона. Для использования этой функции требуется включить правила CORS в источнике. Если шаблоны находятся в большом двоичном объекте службы хранилища Azure, см. раздел Общий доступ к ресурсам независимо от источника , чтобы включить CORS.
csmParametersFileLink
-
Ссылка на параметры шаблона
string
. Необязательный элемент. Используйте при templateLocation = URL of the file && action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Указывает URL-адрес файла параметров. Пример URL-адреса: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-vm-simple-windows/azuredeploy.parameters.json
Чтобы использовать файл, хранящийся в частной учетной записи хранения, извлеките и включите маркер подписанного URL-адреса (SAS) в URL-адрес шаблона. Например, <blob_storage_url>/template.json?<SAStoken>
. Чтобы отправить файл шаблона (или связанный шаблон) в учетную запись хранения и создать маркер SAS, используйте задачу копирования файлов Azure или выполните действия с помощью PowerShell или Azure CLI.
Чтобы просмотреть параметры шаблона в сетке ...
, щелкните рядом с текстовым полем Переопределить параметры шаблона. Для использования этой функции требуется включить правила CORS в источнике. Если шаблоны находятся в большом двоичном объекте службы хранилища Azure, см. раздел Общий доступ к ресурсам независимо от источника , чтобы включить CORS.
csmFile
-
Шаблон
string
. Требуется при .templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group
Указывает путь или шаблон, указывающий на шаблон azure Resource Manager. Дополнительные сведения о шаблонах Resource Manager Azure. Чтобы сразу приступить к работе, используйте этот пример шаблона. Поддерживает файлы Bicep в Azure CLI версии > 2.20.0.
csmParametersFile
-
Параметры шаблона
string
. Необязательный элемент. Используйте при templateLocation = Linked artifact && action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Укажите путь или шаблон, указывающий файл параметров для шаблона Resource Manager Azure. Поддерживает файлы Bicep Param в Azure CLI версии > 2.47.0.
overrideParameters
-
Переопределение параметров шаблона
string
. Необязательный элемент. Используйте при action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Указывает параметры шаблона для переопределения.
Чтобы просмотреть параметры шаблона в сетке ...
, щелкните рядом с текстовым полем Переопределение параметров. Для использования этой функции требуется включить правила CORS в источнике. Если шаблоны находятся в большом двоичном объекте хранилища Azure, укажите эту строку, чтобы включить CORS, или введите параметры шаблона для переопределения в текстовом поле.
Например, -storageName fabrikam -adminUsername $(vmusername) -adminPassword (ConvertTo-SecureString -String '$(password)' -AsPlainText -Force) -azureKeyVaultName $(fabrikamFibre)
.
Если значение параметра содержит несколько слов, заключите их в кавычки, даже если вы передаете значение с помощью переменных.
Например, -name "parameter value" -name2 "$(var)"
.
Чтобы переопределить параметры типа объекта, используйте строковые объекты JSON.
Например, -options ["option1"] -map {"key1": "value1" }
.
deploymentMode
-
Режим развертывания
string
. Требуется при .action = Create Or Update Resource Group || deploymentScope != Resource Group
Допустимые значения: Incremental
, Complete
, Validation
(только проверка). Значение по умолчанию: Incremental
.
Режим Incremental
обрабатывает развертывания как добавочные обновления для группы ресурсов. Он оставляет без изменений ресурсы, которые существуют в группе ресурсов, но не указаны в шаблоне.
Complete
режим удаляет ресурсы, которых нет в шаблоне. Полный режим занимает относительно больше времени, чем добавочный режим. Если время ожидания задачи истекло, рассмотрите возможность увеличения времени ожидания или перехода на Incremental
режим .
Предупреждение
В полном режиме будут удалены все существующие ресурсы в группе ресурсов, которые не указаны в шаблоне. Убедитесь, что группа ресурсов, в которую вы развертываете, не содержит необходимых ресурсов, не указанных в шаблоне.
Validate
Mode позволяет находить проблемы с шаблоном перед созданием фактических ресурсов.
Примечание
Режим Validate
всегда создает группу ресурсов, даже если ресурсы не развернуты.
Дополнительные сведения о режимах развертывания.
deploymentName
-
Имя развертывания
string
. Необязательный элемент. Используйте при action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Указывает имя создаваемого развертывания группы ресурсов.
deploymentOutputs
-
Выходные данные развертывания
string
. Необязательный элемент. Используйте при action = Create Or Update Resource Group || deploymentScope != Resource Group
.
Предоставляет имя переменной для выходной переменной, которая содержит раздел outputs текущего объекта развертывания в строковом формате. Вы можете использовать ConvertFrom-Json
командлет PowerShell для анализа объекта JSON и доступа к отдельным выходным значениям. Дополнительные сведения о выходных данных развертывания.
addSpnToEnvironment
-
Доступ к сведениям о субъекте-службе в параметрах переопределения
boolean
. Необязательный элемент. Используйте при action = Create Or Update Resource Group || deploymentScope != Resource Group
. Значение по умолчанию: false
.
Добавляет идентификатор субъекта-службы и ключ конечной точки Azure, выбранной в качестве среды выполнения скрипта. Переменные $servicePrincipalId
и $servicePrincipalKey
могут находиться в параметрах переопределения, таких как -key $servicePrincipalKey
.
useWithoutJSON
-
Используйте отдельные выходные значения без JSON. Применено stringify
boolean
. Необязательный элемент. Используйте при action = Create Or Update Resource Group || deploymentScope != Resource Group
. Значение по умолчанию: false
.
Отдельные выходные значения преобразуются с помощью JSON. Stringify по умолчанию. Если вы хотите использовать выходные значения без их преобразования с помощью JSON. Stringify, включите этот параметр. Дополнительные сведения см. в этой статье.
Параметры управления задачами
Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.
Выходные переменные
Нет.
Remarks
Примечание
Эта задача поддерживает файлы Bicep в Azure CLI версии > 2.20.0.
- Добавлена поддержка развертывания во всех областях развертывания.
- Удалены все действия, связанные с виртуальной машиной.
Требования
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
Требования | None |
Capabilities | Эта задача не удовлетворяет требованиям для последующих задач в задании. |
Ограничения команд | Любой |
Устанавливаемые переменные | Любой |
Версия агента | 2.119.1 или более поздней версии |
Категория задач | Развертывание |