Я хочу запустить конвейер на основе YAML (ubunutu-latest) в одной из моих организаций DevOps. Один из шагов определяется следующим образом:
- task: PowerShell@2
displayName: 'Say hello'
inputs:
targetType: 'inline'
script: |
Write-Host "Hello"
workingDirectory: '$(Pipeline.Workspace)'
pwsh: true
Это работает во всех других моих организациях и соответствует документам. Когда я выполняю конвейер, задача выше приводит к следующей ошибке:
==============================================================================
Task : PowerShell
Description : Run a PowerShell script on Linux, macOS, or Windows
Version : 2.212.0
Author : Microsoft Corporation
Help : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/powershell
==============================================================================
Generating script.
Formatted command: . 'C:\azagent\A1\_work\1\ci\drop\pipeline-scripts\check-health.ps1'
##[error]The term 'pwsh.exe' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
Насколько я знаю, эта задача "PowerShell@2" не требует дополнительных настроек в орг.
Пожалуйста, проверьте ссылку на vmimage. Эта строка говорит, что вы используете виртуальную машину Windows (не последнюю версию Ubuntu):
Отформатированная команда: . 'C:\azagent\A1_work\1\ci\drop\pipeline-scripts\check-health.ps1'
Вот как это выглядит в убунту:
Starting: PowerShell Script
==============================================================================
Task : PowerShell
Description : Run a PowerShell script on Linux, macOS, or Windows
Version : 2.212.0
Author : Microsoft Corporation
Help : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/powershell
==============================================================================
Generating script.
========================== Starting Command Output ===========================
/usr/bin/pwsh -NoLogo -NoProfile -NonInteractive -Command . '/home/vsts/work/_temp/08e68401-b820-42a0-8b7f-111189d71fca.ps1'
Hello World
Finishing: PowerShell Script