Ich richte mit TFS 2015 einen neuen Build-Server ein. Nachdem ich den Agenten konfiguriert habe, wurde beim Versuch, einen Build in die Warteschlange zu stellen, folgende Fehlermeldung angezeigt:
Es konnte kein Agent mit den folgenden Funktionen gefunden werden: msbuild, visualstudio, vstest
Wie kann das gelöst werden?
tfs
tfs-2015
azure-pipelines
Jean Jimenez
quelle
quelle
Hinweis: Zunächst können Sie dies alles mit der Community Edition und TFS Express 2015 auf Ihrem eigenen Server tun (kostenlos bis zu fünf Benutzer). Machen Sie sich also keine Sorgen, dass Sie die Visual Studio-Onlineversion verwenden oder für Visual bezahlen müssen Studio Professional.
Es ist sehr leicht, die bereitgestellte Fehlermeldung falsch zu interpretieren und eine wilde Gänsejagd zu starten, um sie zu debuggen.
Leider ist die Nachricht selbst nur schlecht formuliert und das ist das eigentliche Problem.
Folgendes bedeutet diese Fehlermeldung wirklich :
Sie denken also, dass dies nicht auf Sie zutrifft, weil Sie gerade einen Build-Agenten erstellt haben?
Nun, vielleicht haben Sie es getan, aber hier ist, was wahrscheinlich passiert ist:
Aha! Folgendes passiert also beim Bauen:
Als ich endlich merkte, was passiert war, löschte ich einfach meinen niedlich benannten Pool + Warteschlange und benutzte wieder den Standardpool.
Das nächste Mal werde ich versuchen, dieser Meldung während der PowerShell-Konfiguration mehr Aufmerksamkeit zu schenken:
Sie müssen eine Warteschlange unter dem Pool erstellen, aber dann sollte Ihr Agent mit der Arbeit beginnen.
Wenn Sie eine echte Person mit einer bestimmten Funktion haben, die in Ihrem Agenten nicht vorhanden ist, können Sie auf der hier gezeigten Registerkarte "Funktionen" überprüfen, was Ihr Agent unterstützt. Natürlich
msbuild, visualstudio and vstest
sind alle hier :-)quelle
Wenn Sie das neue Build-System unter VSO verwenden, wird standardmäßig nicht die gehostete Build-Option ausgewählt. So bin ich zu diesem Beitrag in Stack Overflow gekommen. Wenn Sie es gewohnt sind, einen VSO-Buildserver zu verwenden, müssen Sie Folgendes tun:
Erstellen Sie einen gehosteten Build, indem Sie zur Registerkarte Allgemein wechseln und Ihre Standardwarteschlange in gehostet ändern. Weitere Informationen zu den Einschränkungen und zur Funktionsweise finden Sie hier: https://www.visualstudio.com/get-started/build/hosted-agent-pool
quelle
In meinem Fall musste ich nach der Installation von MSBuild ( https://www.visualstudio.com/downloads/ , Suche nach "Build Tools für Visual Studio 2017") nur den Pfad zu MSBuild zur Umgebungsvariablen PATH hinzufügen. Der Agent hat MSBuild erst erkannt, als ich das getan habe.
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin
Ich musste NICHT die vollständige Visual Studio-IDE installieren. Die ausgewählte Antwort auf diese Frage ist einfach falsch ...
quelle
C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin
. Ja, Sie benötigen nicht das vollständige Visual Studio. Danke für den Tipp.Ich hatte dieses Problem und es stellte sich heraus, dass mein Veröffentlichungsprozess den "falschen" Agenten ausgewählt hatte. Bearbeiten Sie einfach die Version und stellen Sie die richtige Agentenwarteschlange ein
quelle
Ich habe einen Xcode-Build-Slave zum Erstellen eines Xcode-Projekts verwendet.
Und die Fehlermeldung, die ich in TFS 2015 erhalten habe, war
Ich habe einen lokalen OS X-Build-Slave registriert .
Im Schritt "Agent registrieren" habe ich vom Build-Agenten Folgendes benannt:
>> Register Agent: Enter agent pool (press enter for default) > My-Xcode-Agent-Pool
Daher musste ich in den Build-Einstellungen den "My-Xcode-Agent-Pool" als Standardwarteschlange auswählen. Quelle: Von Microsoft gehostete Agenten
quelle
Obwohl keine der vorherigen Antworten für mich funktioniert hat, hat mich der Beitrag von Simon_Weaver in die richtige Richtung gelenkt .
Er erwähnte, dass vstest auf seiner Liste stand, aber nicht auf meiner. Ich habe das Problem behoben, indem ich unter Visual Studio 2017 eine benutzerdefinierte Funktion namens "vstest" mit dem vollständigen Pfad zu vstest.console.exe hinzugefügt habe.
quelle
Sie müssen die entsprechende Visual Studio-Version auf dem Buildcomputer installieren (auf dem Sie Ihren Agenten installiert haben). Dadurch werden dem Server die erforderlichen Tools und Funktionen hinzugefügt.
Visual Studio ist erforderlich, da alle zum Erstellen Ihrer Projekte erforderlichen Erstellungsziele installiert werden.
Nach der Installation müssen Sie den Windows-Agentendienst neu starten, damit die Liste der Funktionen aktualisiert wird.
Da Sie die Visual Studio-Installation auf dem Buildcomputer zum Erstellen verwenden, zählt diese Installation nicht als zusätzliche Lizenz.
quelle
Was für mich letztendlich funktioniert hat, war, dorthin zu gehen, wo ich den Agenten heruntergeladen und ausgeführt habe:
./config.cmd
dann entfernen./config.cmd
, um den Agenten über die Befehlszeile im Verzeichnis meines Agenten neu zu installieren.Agent herunterladen
quelle
per Microsoft https://msdn.microsoft.com/en-us/ie/bb399135(v=vs.94)
quelle
In meinem Fall starten Sie nach der Installation von MSBuild alle Azure-Dienste (im Windows-Dienst) neu und es hat funktioniert. Sie müssen Visual Studio nicht vollständig installieren
quelle
Allgemeine Lösung für TFS:
Die gängige Methode zur Lösung der meisten Probleme auf dem Build-Server besteht darin, Visual Studio und alle abhängigen Pakete auf Ihrem Build-Server zu installieren.
Alternative Lösung bei Verwendung von VSTS
Wenn Sie auswählen, wo erstellt werden soll, verwenden Sie "Hosted". Der Build funktioniert dann.
Die Anleitung zur Funktionsweise finden Sie hier: Stellen Sie einen Agenten unter Windows für TFS 2015 bereit
Überprüfen Sie den Agentenabschnitt, der Informationen zu Funktionen enthält.
Aktualisiert:
Sobald Sie die Liste der Funktionen in vsts (azuredevops) haben, müssen Sie möglicherweise die gewünschte Software auf Ihrem Build Agent-Computer installieren.
PS Beachten Sie, dass Sie Ihren sw bei Bedarf möglicherweise lizenzieren müssen.
quelle