В моем конвейере сборки у меня есть задача powershell, которая выполняет сценарий для сбора информации из сборки.
Требуется переменные агента и сборки , которые будут извлекаться из переменных среды.
Проблема в том, что переменная окружения не заполнена.
Я получаю пустой результат при запуске этого скрипта:
Write-Host "Before"
Get-ChildItem env: | ft Name, Value -AutoSize | Out-String | Write-Host
Write-Host "After"
Когда я выполняю это с помощью моего частного агента сборки (в Windows), он работает нормально.
Вывод на сервер сборки:
==============================================================================
Task : PowerShell
Description : Run a PowerShell script on Windows, macOS, or Linux.
Version : 2.136.0
Author : Microsoft Corporation
Help : [More Information](https://go.microsoft.com/fwlink/?LinkID=613736)
==============================================================================
Generating script.
Formatted command: . '/home/vsts/work/1/s/build/scripts/GatherDeploymentInfo.ps1'
[command]/usr/bin/pwsh -NoLogo -NoProfile -NonInteractive -Command . '/home/vsts/work/_temp/1125300b-d6df-46f0-a852-041c22d2964f.ps1'
Before
After
РЕШЕНО:
В результате исправлено изменение агента сборки с 'Hosted Linux Preview 2' на 'Hosted Ubuntu 1604».Это привело к тому, что вся среда снова стала видимой из ядра powershell.