Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Запустите скрипт PowerShell.
Синтаксис
# PowerShell v1
# Run a PowerShell script.
- task: PowerShell@1
inputs:
scriptType: 'filePath' # 'inlineScript' | 'filePath'. Required. Type. Default: filePath.
scriptName: # string. Required when scriptType = filePath. Script Path.
#arguments: # string. Arguments.
#inlineScript: # string. Required when scriptType = inlineScript. Inline Script.
# Advanced
#workingFolder: # string. Working folder.
#failOnStandardError: true # boolean. Fail on Standard Error. Default: true.
Входные данные
типа scriptType -
string. Обязательное. Допустимые значения: inlineScript (встроенный скрипт), filePath (путь к файлу). Значение по умолчанию: filePath.
Указывает тип скрипта для выполнения задачи: встроенный скрипт или путь к файлу .ps1.
Путьк скрипту scriptName -
string. Требуется, если scriptType = filePath.
Указывает тип скрипта для выполнения задачи: встроенный скрипт или путь к файлу .ps1.
arguments
-
аргументы
string.
Задает аргументы, переданные в скрипт PowerShell. Аргументы могут быть порядковые параметры или именованные параметры. Например, -Name someName -Path -Value "Some long string value".
arguments не используется, если targetType задано значение inline.
workingFolder
-
Рабочая папка
string.
Указывает рабочий каталог, в котором выполняется скрипт. Если значение не указано, рабочий каталог $(Build.SourcesDirectory).
inlineScript
-
встроенный скрипт
string. Требуется, если scriptType = inlineScript. Значение по умолчанию: # You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host "Hello World".
Указывает содержимое скрипта. Максимальная поддерживаемая длина встроенного скрипта составляет 500 символов. Используйте скрипт из файла, если вы хотите использовать более длинный скрипт.
failOnStandardError
-
сбой стандартной ошибки
boolean. Значение по умолчанию: true.
Если значение этого логического кода true, задача завершается ошибкой, если в конвейер ошибок записываются какие-либо ошибки или если данные записываются в стандартный поток ошибок. В противном случае задача использует код выхода для определения сбоя.
Параметры управления задачами
Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задач.
Выходные переменные
Нет.
Замечания
PowerShell@1 работает только в агентах Windows. Чтобы запустить PowerShell в других типах агентов, используйте PowerShell@2.
Каждый сеанс PowerShell длится только в течение всего задания, в котором он выполняется. Задачи, зависящие от начальной загрузки, должны находиться в том же задании, что и начальная загрузка.
Задайте переменную, чтобы ее можно было считывать с помощью последующих скриптов и задач
Дополнительные сведения об определении переменных сборки в скрипте см. в статье Определение и изменение переменных сборки в скрипте.
Дополнительные сведения об определении переменных выпуска в скрипте см. в статье Определение и изменение переменных выпуска вскрипта.
Передача секретов конвейера в скрипте, но секрет не маскируется в журналах конвейера
Помните, что PowerShell отключает сообщения об ошибках, поэтому при использовании секретов конвейера в скрипте секреты могут быть обрезаны и предоставлены. Например, в встроенном скрипте ниже:
./script.ps1 --arg1 value1 --arg2 <some_secret_which_will_be_masked_here>
Может быть исключение: At <path_to_temp_script_file>:4 char:3:
+ ./script.ps1 --arg1 value1 --arg2 <unmasked_part_of_original_secret> ...
+ ~~~~~~~~~~
+ <Additional exception details>
Чтобы избежать этой проблемы, можно обрабатывать эти исключения на уровне скрипта или избегать случаев, когда секреты конвейера могут отображаться в строках исходного кода в сообщениях об ошибках.
Требования
| Требование | Описание |
|---|---|
| Типы конвейеров | YAML, классическая сборка, классический выпуск |
| Выполняется в | Агент, DeploymentGroup |
| требования | Локальные агенты должны иметь возможности, соответствующие следующим требованиям , для выполнения заданий, использующих эту задачу: DotNetFramework |
| возможностей | Эта задача не удовлетворяет требованиям к последующим задачам в задании. |
| ограничения команд | Любое |
| переменные settable | Любое |
| Версия агента | 1.102 или больше |
| Категория задач | Полезность |
См. также
- Использование скрипта PowerShell для настройки конвейера — ApplyVersionToAssemblies.ps1
- Дополнительные сведения о скриптах PowerShell