Übung: Erstellen eines Build-Agents, der unter Azure ausgeführt wird

Abgeschlossen

In dieser Lektion konfigurieren Sie einen Build-Agent, den Sie in Microsoft Azure Pipelines verwenden werden, mithilfe eines unter Microsoft Azure ausgeführten virtuellen Computers. Wir stellen einen virtuellen Computer bereit, den Sie für die Dauer dieses Moduls verwenden können.

In dieser Einheit lernen Sie Folgendes:

  • Erstellen eines virtuellen Ubuntu-Computers in Azure, der als Build-Agent fungiert.
  • Erstellen eines Agentpools in Microsoft Azure DevOps.
  • Erstellen eines Zugriffstokens, um Ihren Agent mit Azure DevOps zu authentifizieren.
  • Konfigurieren Ihres Agents mit der Software, die für die Erstellung der Space Game-Website erforderlich ist.
  • Konfigurieren des Agents, damit er eine Verbindung mit Azure DevOps herstellt und Buildaufträge empfangen kann.
  • Überprüfen, ob der Agent mit Azure DevOps verbunden und bereit ist, Buildaufträge zu empfangen.

Es gibt verschiedene Möglichkeiten zum Erstellen eines virtuellen Computers in Azure. In dieser Lektion erstellen Sie einen virtuellen Ubuntu-Computer mithilfe eines interaktiven Terminals namens „Cloud Shell“.

Zum Konfigurieren Ihres virtuellen Computers sind mehrere Optionen verfügbar:

  • Für eine Linux-VM können Sie eine direkte Verbindung über SSH herstellen und das System interaktiv konfigurieren.
  • Sie können die Bereitstellung automatisieren, indem Sie eine ARM-Vorlage, Bicep oder ein anderes automatisiertes Bereitstellungstool verwenden.
  • Wenn Sie viele Build-Agents bereitstellen müssen, können Sie ein VM-Image erstellen, in dem die gesamte Software vorinstalliert ist.

Das interaktive Konfigurieren eines Systems ist eine gute Möglichkeit für einen Anfang, da es Ihnen hilft, den Prozess und die erforderlichen Komponenten zu verstehen. Um den Prozess zu vereinfachen, stellen Sie eine Verbindung mit Ihrer Ubuntu-VM über SSH her, und führen Sie Shellskripts zum Einrichten des Build-Agents aus.

Hinweis

Wenn Sie nicht genau wissen, wie Sie eine Verbindung herstellen oder wenn Sie mit dem Konfigurieren von Linux-Systemen nicht vertraut sind, folgen Sie einfach den weiteren Anweisungen. Sie können dieselben Konzepte auf Windows Build-Agents anwenden.

Erstellen einer Linux-VM

In diesem Abschnitt erstellen Sie einen virtuellen Computer, auf dem Ubuntu 20.04 ausgeführt wird, der als Build-Agent fungiert. Der virtuelle Computer ist noch nicht als Build-Agent eingerichtet und verfügt noch nicht über die Tools, die zum Erstellen der Webanwendung Space Game benötigt werden. Er wird in Kürze eingerichtet.

Aufrufen der Cloud Shell über das Azure-Portal

Wichtig

Für die Übungen in diesem Modul benötigen Sie ein eigenes Azure-Abonnement.

  1. Wechseln Sie zum Azure-Portal, und melden Sie sich an.

  2. Wählen Sie im Menü Cloud Shell aus. Wenn Sie dazu aufgefordert werden, wählen Sie die Bash-Benutzeroberfläche aus.

    A screenshot of the Azure portal showing the location of the Cloud Shell menu item.

    Hinweis

    Für Cloud Shell ist eine Azure-Speicherressource erforderlich, damit Sie alle in der Cloud Shell erstellten Dateien dauerhaft speichern können. Wenn Sie Cloud Shell erstmals öffnen, werden Sie aufgefordert, eine Ressourcengruppe, ein Speicherkonto und eine Azure Files-Freigabe zu erstellen. Diese Einrichtung wird automatisch für alle zukünftigen Cloud Shell-Sitzungen verwendet.

Auswählen einer Azure-Region

Bei einer Region handelt es sich um mindestens ein Azure-Rechenzentrum an einem geografischen Standort. Beispiele für Regionen sind „USA, Osten“, „USA, Westen“ und „Europa, Norden“. Jede Azure-Ressource, einschließlich einer Azure-VM, wird einer Region zugewiesen.

