Bei einem Projekt ging es darum, die bestehende XAML- zur neuen vNext Build-Definition zu portieren. Alles ging wie geschmiert, selbst die Windows Remote Management (WinRM) Konfiguration machte keine Probleme. Leider funktionierte aber das bestehende Powershell-Bereitstellungsskript komischerweise nicht, und schlug mit folgenden Fehler fehl:
Das PowerShell-Skript wird ausgeführt: C:\Agent\tasks\PowerShellOnTargetMachines\1.0.25\PowerShellOnTargetMachines.ps1 Bereitstellung gestartet für den Computer: "TESTPC:5985" Bereitstellungsstatus für Computer 'TESTPC:5985': 'Failed' Fehler eines Befehls mit einer Eingabeaufforderung. Das Hostprogramm oder der Befehlstyp unterstützt keine Benutzerinteraktion. Verwenden Sie ein Hostprogramm, das die Benutzerinteraktion unterstützt, z. B. die Windows PowerShell-Konsole oder Windows PowerShell-ISE, und entfernen Sie Befehle mit Eingabeaufforderungen aus Befehlstypen, die keine Benutzerinteraktion unterstützen, z. B. Windows PowerShell-Workflows. Weitere Informationen finden Sie unter "http://aka.ms/powershellontargetmachinesreadme".
Die Fehlersuche war anfangs etwas mühselig, weil das Skript, wie es die Fehlermeldung als mögliche Ursache aufgelistet hatte, keine solche Eingabeaufforderung aufwies.
Als bei der Suche der Fehlerhinweis “Benutzerinteraktion” äußerst strikt ausgelegt wurde, fiel der Befehl Write-Host auf und siehe da, einmal auskommentiert, funktionierte das Deployment-Skript wieder.
Dazu findet man auch einen Hinweis auf PowerShell on Target Machines (Bekannte Probleme) auf GitHub.