Übung: Erstellen der Anwendung mithilfe des Agents

Abgeschlossen

Ihr Build-Agent wird nun ausgeführt und kann Buildaufträge entgegennehmen. Nun können Sie ihn sich also in Aktion ansehen. In dieser Lektion bearbeiten Sie eine einfache Buildkonfiguration, die zur Verfügung gestellt wird, um die Space Game-Website mithilfe Ihres Agents und nicht mit dem von Microsoft gehosteten Agent zu erstellen.

Hinweis

Führen Sie die folgenden Schritte unmittelbar nach den Schritte im vorherigen Modul (Erstellen eines Build-Agents, der unter Azure ausgeführt wird) durch.

Am Ende dieser Lektion können Sie als optionalen Schritt den Agent-Pool aus Ihrer Microsoft Azure DevOps-Organisation entfernen.

Abrufen des Branchs aus GitHub

In diesem Abschnitt fetchen Sie den Branch build-agent aus GitHub und checken ihn aus oder wechseln zu ihm.

Dieser Branch enthält das Space Game-Projekt, mit dem Sie in den vorherigen Modulen gearbeitet haben, sowie eine anfängliche Azure Pipelines-Konfiguration.

  1. Öffnen Sie in Visual Studio Code das integrierte Terminal.

  2. Führen Sie die folgenden git fetch- und git checkout-Befehle aus, um einen Branch namens build-agent aus dem Microsoft-Repository herunterzuladen und zu diesem Branch zu wechseln:

    git fetch upstream build-agent
    git checkout -B build-agent upstream/build-agent
    

    Denken Sie daran, dass sich upstream auf das Microsoft GitHub-Repository bezieht. Die Git-Konfiguration Ihres Projekts kann mit dem Upstreamremoterepository arbeiten, weil Sie diese Beziehung eingerichtet haben, als Sie das Projekt aus dem Repository von Microsoft geforkt und es lokal geklont haben.

    In Kürze werden Sie diesen Branch per Push in Ihr GitHub-Repository (als origin bezeichnet) übertragen.

  3. Optional können Sie in Visual Studio Code die Datei azure-pipelines.yml öffnen und sich mit der anfänglichen Konfiguration vertraut machen.

    Die Konfiguration ähnelt der einfachen Konfiguration, die Sie im Modul Erstellen einer Buildpipeline mit Azure Pipelines erstellt haben. Nur die Releasekonfiguration der Anwendung wird erstellt.

Ändern der Buildkonfiguration

In diesem Abschnitt ändern Sie die Buildkonfiguration so, dass nicht mehr ein von Microsoft gehosteter Agent, sondern ein Agent aus Ihrem Buildpool verwendet wird.

  1. Öffnen Sie in Visual Studio Code die Datei azure-pipelines.yml und suchen Sie nach dem Abschnitt pool.

    pool:
      vmImage: 'ubuntu-20.04'
      demands:
      - npm
    
  2. Ändern Sie den Abschnitt pool wie hier gezeigt:

    pool:
      name: 'MyAgentPool'
      demands:
      - npm
    

    Die Version verwendet name, um Ihren Agentpool anzugeben, MyAgentPool. Der Abschnitt demands wird so verwaltet, dass angegeben wird, dass für den Build-Agent npm, der Node.js-Paket-Manager, installiert sein muss.

  3. Fügen Sie azure-pipelines.yml im integrierten Terminal zum Index hinzu, committen Sie die Änderungen, und pushen Sie den Branch an GitHub.

    git add azure-pipelines.yml
    git commit -m "Use private agent pool"
    git push origin build-agent
    

Überwachen von Azure Pipelines bei der Verwendung Ihres Build-Agents

Schauen Sie sich an, wie der Build in der Pipeline mithilfe Ihres Build-Agents ausgeführt wird.

  1. Navigieren Sie in Azure DevOps zum Projekt Space Game – Web – Agent.

  2. Wählen Sie auf der Projektseite oder im linken Bereich Pipelinesaus.

  3. Wählen Sie Ihre Pipeline aus Zuletzt ausgeführte Pipelines und dann die letzte Ausführung aus (die beim Aktualisieren der Pipeline gestartet wurde, um den MyAgentPool-Pool zu verwenden).

  4. Wählen Sie Auftrag aus, und verfolgen Sie die Ausführung der einzelnen Schritte nach.

    Bei der Aufgabe Auftrag initialisieren sehen Sie, dass der Build Ihren Build-Agent verwendet.

    Screenshot: Azure Pipelines bei der Buildausführung. Der Task „Auftrag initialisieren“ zeigt an, dass der Build auf dem privaten Agent „MyLinxuAgent“ ausgeführt wird.

Optional: Entfernen Ihres Buildpools

Als Referenz für die Zukunft können Sie die Buildpoolkonfiguration in Ihrer Azure DevOps-Organisation beibehalten, aber denken Sie daran, dass der virtuelle Computer, der den Agent hostet, nicht mehr für Sie verfügbar ist, nachdem Sie die Bereinigungsschritte am Ende dieses Moduls ausgeführt haben.

Tatsächlich wird Azure DevOps erkennen, dass der Agent offline ist. Azure Pipelines sucht dann nach einem verfügbaren Agent, wenn das nächste Mal ein Build mithilfe des Pools „MyAgentPool“ in die Warteschlange verschoben wird.

Screenshot mit dem Agentpool in Azure DevOps, der zeigt, dass der Build-Agent offline ist

Optional können Sie die Buildpoolkonfiguration aus Azure DevOps entfernen. Gehen Sie dazu wie folgt vor:

  1. Navigieren Sie in Azure DevOps zum Projekt Space Game – Web – Agent.

  2. Wählen Sie Projekteinstellungen aus.

  3. Klicken Sie unter Pipelines auf Agentpools.

    Screenshot der Projekteinstellungen in Azure DevOps mit der Position des Agentpool-Menüelements

  4. Wählen Sie unter MyAgentPool das Papierkorb-Symbol aus und klicken Sie dann auf Löschen.

    Screenshot: Azure DevOps mit der Position, an der der Agent aus dem Agentpool entfernt werden kann