Um die Ausführung von Befehlen zu erleichtern, wählen Sie zunächst eine Standardregion aus. Nachdem Sie die Standardregion festgelegt haben, verwenden spätere Befehle diese Region, es sei denn, Sie geben eine andere Region an.

  1. Führen Sie in Cloud Shell den folgenden az account list-locations-Befehl aus, um die Regionen aufzulisten, die in Ihrem Azure-Abonnement verfügbar sind:

    az account list-locations \
      --query "[].{Name: name, DisplayName: displayName}" \
      --output table
    
  2. Wählen Sie in der Spalte Name in der Ausgabe eine Region in Ihrer Nähe aus. Wählen Sie zum Beispiel eastasia oder westus2 aus.

  3. Führen Sie az configure aus, um Ihre Standardregion festzulegen. Ersetzen Sie <REGION> durch den Namen der von Ihnen ausgewählten Region:

    az configure --defaults location=<REGION>
    

    In diesem Beispiel wird westus2 als Standardregion festgelegt:

    az configure --defaults location=westus2
    

Erstellen einer Ressourcengruppe

Erstellen Sie eine Ressourcengruppe mit den in diesem Schulungsmodul verwendeten Ressourcen.

  • Um eine Ressourcengruppe mit dem Namen tailspin-space-game-rg zu erstellen, führen Sie den folgenden az group create-Befehl aus:

    az group create --name tailspin-space-game-rg
    

Erstellen des virtuellen Computers

Führen Sie den folgenden az vm create-Befehl aus, um die VM zu erstellen:

az vm create \
    --name MyLinuxAgent \
    --resource-group tailspin-space-game-rg \
    --image canonical:0001-com-ubuntu-server-focal:20_04-lts:latest \
    --size Standard_DS2_v2 \
    --admin-username azureuser \
    --generate-ssh-keys

Das Starten Ihres virtuelle Computers dauert einige Minuten.

Standard_DS2_v2 gibt die Größe des virtuellen Computers an. Die Prozessorgeschwindigkeit, die Speicherkapazität, die anfängliche Speicherkapazität und die erwartete Netzwerkbandbreite werden von der Größe der VM bestimmt. Dies entspricht der Größe, die durch die von Microsoft-gehosteten Agents bereitgestellt wird. In der Praxis können Sie eine Größe auswählen, die mehr Rechenleistung oder zusätzliche Funktionen bereitstellt, z. B. Bildverarbeitung.

Das Argument --resource-group gibt die Ressourcengruppe an, die alle Elemente enthält, die wir erstellen müssen. Eine Ressourcengruppe ermöglicht Ihnen, alle VMs, Datenträger, Netzwerkschnittstellen und andere Elemente der Lösung als Einheit zu verwalten.

Erstellen des Agentpools

Denken Sie daran, dass Build-Agents mihilfe eines Agentpools organisiert werden. In diesem Abschnitt werden Sie den Agentpool in Azure DevOps erstellen. Wenn Sie später den Agent konfigurieren, geben Sie den Namen des Agentpools an, sodass er sich selbst beim richtigen Pool registrieren kann.

  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.

    A screenshot of the project settings in Azure DevOps showing the location of the Agent pools menu item.

  4. Wählen Sie Pool hinzufügen aus.

  5. Führen Sie im Fenster Pool hinzufügen die folgenden Aktionen aus:

    1. Wählen Sie unter Zu verknüpfender Pool die Option Neu aus.
    2. Wählen Sie unter Pooltyp die Option selbstgehostet aus.
    3. Geben Sie unter Name den Namen MyAgentPool ein.

    In der Praxis würden Sie einen aussagekräftigeren Namen für Ihren Pool wählen.

  6. Klicken Sie auf Erstellen. Der neue Agentpool wird in der Liste angezeigt.

Erstellen eines persönlichen Zugriffstokens

Damit sich der Build-Agent bei Azure DevOps registrieren kann, muss er sich selbst authentifizieren können.

Dazu können Sie ein persönliches Zugriffstoken erstellen. Ein persönliches Zugriffs Token (PAT) ist eine Alternative zu einem Kennwort. Sie können das PAT zum Authentifizieren bei Diensten wie Azure DevOps verwenden.

Wichtig

