AzurePowerShell@5 — задача Azure PowerShell версии 5
Используйте эту задачу для запуска скрипта PowerShell в среде Azure. Контекст Azure проходит проверку подлинности с помощью предоставленного подключения службы azure Resource Manager.
Примечание
По умолчанию Azure PowerShell версии 5 использует PowerShell Core для агентов Linux и Windows PowerShell для агентов Windows. Чтобы использовать последнюю версию PowerShell для агентов Windows, задайте pwsh
для параметра значение true
. После этого будет использоваться PowerShell Core.
Синтаксис
# Azure PowerShell v5
# Run a PowerShell script within an Azure environment.
- task: AzurePowerShell@5
inputs:
azureSubscription: # string. Alias: ConnectedServiceNameARM. Required. Azure Subscription.
#ScriptType: 'FilePath' # 'FilePath' | 'InlineScript'. Script Type. Default: FilePath.
#ScriptPath: # string. Optional. Use when ScriptType = FilePath. Script Path.
#Inline: # string. Optional. Use when ScriptType = InlineScript. Inline Script.
#ScriptArguments: # string. Optional. Use when ScriptType = FilePath. Script Arguments.
#errorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. ErrorActionPreference. Default: stop.
#FailOnStandardError: false # boolean. Fail on Standard Error. Default: false.
# Azure PowerShell version options
#azurePowerShellVersion: 'OtherVersion' # 'LatestVersion' | 'OtherVersion'. Alias: TargetAzurePs. Azure PowerShell Version. Default: OtherVersion.
preferredAzurePowerShellVersion: # string. Alias: CustomTargetAzurePs. Required when TargetAzurePs = OtherVersion. Preferred Azure PowerShell Version.
# Advanced
#pwsh: false # boolean. Use PowerShell Core. Default: false.
#validateScriptSignature: false # boolean. Optional. Use when ScriptType = FilePath. Validate script signature. Default: false.
#workingDirectory: # string. Working Directory.
# Azure PowerShell v5
# Run a PowerShell script within an Azure environment.
- task: AzurePowerShell@5
inputs:
azureSubscription: # string. Alias: ConnectedServiceNameARM. Required. Azure Subscription.
#ScriptType: 'FilePath' # 'FilePath' | 'InlineScript'. Script Type. Default: FilePath.
#ScriptPath: # string. Optional. Use when ScriptType = FilePath. Script Path.
#Inline: # string. Optional. Use when ScriptType = InlineScript. Inline Script.
#ScriptArguments: # string. Optional. Use when ScriptType = FilePath. Script Arguments.
#errorActionPreference: 'stop' # 'stop' | 'continue' | 'silentlyContinue'. ErrorActionPreference. Default: stop.
#FailOnStandardError: false # boolean. Fail on Standard Error. Default: false.
# Azure PowerShell version options
#azurePowerShellVersion: 'OtherVersion' # 'LatestVersion' | 'OtherVersion'. Alias: TargetAzurePs. Azure PowerShell Version. Default: OtherVersion.
preferredAzurePowerShellVersion: # string. Alias: CustomTargetAzurePs. Required when TargetAzurePs = OtherVersion. Preferred Azure PowerShell Version.
# Advanced
#pwsh: false # boolean. Use PowerShell Core. Default: false.
#workingDirectory: # string. Working Directory.
Входные данные
azureSubscription
- Подписка Azure
Входной псевдоним: ConnectedServiceNameARM
. string
. Обязательный.
Подписка Azure Resource Manager, настроенная перед запуском PowerShell.
ScriptType
- Тип скрипта
string
. Допустимые значения: FilePath
(Путь к файлу скрипта), InlineScript
(встроенный скрипт). Значение по умолчанию: FilePath
.
Тип скрипта: путь к файлу или встроенный.
ScriptPath
- Путь к скрипту
string
. Необязательный элемент. Используйте при ScriptType = FilePath
.
Путь к скрипту. Это должен быть полный путь или путь относительно рабочего каталога по умолчанию.
Inline
- Встроенный скрипт
string
. Необязательный элемент. Используйте при ScriptType = InlineScript
. Значение по умолчанию: # You can write your azure powershell scripts inline here. \n# You can also pass predefined and custom variables to this script using arguments
.
Указывает выполняемый скрипт. Максимальная поддерживаемая длина встроенного скрипта составляет 5000 символов. Используйте скрипт из файла, если вы хотите использовать более длинный скрипт.
ScriptArguments
- Аргументы скрипта
string
. Необязательный элемент. Используйте при ScriptType = FilePath
.
Дополнительные параметры, передаваемые в PowerShell. Это могут быть порядковые или именованные параметры. Неприменимо для параметра встроенного скрипта.
errorActionPreference
- ErrorActionPreference
string
. Допустимые значения: stop
, continue
, silentlyContinue
. Значение по умолчанию: stop
.
Выбирает значение переменной ErrorActionPreference
для выполнения скрипта.
FailOnStandardError
- Сбой при стандартной ошибке
boolean
. Значение по умолчанию: false
.
Если это так, эта задача завершается сбоем, если какие-либо ошибки записываются в конвейер ошибок или если какие-либо данные записываются в стандартный поток ошибок.
azurePowerShellVersion
- Версия Azure PowerShell
Входной псевдоним: TargetAzurePs
. string
. Допустимые значения: LatestVersion
(последняя установленная версия), OtherVersion
(укажите другую версию). Значение по умолчанию: OtherVersion
.
В случае размещенных агентов поддерживаемыми версиями Azure PowerShell являются 1.0.0
, , 1.6.0
2.3.2
, 2.6.0
и 3.1.0
(размещенная очередь VS2017).
Чтобы выбрать последнюю версию агента, выберите LatestVersion
(Последняя установленная версия).
Для частных агентов можно указать предпочтительную версию Azure PowerShell с помощью OtherVersion
(укажите другую версию).
preferredAzurePowerShellVersion
- Предпочтительная версия Azure PowerShell
Входной псевдоним: CustomTargetAzurePs
. string
. Требуется при .TargetAzurePs = OtherVersion
Предпочтительная версия Azure PowerShell должна быть правильной семантической версией, например. 1.2.3
. Регулярное выражение типа 2.\*,2.3.\*
не поддерживается. Размещенный пул VS2017 в настоящее время поддерживает версии 1.0.0
модулей Az , , 1.6.0
2.3.2
, 2.6.0
и 3.1.0
.
pwsh
- Использование PowerShell Core
boolean
. Значение по умолчанию: false
.
Если это так, задачи, выполняемые в агентах Windows, будут использовать pwsh.exe
из пути вместо powershell.exe
.
validateScriptSignature
- Проверка подписи скрипта
boolean
. Необязательный элемент. Используйте при ScriptType = FilePath
. Значение по умолчанию: false
.
Если это так, задача сначала проверка, чтобы убедиться, что указанный скрипт подписан и действителен перед его выполнением.
workingDirectory
- Рабочий каталог
string
.
Рабочий каталог, в котором выполняется скрипт.
Параметры управления задачами
Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.
Выходные переменные
Нет.
Remarks
Устранение неполадок
Сценарий работал локально, но произошел сбой в конвейере
Обычно это происходит, когда подключение службы, используемое в конвейере, не имеет достаточных разрешений для запуска скрипта. Локально скрипт выполняется с вашими учетными данными и завершится успешно, так как у вас может быть необходимый доступ.
Чтобы устранить эту проблему, убедитесь, что у субъекта-службы или учетных данных проверки подлинности есть необходимые разрешения. Дополнительные сведения см. в статье Управление доступом к ресурсам подписки Azure с помощью Role-Based контроль доступа.
Ошибка: не удалось найти модули: "<имя> модуля" с версией "<версия>". Если модуль был недавно установлен, повторите попытку после перезапуска агента задач Azure Pipelines.
Azure PowerShell задача использует модуль Azure/AzureRM/Az PowerShell для взаимодействия с подпиской Azure. Эта проблема возникает, когда модуль PowerShell недоступен в размещенном агенте. Следовательно, для конкретной версии задачи предпочтительная версия Azure PowerShell должна быть указана в параметрах версии Azure PowerShell из списка доступных версий. Установленное программное обеспечение можно найти в таблице Программное обеспечение в размещенных агентах Майкрософт.
Проблемы с подключением службы
Сведения об устранении неполадок, связанных с подключениями к службам, см. в статье Устранение неполадок с подключением службы.
Примеры
В следующем примере показано, как вызвать скрипт из файла и передать в него аргументы скрипта.
- task: AzurePowerShell@5
inputs:
azureSubscription: my-arm-service-connection
scriptType: filePath
scriptPath: $(Build.SourcesDirectory)\myscript.ps1
scriptArguments:
-Arg1 val1 `
-Arg2 val2 `
-Arg3 val3
azurePowerShellVersion: latestVersion
pwsh: true
В следующих аргументах показано, как вызвать встроенный скрипт.
- task: AzurePowerShell@5
inputs:
azureSubscription: 'Azure subscription connection placeholder'
azurePowerShellVersion: LatestVersion
ScriptType: 'InlineScript'
Inline: |
# You can write your azure powershell scripts inline here.
# You can also pass predefined and custom variables to this script using arguments
Write-Host 'Hello'
Write-Host 'World!'
Требования
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
Требования | Нет |
Capabilities | Эта задача не удовлетворяет требованиям для последующих задач в задании. |
Ограничения команд | Любой |
Устанавливаемые переменные | Любой |
Версия агента | 2.115.0 или более поздней версии |
Категория задач | Развертывание |