wake-up-neo.com

Fehler 'Es wurde kein Agent mit den folgenden Funktionen gefunden: msbuild, visualstudio, vstest'

Ich stelle einen neuen Build-Server mit TFS 2015 ein. Nachdem ich den Agenten konfiguriert hatte, als ich versuchte, einen Build in die Warteschlange zu stellen, erhielt ich diesen Fehler:

Es wurde kein Agent mit den folgenden Funktionen gefunden: msbuild, visualstudio, vstest

Wie kann das gelöst werden?

61
Jean Jimenez

Installieren Sie Visual Studio auf Ihrem Build-Agent und starten Sie den Build-Agent neu. Durch einen Neustart des Build-Agenten werden die hinzugefügten Funktionen erfasst.

46
Daniel Mann

Hinweis: Zunächst können Sie all dies mit der Community Edition und TFS Express 2015 auf Ihrem eigenen Server (für bis zu fünf Benutzer kostenlos) erledigen. Machen Sie sich also keine Sorgen um die Online-Version von Visual Studio oder für Visual Studio Professional bezahlen.


Es ist sehr einfach, die Fehlermeldung falsch zu interpretieren und auf eine wilde Gansjagd zu gehen, die versucht, sie zu debuggen.

Leider ist die Nachricht selbst nur schlecht formuliert und das ist das eigentliche Problem.

Diese Fehlermeldung really bedeutet Folgendes:

"Es konnte kein Agent mit den folgenden Funktionen gefunden werden: msbuild, Visualstudio, vstest . Tatsächlich habe ich keine Build-Agents für die ausgewählte Build-Warteschlange gefunden."

Sie denken, das trifft auf Sie nicht zu, weil Sie gerade einen Build-Agenten erstellt haben?

Vielleicht haben Sie das getan, aber wahrscheinlich ist Folgendes passiert:

  • Sie haben einen neuen Pool erstellt (aus keinem anderen Grund als Sie dachten, Sie müssten es tun).
  • Sie haben dann eine Warteschlange unter diesem Pool erstellt.
  • Sie haben das PowerShell-Skript ausgeführt, um einen Agenten zu erstellen, und Sie gingen davon aus, dass es in den soeben erstellten Pool eingefügt wurde.
  • Aber es tat es nicht - es stellte es in den "Standard" Pool, den Sie nicht einmal benutzen ...

Aha! Also, was passiert beim Bauen:

  • Sie wählen eine Warteschlange aus der Dropdown-Liste aus.
  • TFS versucht zu erstellen, indem es nach dem Pool sucht, der dieser Warteschlange entspricht, und es werden keine Agenten AT ALL dort gefunden. Sie erhalten also eine dumme, nutzlose Red Herings-Fehlermeldung.

Als mir schließlich klar wurde, was passiert ist, habe ich gerade meinen knapp benannten Pool + meine Warteschlange gelöscht und nur noch den Standardpool verwendet.

Nächstes Mal werde ich versuchen, dieser Nachricht während der PowerShell-Konfiguration mehr Aufmerksamkeit zu schenken:

Diesen Agenten für welchen Agentenpool konfigurieren? (Standard-Poolname ist "Standard")

Sie müssen eine Warteschlange unter dem Pool erstellen, aber dann sollte Ihr Agent arbeiten.

Wenn Sie ein echtes Produkt mit einer bestimmten Funktion für Ihren Agenten nicht haben, können Sie über die Registerkarte "Funktionen", die Ihr Agent unterstützt, überprüfen. Natürlich sind msbuild, visualstudio and vstest alle hier :-)

 Enter image description here

24
Simon_Weaver

Wenn Sie das neue Buildsystem für VSO verwenden, wird standardmäßig nicht die gehostete Buildoption ausgewählt. Dies ist der Grund, warum ich bei diesem Beitrag in Stack Overflow landete. Wenn Sie es gewohnt sind, einen VSO-Build-Server zu verwenden, müssen Sie Folgendes tun:

Erstellen Sie einen gehosteten Build, indem Sie auf die Registerkarte Allgemein gehen und Ihre Standardwarteschlange in gehostet ändern. Weitere Informationen zu den Einschränkungen und ihrer Funktionsweise finden Sie hier: https://www.visualstudio.com/get-started/build/hosted-agent-pool

7
irhetoric

Sie müssen die entsprechende Visual Studio-Version auf dem Build-Computer installieren (auf dem Sie Ihren Agenten installiert haben). Dadurch werden die erforderlichen Tools und Funktionen zum Server hinzugefügt.

Visual Studio ist erforderlich, da alle zum Erstellen Ihrer Projekte erforderlichen Build-Ziele 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 Build-Computer zum Erstellen verwenden, gilt diese Installation nicht als zusätzliche Lizenz.

0
Rodrigo Werlang

Ich habe einen Xcode-Build-Slave zum Erstellen eines Xcode-Projekts verwendet.

Und die Fehlermeldung, mit der ich in TFS 2015 endete, war

"Es wurde kein Agent mit den folgenden Funktionen gefunden: xcode"

Ich habe einen OS X On-Premise Build-Slave registriert.

Im Schritt "Register Agent" benannte ich nach Build Agent:

>> Register Agent:

Enter agent pool (press enter for default) > My-Xcode-Agent-Pool

Also musste ich in den Build-Einstellungen den "My-Xcode-Agent-Pool" als Standardwarteschlange auswählen. Quelle: Von Microsoft gehostete Agenten

0
leviathan

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 

 enter image description here

0
Eric Herlitz

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 PATH-Umgebung hinzufügen Variable. 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 ...

0
computrius

Am Ende arbeitete ich für mich an dem Ort, an dem ich den Agenten heruntergeladen hatte, und lief:

./config.cmd entfernen und dann ./config.cmd, um den Agenten von der Befehlszeile im Verzeichnis meines Agenten neu zu installieren.

Agent herunterladen

0
Jesse

Obwohl keine der vorherigen Antworten für mich funktionierte, wies der Beitrag von Simon_Weaver in die richtige Richtung.

Er erwähnte, dass vstest auf seiner Liste stand, aber nicht in meiner. Ich habe es behoben, indem ich unter Visual Studio 2017 eine benutzerdefinierte Funktion namens "vstest" mit dem vollständigen Pfad zu vstest.console.exe hinzugefügt habe.

0
Tom Faust