Stellen Sie wie bei einem Kennwort sicher, dass Sie Ihr Zugriffstoken an einem sicheren Ort ablegen. In diesem Abschnitt speichern Sie Ihr Zugriffstoken als Umgebungsvariable, damit es nicht in Ihrem Shellskript angezeigt wird.

  1. Öffnen Sie Ihre Profileinstellungen in Azure DevOps, und wählen Sie dann Persönliche Zugriffstoken aus.

    A screenshot of Azure DevOps showing the location of the Personal access tokens menu item.

  2. Wählen Sie Neues Token aus.

  3. Geben Sie einen Namen für das Token ein, z. B. Build-Agent.

  4. Wählen Sie unter Bereiche den Link unten Alle Bereiche anzeigen aus.

  5. Suchen Sie nach Agent-Pools, und wählen Sie dann Lesen und verwalten aus.

  6. Klicken Sie auf Erstellen.

  7. Kopieren Sie das Token an einen sicheren Ort.

    In Kürze verwenden Sie Ihr Token, damit der Build-Agent sich für den Zugriff auf Azure Pipelines authentifizieren kann.

Herstellen einer Verbindung mit Ihrer VM

In diesem Abschnitt stellen Sie über SSH eine Verbindung zu Ihrer Linux-VM her, um diese konfigurieren zu können.

Danken Sie daran, dass Sie sich bei einem von Microsoft gehosteten Agent nicht interaktiv anmelden können. Da Sie einen privaten Build-Agent besitzen, können Sie sich bei diesem jedoch anmelden und ihn nach Belieben konfigurieren.

Da Sie sich mit Ihrem Build-Agent verbinden können, haben Sie die Möglichkeit, diesen mit den Tools zu konfigurieren, die Sie zum Erstellen der Software benötigen. Außerdem können Sie Probleme beim Erstellen Ihrer Pipelinekonfiguration beheben.

  1. Um die IP-Adresse Ihres virtuellen Computers zu erhalten, führen Sie az vm show in Cloud Shell aus:

    IPADDRESS=$(az vm show \
      --name MyLinuxAgent \
      --resource-group tailspin-space-game-rg \
      --show-details \
      --query [publicIps] \
      --output tsv)
    

    Dieser Befehl speichert die IP-Adresse in einer Bash-Variablen namens IPADDRESS.

  2. Geben Sie die IP-Adresse der VM auf der Konsole aus:

    echo $IPADDRESS
    
  3. Erstellen Sie eine SSH-Verbindung mit Ihrer VM. Geben Sie anstelle von $IPADDRESS die IP-Adresse ein, die Sie im vorherigen Schritt erhalten haben. Geben Sie in der Eingabeaufforderung yes ein, um mit dem Herstellen der Verbindung fortzufahren.

    ssh azureuser@$IPADDRESS
    

    Sie sind jetzt über SSH mit ihrem virtuellen Computer verbunden.

    Dieser Befehl funktioniert, weil Sie die Option --generate-ssh-keys bereitgestellt haben, als Sie zuvor az vm create ausgeführt haben. Mit dieser Option wird ein SSH-Schlüsselpaar erstellt, mit dem Sie sich beim virtuellen Computer anmelden können.

Installieren der Buildtools auf Ihrem virtuellen Computer

In diesem Abschnitt konfigurieren Sie den virtuellen Computer mit den Tools, die zum Erstellen der Website Space Game erforderlich sind.

Denken Sie daran, dass der vorhandene Buildprozess folgende Tools verwendet:

  • .NET SDK, das zum Erstellen der Anwendung verwendet wird
  • Node.js – Wird zum Ausführen von Buildaufgaben verwendet
  • npm – Paket-Manager für Node.js
  • GULP – ein Node.js-Paket, das zum Minimieren von JavaScript- und CSS-Dateien verwendet wird

Dies sind die wichtigsten Tools, die für den Buildprozess erforderlich sind. Um Sie zu installieren, laden Sie ein Shellskript von GitHub herunter und führen Sie es aus.

Hinweis

Beim Buildprozess werden weitere Tools (z. B. node-sass) verwendet, um Sass-Dateien (.scss) in CSS-Dateien (.css) zu konvertieren. Node.js installiert diese Tools jedoch, wenn der Build ausgeführt wird.

