TFS 2015.3 benutzerdefinierter Build-Schritt, der keine Variablen an das Skript sendet

8

Ich habe die Designanleitung hier hier und < a href="https://blogs.infosupport.com/custom-build-tasks-in-tfs-2015/"> hier , aber ich erhalte immer wieder diesen PowerShell-Fehler:

  

Befehl kann aufgrund eines oder mehrerer fehlender obligatorischer Parameter nicht verarbeitet werden: SourcePath FilePattern BuildRegex.

Die relevanten Konfigurationsdaten finden Sie unten.

Ich habe überprüft und überprüft, ob die Variablen in meiner task.json -Datei vorhanden sind. Ich habe auch die Konfiguration für andere Arbeitsaufgaben (z. B. VSBuild) angeschaut und es gibt keinen signifikanten Unterschied in der Variablendeklaration und PowerShell-Ausführungssyntax.

Was könnte hier schiefgehen? Das ist eine sehr einfache Architektur - es gibt nicht viel zu brechen. Aber offensichtlich hat etwas genau das getan.

Von task.json :

%Vor%

Von VersionAssembly.ps1 :

%Vor%     
InteXX 14.08.2016, 04:46
quelle

2 Antworten

5

Anscheinend habe ich nicht genau genug verfolgt ... Ich habe die Warnung auf dieser Seite verpasst :

  

Warnung

     

Aufgaben können versioniert werden, nutzen Sie dies zu Ihrem Vorteil. Alle Builddefinitionen verwenden die neueste verfügbare Version einer bestimmten Aufgabe. Sie können dieses Verhalten nicht über die Webschnittstelle ändern. Nehmen Sie daher immer an, dass die neueste Version verwendet wird.

     

Wenn Sie die Versionsnummer Ihrer Aufgabe bei der Aktualisierung nicht ändern, laden die Buildagenten, die Ihre Aufgabe zuvor verwendet haben, die neuere Version nicht herunter, da die Versionsnummer immer noch dieselbe ist. Das heißt, wenn Sie das Verhalten Ihrer Aufgabe ändern, sollten Sie immer die Versionsnummer aktualisieren!

Sobald ich das alles ausgeräumt habe, hat alles gut funktioniert.

    
InteXX 14.08.2016, 05:34
quelle
2

Möglicherweise sind die Beispiele, die Eingaben in der Parameter-Sektion akzeptieren, veraltet. Es scheint, dass Sie jetzt die Befehle Vsts-task-lib aus Ihrem PowerShell-Skript verwenden müssen, um die Eingabeparameter zu erhalten .

%Vor%     
Scott Langham 11.01.2018 11:58
quelle

Tags und Links