AzureCLI@2 — задача Azure CLI версии 2
Выполнение команд Azure CLI для подписки Azure в скрипте PowerShell Core или оболочки при запуске в агенте Linux. Или выполните команды Azure CLI для подписки Azure в скрипте PowerShell, PowerShell Core или пакетном скрипте при запуске в агенте Windows.
Выполнение команд Azure CLI для подписки Azure в скрипте PowerShell Core или оболочки при запуске в агенте Linux. Или выполните команды Azure CLI для подписки Azure в скрипте PowerShell, PowerShell Core или пакетном скрипте при запуске в агенте Windows.
Синтаксис
# Azure CLI v2
# Run Azure CLI commands against an Azure subscription in a PowerShell Core/Shell script when running on Linux agent or PowerShell/PowerShell Core/Batch script when running on Windows agent.
- task: AzureCLI@2
inputs:
azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection.
scriptType: # 'ps' | 'pscore' | 'batch' | 'bash'. Required. Script Type.
scriptLocation: 'scriptPath' # 'inlineScript' | 'scriptPath'. Required. Script Location. Default: scriptPath.
scriptPath: # string. Required when scriptLocation = scriptPath. Script Path.
#inlineScript: # string. Required when scriptLocation = inlineScript. Inline Script.
#arguments: # string. Alias: scriptArguments. Script Arguments.
#powerShellErrorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. Optional. Use when scriptType = ps || scriptType = pscore. ErrorActionPreference. Default: stop.
# Advanced
#addSpnToEnvironment: false # boolean. Access service principal details in script. Default: false.
#useGlobalConfig: false # boolean. Use global Azure CLI configuration. Default: false.
#workingDirectory: # string. Alias: cwd. Working Directory.
#failOnStandardError: false # boolean. Fail on Standard Error. Default: false.
#powerShellIgnoreLASTEXITCODE: false # boolean. Optional. Use when scriptType = ps || scriptType = pscore. Ignore $LASTEXITCODE. Default: false.
# Azure CLI v2
# Run Azure CLI commands against an Azure subscription in a PowerShell Core/Shell script when running on Linux agent or PowerShell/Powershell Core/Batch script when running on Windows agent.
- task: AzureCLI@2
inputs:
azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection.
scriptType: # 'ps' | 'pscore' | 'batch' | 'bash'. Required. Script Type.
scriptLocation: 'scriptPath' # 'inlineScript' | 'scriptPath'. Required. Script Location. Default: scriptPath.
scriptPath: # string. Required when scriptLocation = scriptPath. Script Path.
#inlineScript: # string. Required when scriptLocation = inlineScript. Inline Script.
#arguments: # string. Alias: scriptArguments. Script Arguments.
#powerShellErrorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. Optional. Use when scriptType = ps || scriptType = pscore. ErrorActionPreference. Default: stop.
# Advanced
#addSpnToEnvironment: false # boolean. Access service principal details in script. Default: false.
#useGlobalConfig: false # boolean. Use global Azure CLI configuration. Default: false.
#workingDirectory: # string. Alias: cwd. Working Directory.
#failOnStandardError: false # boolean. Fail on Standard Error. Default: false.
#powerShellIgnoreLASTEXITCODE: false # boolean. Optional. Use when scriptType = ps || scriptType = pscore. Ignore $LASTEXITCODE. Default: false.
Входные данные
azureSubscription
- Подключение Resource Manager Azure
Входной псевдоним: connectedServiceNameARM
. string
. Обязательный.
Выберите подключение службы azure Resource Manager для развертывания.
scriptType
- Тип скрипта
string
. Обязательный. Допустимые значения: ps
(PowerShell), pscore
(PowerShell Core), batch
, bash
(оболочка).
Тип скрипта. bash
Выберите скрипт или pscore
при запуске в агенте Linux. Или выберите batch
скрипт , ps
или pscore
при запуске в агенте Windows. Скрипт pscore
может выполняться на кроссплатформенных агентах (Linux, macOS или Windows).
scriptType
- Тип скрипта
string
. Обязательный. Допустимые значения: ps
(PowerShell), pscore
(PowerShell Core), batch
, bash
(оболочка).
Тип скрипта. bash
Выберите скрипт или pscore
при запуске в агенте Linux. Или выберите batch
скрипт , ps
или pscore
при запуске в агенте Windows. Скрипт pscore
может выполняться на кроссплатформенных агентах (Linux, macOS или Windows).
scriptLocation
- Расположение скрипта
string
. Обязательный. Допустимые значения: inlineScript
(встроенный скрипт), scriptPath
(путь к скрипту). Значение по умолчанию: scriptPath
.
Путь к скрипту.
scriptPath
- Путь к скрипту
string
. Требуется, если scriptLocation = scriptPath
.
Полный путь к скрипту. Используйте .ps1
, .bat
или .cmd
при использовании агента на основе Windows. Используйте .ps1
или .sh
при использовании агента под управлением Linux или пути относительно рабочего каталога по умолчанию.
inlineScript
- Встроенный скрипт
string
. Требуется, если scriptLocation = inlineScript
.
Скрипты можно написать здесь. При использовании агента Windows используйте PowerShell, PowerShell Core или пакетные скрипты. Используйте PowerShell Core или скрипты оболочки при использовании агентов под управлением Linux. Для пакетных файлов используйте префикс call
перед каждой командой Azure. Вы также можете передать в этот скрипт предопределенные и пользовательские переменные с помощью аргументов.
Ниже приведен пример для PowerShell/PowerShellCore/shell.
az --version
az account show
Ниже приведен пример пакетной службы.
call az --version
call az account show
arguments
- Аргументы скрипта
Входной псевдоним: scriptArguments
. string
.
Аргументы, передаваемые в скрипт.
powerShellErrorActionPreference
- ErrorActionPreference
string
. Необязательный элемент. Используйте при scriptType = ps || scriptType = pscore
. Допустимые значения: stop
, continue
, silentlyContinue
. Значение по умолчанию: stop
.
Добавляет строку $ErrorActionPreference = 'VALUE'
в начало скрипта PowerShell/PowerShell Core.
addSpnToEnvironment
- Доступ к сведениям о субъекте-службе в скрипте
boolean
. Значение по умолчанию: false
.
Добавляет идентификатор субъекта-службы, ключ субъекта-службы или маркер федерации удостоверения рабочей нагрузки и идентификатор клиента выбранной конечной точки Azure в среду выполнения скрипта. В скрипте servicePrincipalId
можно использовать переменные , servicePrincipalKey
или idToken
и tenantId
.
Это учитывается, только если конечная точка Azure имеет схему проверки подлинности субъекта-службы или схему проверки подлинности федерации удостоверений рабочей нагрузки.
В следующем списке показан синтаксис для доступа к переменным среды на основе типа скрипта.
Синтаксис скрипта PowerShell:
$env:servicePrincipalId
Синтаксис скрипта пакетной службы:
%servicePrincipalId%
Синтаксис скрипта оболочки:
$servicePrincipalId
useGlobalConfig
- Использование глобальной конфигурации Azure CLI
boolean
. Значение по умолчанию: false
.
Если эти входные данные имеют значение false, эта задача будет использовать собственный каталог конфигурации Azure CLI. Используйте эту задачу для запуска задач Azure CLI в параллельных выпусках.
workingDirectory
- Рабочий каталог
Входной псевдоним: cwd
. string
.
Текущий рабочий каталог, в котором выполняется скрипт. Если оставить это поле пустым, эти входные данные являются корнем репозитория (сборка) или артефактами (выпуск), то есть $(System.DefaultWorkingDirectory)
.
failOnStandardError
- Сбой при стандартной ошибке
boolean
. Значение по умолчанию: false
.
Если эти входные данные имеют значение true, эта задача завершится сбоем при записи ошибок в поток StandardError. Снимите флажок, чтобы игнорировать стандартные ошибки и использовать коды выхода для определения состояния.
powerShellIgnoreLASTEXITCODE
- Пропуск $LASTEXITCODE
boolean
. Необязательный элемент. Используйте при scriptType = ps || scriptType = pscore
. Значение по умолчанию: false
.
Если это значение false, строка if ((Test-Path -LiteralPath variable:\LASTEXITCODE)) { exit $LASTEXITCODE }
добавляется в конец скрипта. Будет распространен последний код выхода из внешней команды в качестве кода выхода PowerShell. В противном случае строка не добавляется в конец скрипта.
Параметры управления задачами
Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.
Выходные переменные
Нет.
Remarks
Новые возможности задачи "Версия" версии 2.0
- Поддержка сценариев PowerShell и PowerShell Core.
- PowerShell Core работает с кроссплатформенными агентами (Linux, macOS или Windows). Убедитесь, что агент имеет PowerShell версии 6 или более.
- Сценарий PowerShell работает только с агентом Windows. Убедитесь, что агент имеет PowerShell версии 5 или ниже.
Предварительные требования
- Подписка Microsoft Azure.
- Подключение службы azure Resource Manager к учетной записи Azure.
- В размещенных агентах Майкрософт Azure CLI установлен заранее. Однако при использовании частных агентов установите Azure CLI на компьютерах, на которых выполняется агент сборки и выпуска. Если агент уже запущен на компьютере, на котором установлен Azure CLI, перезапустите агент, чтобы обеспечить обновление всех соответствующих промежуточных переменных.
Примеры
В следующем примере перечисляется версия Azure CLI и возвращаются сведения о подписке.
- task: AzureCLI@2
displayName: Azure CLI
inputs:
azureSubscription: <Name of the Azure Resource Manager service connection>
scriptType: ps
scriptLocation: inlineScript
inlineScript: |
az --version
az account show
В следующем примере показано, как передать аргументы в скрипт.
Передача аргументов во встроенные скрипты:
- task: AzureCLI@2 inputs: azureSubscription: <Azure_Resource_Manager_Service_Connection> scriptType: 'ps' scriptLocation: 'inlineScript' arguments: '$(AZURE_STORAGE_ACCOUNT) $(AZURE_STORAGE_KEY)' inlineScript: './scripts/publish.ps1 $1 $2'
Передача аргументов с помощью пути к скрипту:
- task: AzureCLI@2 inputs: azureSubscription: <Azure_Resource_Manager_Service_Connection> scriptType: 'ps' scriptLocation: 'scriptPath' arguments: '$(AZURE_STORAGE_ACCOUNT) $(AZURE_STORAGE_KEY)' scriptPath: './scripts/publish.ps1'
Требования
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
Требования | Нет |
Capabilities | Эта задача не удовлетворяет требованиям для последующих задач в задании. |
Ограничения команд | Любой |
Устанавливаемые переменные | Любой |
Версия агента | 2.0.0 или более поздней версии |
Категория задач | Развернуть |