Beginnen wir, indem wir den Ubuntu-Paket-Manager namens aptaktualisieren. Mit dieser Aktion werden die neuesten Informationen aus den Paketrepositorys abgerufen. Dies ist normalerweise der erste Schritt beim Einrichten eines neuen Ubuntu-Systems.

  1. Aktualisieren Sie in Ihrer SSH-Verbindung den Cache des apt-Paket-Managers:

    sudo apt-get update
    

    sudo führt den Befehl mit Administrator- oder Stammberechtigungen aus.

  2. Führen Sie den folgenden curl-Befehl aus, um ein Shellskript namens build-tools.sh von GitHub herunterzuladen:

    curl https://raw.githubusercontent.com/MicrosoftDocs/mslearn-tailspin-spacegame-web/main/.agent-tools/build-tools.sh > build-tools.sh
    
  3. Geben Sie das Skript auf dem Terminal aus, damit Sie seinen Inhalt überprüfen können:

    cat build-tools.sh
    

    Das folgende Ergebnis wird angezeigt:

    #!/bin/bash
    set -e
    
    # Select a default .NET version if one is not specified
    if [ -z "$DOTNET_VERSION" ]; then
      DOTNET_VERSION=6.0.300
    fi
    
    # Add the Node.js PPA so that we can install the latest version
    curl -sL https://deb.nodesource.com/setup_16.x | bash -
    
    # Install Node.js and jq
    apt-get install -y nodejs
    
    apt-get install -y jq
    
    # Install gulp
    npm install -g gulp
    
    # Change ownership of the .npm directory to the sudo (non-root) user
    chown -R $SUDO_USER ~/.npm
    
    # Install .NET as the sudo (non-root) user
    sudo -i -u $SUDO_USER bash << EOF
    curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin -c LTS -v $DOTNET_VERSION
    EOF
    

    Das Skript installiert Node.js, npm, gulp und .NET Core.

    Durch Festlegen der Umgebungsvariablen DOTNET_VERSION können Sie angeben, welche .NET-Version installiert werden soll. Wenn Sie diese Variable nicht festlegen, installiert das Skript die Version, die von der vorhandenen Buildkonfiguration verwendet wird. Zu Lernzwecken legen Sie diese Variable nicht fest, sondern erlauben dem Skript, die Standardversion zu verwenden.

  4. Erstellen Sie die ausführbare Datei des Skripts und führen Sie das Skript dann aus:

    chmod u+x build-tools.sh
    sudo ./build-tools.sh
    

    Die Skriptausführung kann einige Minuten dauern.

    In der Praxis könnten Sie nun Befehle ausführen, um zu überprüfen, ob alle Softwarekomponenten erfolgreich installiert wurden.

Installieren von Agent-Software auf Ihrem virtuellen Computer

Nun ist es an der Zeit, die Agent-Ssoftware auf Ihrem virtuellen Computer zu installieren. Mithilfe dieser Software ermöglicht kann der virtuelle Computer als Build-Agent agieren und Buildaufträge von Azure Pipelines empfangen.

Beim Registrierungsprozess wird auf installierte Software überprüft, bevor der Agent bei Azure Pipelines registriert wird. Daher ist es wichtig, den Agent einzurichten, nachdem Sie die gesamte sonstige Software installiert haben. In der Praxis können Sie den Agent ein zweites Mal registrieren, wenn Sie zusätzliche Software installieren müssen.

In der Dokumentation wird erläutert, wie Sie selbstgehostete Linux-Agents sowie macOS- und Windows-Agents manuell einrichten. Sie führen ein Shellskript aus, um Ihren Agent zu konfigurieren, ähnlich wie beim Einrichten von Buildtools im vorherigen Abschnitt.

Wichtig

