Я могу воспроизвести эту проблему, основываясь на моем тесте Вывод в реальном времени не поддерживается для задачи PowerShell on Target Machines
.
Write-output
или write-verbose -verbose
просто может выводить на консоль, ноэто не в реальном времени, вывод отображается только после полного выполнения сценария powershell.
Чтобы отобразить вывод в реальном времени, вы можете использовать задачу Utility:PowerShell
вместо задачи Deploy:PowerShell on Target Machines
.
Таким образом, в качестве обходного пути вы можете развернуть агент на целевой машине, котораявы хотите запустить сценарий powershell, а затем запустить релиз, используя агент, выполняющий сценарий powershell с задачей Utility:PowerShell
.
ОБНОВЛЕНИЕ:
Ну, найдите другой обходной путь с задачей Utility:PowerShell
:
1.Настройте WinRM для целевых компьютеров, см. Конфигурация WinRM
2. Скопируйте целевой PS-скрипт на целевой компьютер (D:\TestShare\PStest.ps1
в примере ниже)
3. Создайте сценарий PowerShell для вызова Powershell.exe
для запуска целевого сценария powershell на целевой машине, см. Пример ниже:
Param(
[string]$computerName = "ICTFS2015.test.com",
)
$Username = "domain\usename"
$Password = ConvertTo-SecureString "Possword" -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential($Username,$password)
Invoke-Command -ComputerName $computerName -Credential $cred -ScriptBlock {Invoke-Expression -Command:"powershell.exe /c 'D:\TestShare\PStest.ps1'"}
4.Добавьте задачу Utility:PowerShell
для запуска над сценарием PowerShell.(Вы можете проверить или запустить Inline Script
).