Das Skript, das Sie hier ausführen, dient Lernzwecken. In der Praxis sollten Sie zunächst verstehen, wie sich die einzelnen Befehle in den Skripts, die Sie erstellen, auf das Gesamtsystem auswirken. Am Ende des Moduls verweisen wir auf die Dokumentation, in der Ihre Optionen vollständig beschrieben werden.

  1. Führen Sie den folgenden curl-Befehl aus, um ein Shellskript namens build-agent.sh von GitHub herunterzuladen:

    curl https://raw.githubusercontent.com/MicrosoftDocs/mslearn-tailspin-spacegame-web/main/.agent-tools/build-agent.sh > build-agent.sh
    
  2. Geben Sie das Skript auf dem Terminal aus, damit Sie seinen Inhalt überprüfen können:

    cat build-agent.sh
    

    Das folgende Ergebnis wird angezeigt:

    #!/bin/bash
    set -e
    
    # Select a default agent version if one is not specified
    if [ -z "$AZP_AGENT_VERSION" ]; then
      AZP_AGENT_VERSION=2.187.2
    fi
    
    # Verify Azure Pipelines token is set
    if [ -z "$AZP_TOKEN" ]; then
      echo 1>&2 "error: missing AZP_TOKEN environment variable"
      exit 1
    fi
    
    # Verify Azure DevOps URL is set
    if [ -z "$AZP_URL" ]; then
      echo 1>&2 "error: missing AZP_URL environment variable"
      exit 1
    fi
    
    # If a working directory was specified, create that directory
    if [ -n "$AZP_WORK" ]; then
      mkdir -p "$AZP_WORK"
    fi
    
    # Create the Downloads directory under the user's home directory
    if [ -n "$HOME/Downloads" ]; then
      mkdir -p "$HOME/Downloads"
    fi
    
    # Download the agent package
    curl https://vstsagentpackage.azureedge.net/agent/$AZP_AGENT_VERSION/vsts-agent-linux-x64-$AZP_AGENT_VERSION.tar.gz > $HOME/Downloads/vsts-agent-linux-x64-$AZP_AGENT_VERSION.tar.gz
    
    # Create the working directory for the agent service to run jobs under
    if [ -n "$AZP_WORK" ]; then
      mkdir -p "$AZP_WORK"
    fi
    
    # Create a working directory to extract the agent package to
    mkdir -p $HOME/azp/agent
    
    # Move to the working directory
    cd $HOME/azp/agent
    
    # Extract the agent package to the working directory
    tar zxvf $HOME/Downloads/vsts-agent-linux-x64-$AZP_AGENT_VERSION.tar.gz
    
    # Install the agent software
    ./bin/installdependencies.sh
    
    # Configure the agent as the sudo (non-root) user
    chown $SUDO_USER $HOME/azp/agent
    sudo -u $SUDO_USER ./config.sh --unattended \
      --agent "${AZP_AGENT_NAME:-$(hostname)}" \
      --url "$AZP_URL" \
      --auth PAT \
      --token "$AZP_TOKEN" \
      --pool "${AZP_POOL:-Default}" \
      --work "${AZP_WORK:-_work}" \
      --replace \
      --acceptTeeEula
    
    # Install and start the agent service
    ./svc.sh install
    ./svc.sh start
    

    Sie müssen nicht verstehen, wie die einzelnen Zeilen funktionieren, aber hier ist eine kurze Zusammenfassung der Funktionsweise dieses Skripts:

    • Das Agentpaket wird als tar.gz-Datei heruntergeladen, und der Inhalt wird extrahiert.
    • In den extrahierten Dateien führt das Skript folgende Aktionen aus:
      • Es führt ein Shellskript namens installdependencies.sh aus, um die Agentsoftware zu installieren.
      • Es führt ein Shellskript namens config.sh aus, um den Agent zu konfigurieren und bei Azure Pipelines zu registrieren.
      • Es führt ein Shellskript namens svc.sh aus, um den Agentdienst zu installieren und zu starten.

    Das Skript verwendet Umgebungsvariablen, mit denen Sie Details zu ihrer Azure DevOps-Organisation bereitstellen können. Hier finden Sie eine Zusammenfassung:

    Bash-Variable BESCHREIBUNG Standard
    AZP_AGENT_VERSION Die Version der Agentsoftware, die installiert werden soll Die Version, die zuletzt zum Testen dieses Moduls verwendet wurde
    AZP_URL Die URL Ihrer Azure DevOps-Organisation (Keine)
    AZP_TOKEN Ihr persönliches Zugriffstoken (Keine)
    AZP_AGENT_NAME Der Name Ihres Agents, wie er in Azure DevOps erscheint Der Hostname des Systems
    AZP_POOL Der Name des Ihres Agentpools Standard
    AZP_WORK Das Arbeitsverzeichnis für den Agent zum Ausführen von Buildaufgaben _work

    Wenn im Skript kein Standardwert für Variablen bereitgestellt wird, die nicht festgelegt werden, wird eine Fehlermeldung ausgegeben, und das Skript wird sofort beendet.

    Legen Sie in den folgenden Schritten die folgenden Umgebungsvariablen fest:

    • AZP_AGENT_VERSION
    • AZP_URL
    • AZP_TOKEN
    • AZP_AGENT_NAME
    • AZP_POOL

    Es wird empfohlen, die anderen Variablen vorerst nicht festzulegen.

  3. Legen Sie die Umgebungsvariable AZP_AGENT_NAME auf den Name des Agents fest. Zum Beispiel MyLinuxAgent.

    export AZP_AGENT_NAME=MyLinuxAgent
    
  4. Legen Sie die Umgebungsvariable AZP_URL auf die URL zu ihrer Azure DevOps-Organisation fest.

    Ersetzen Sie <Organisation> durch Ihre eigene. Den Namen erhalten Sie auf der Browserregisterkarte, auf der Azure DevOps angezeigt wird.

    export AZP_URL=https://dev.azure.com/organization
    
  5. Legen Sie die AZP_TOKEN-Umgebungsvariable fest, um Ihr persönliches Zugriffstoken anzugeben (der lange Tokenwert, den Sie kopiert haben, der später verwendet werden soll).

    Ersetzen Sie <token> durch Ihr Token.

    export AZP_TOKEN=token
    
  6. Legen Sie die Umgebungsvariable AZP_POOL auf den Namen des Agentpools fest. Zuvor haben Sie einen Pool namens MyAgentPool erstellt.

    export AZP_POOL=MyAgentPool
    
  7. Legen Sie die Umgebungsvariable AZP_AGENT_VERSION auf die aktuelle Version des Agents fest.

    export AZP_AGENT_VERSION=$(curl -s https://api.github.com/repos/microsoft/azure-pipelines-agent/releases | jq -r '.[0].tag_name' | cut -d "v" -f 2)
    

    Eine YAML-Pipeline auf einem Linux-Computer muss die aktuellste Version des Agents verwenden, auch wenn es sich um eine Vorabversion handelt. Die Agentsoftware wird ständig aktualisiert, sodass Sie die Versionsinformationen per curl aus dem GitHub-Repository erhalten. Der Befehl verwendet jq, um die neueste Version aus der zurückgegebenen JSON-Zeichenfolge zu lesen.

  8. Geben Sie die Agentversion auf der Konsole aus. Optional können Sie überprüfen, ob es sich um die neueste Version handelt.

    echo $AZP_AGENT_VERSION
    
  9. Erstellen Sie die ausführbare Datei des Skripts und führen Sie sie aus:

    chmod u+x build-agent.sh
    sudo -E ./build-agent.sh
    

    sudo ermöglicht das Ausführen des Skripts als Stammbenutzer. Das Argument -E behält die aktuellen Umgebungsvariablen, einschließlich der von Ihnen festgelegten, bei, sodass sie für das Skript verfügbar sind.

    Während der Ausführung des Skripts sehen Sie, dass der Agent eine Verbindung mit Azure DevOps herstellt, den Agent zum Agentpool hinzufügt und die Agentverbindung testet.

Überprüfen Sie, ob der Agent ausgeführt wird.

Sie haben die Buildtools und die Agentsoftware erfolgreich auf Ihrem virtuellen Computer installiert. Wechseln Sie zur Überprüfung zu Azure DevOps, und sehen Sie sich den Agent im Agentpool an.

  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.

  4. Wählen Sie MyAgentPool aus.

  5. Wählen Sie die Registerkarte Agents aus.

    Sie können sehen, dass der Agent online und bereit ist, Buildaufträge anzunehmen.

    A screenshot of Azure DevOps showing the status of the private agent. The agent shows as online, idle, and enabled.

    Tipp

    Wenn der Build-Agent als Offline angezeigt wird, warten Sie einen Moment, und aktualisieren Sie dann die Seite.

  6. Wählen Sie den Agent MyLinuxAgent aus.

  7. Wählen Sie die Registerkarte Funktionen aus.

    Während des Setups hat der Konfigurationsprozess den Build-Agent auf Toolfunktionen überprüft. Sie sehen, dass npm als eine davon aufgeführt ist. Denken Sie daran, dass mit der ursprünglichen Buildkonfiguration angegeben wurde, dass npm auf dem Agent installiert sein muss.

    A screenshot of Azure DevOps showing a few of the agent's capabilities. The npm capability is highlighted.

    Wenn Sie festlegen, welcher Agentpool verwendet werden soll, können Sie beliebige dieser Einträge zum Abschnitt demands hinzufügen. Indem Sie sie hinzufügen, wird sichergestellt, dass Azure Pipelines einen Build-Agent auswählt, der über die Software verfügt, die Sie zum Erstellen Ihrer Anwendung benötigen. Außerdem können Sie Agentpools mit verschiedenen Softwarekonfigurationen erstellen. Azure Pipelines wählt die richtige Konfiguration basierend auf Ihren Anforderungen aus.