Erstellen und Testen von Go-Projekten

Azure DevOps Services

Verwenden Sie eine Pipeline, um Ihre Go-Projekte automatisch zu erstellen und zu testen.

Erstellen Ihrer ersten Pipeline

Neu bei Azure Pipelines? Wenn dies der Fall ist, sollten Sie sich zunächst mit diesem Abschnitt beschäftigen, bevor Sie mit anderen Abschnitten fortfahren.

Verzweigen Sie das folgende Repository auf GitHub:

https://github.com/MicrosoftDocs/pipelines-go

Anmelden bei Azure Pipelines

Melden Sie sich bei Azure Pipelines an. Nach der Anmeldung wechselt Ihr Browser zu https://dev.azure.com/my-organization-name und zeigt Ihr Azure DevOps-Dashboard an.

  1. Gehen Sie in einem Browser zu dev.azure.com, und melden Sie sich an.
  2. Wählen Sie Ihre Organisation aus.
  3. Erstellen Sie ein neues Projekt, indem Sie Neues Projekt oder Projekt erstellen wählen, wenn Sie das erste Projekt in der Organisation erstellen.
  4. Geben Sie einen Projektnamen ein.
  5. Wählen Sie die Sichtbarkeit für Ihr Projekt.
  6. Klicken Sie auf Erstellen.
  1. Gehen Sie in einem Browser zu Ihrem Azure DevOps-Server.
  2. Wählen Sie Ihre Sammlung.
  3. Erstellen Sie ein neues Projekt, indem Sie Neues Projekt oder Projekt erstellen wählen, wenn Sie das erste Projekt in der Sammlung erstellen.
  4. Geben Sie einen Projektnamen ein.
  5. Wählen Sie die Sichtbarkeit für Ihr Projekt.
  6. Klicken Sie auf Erstellen.

Erstellen der Pipeline

  1. Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und wechseln Sie zu Ihrem Projekt.

  2. Gehen Sie zu Pipelines und wählen Sie dann Neue Pipeline aus oder Pipeline erstellen, wenn Sie Ihre erste Pipeline erstellen.

  3. Führen Sie die Schritte des Assistenten aus. Dabei wählen Sie zuerst GitHub als Speicherort Ihres Quellcodes aus.

  4. Möglicherweise werden Sie zu GitHub weitergeleitet, um sich anzumelden. Geben Sie in diesem Fall Ihre Anmeldeinformationen für GitHub ein.

  5. Wenn die Liste der Repositorys angezeigt wird, wählen Sie Ihr Repository aus.

  6. Sie werden möglicherweise zu GitHub weitergeleitet, um die Azure Pipelines-App zu installieren. Wählen Sie in diesem Fall „Approve & Install“ (Genehmigen und installieren) aus.

Wenn die Registerkarte Konfigurieren angezeigt wird, wählen Sie Go aus. Ihre neue Pipeline wird angezeigt, und die YAML-Datei azure-pipelines.yml kann konfiguriert werden. In den folgenden Abschnitten erfahren Sie mehr über die gängigen Möglichkeiten zum Anpassen Ihrer Pipeline.

Buildumgebung

Sie können Azure Pipelines verwenden, um Ihre Go-Projekte zu erstellen, ohne eine eigene Infrastruktur einrichten zu müssen. Sie können Linux-, macOS- oder Windows-Agents verwenden, um Ihre Builds auszuführen.

Aktualisieren Sie das folgende Schnipsel in Ihrer azure-pipelines.yml-Datei, um das entsprechende Image auszuwählen.

pool:
  vmImage: 'ubuntu-latest'

Moderne Versionen von Go sind auf von Microsoft gehosteten Agents vorinstalliert. Die genauen Versionen der vorinstallierten Go-Version finden Sie unter von Microsoft gehosteten Agents in Azure Pipelines.

Einrichten von Go

Ab Go 1.11 müssen Sie keine $GOPATH-Umgebung mehr definieren, ein Arbeitsbereichslayout einrichten oder das dep-Modul verwenden. Die Abhängigkeitsverwaltung ist jetzt integriert.

Dieser YAML-Code implementiert den Befehl go get zum Herunterladen von Go-Paketen und deren Abhängigkeiten. Anschließend wird go build verwendet, um den Inhalt zu generieren, der mit der PublishBuildArtifacts@1-Aufgabe veröffentlicht wird.

trigger: 
 - main

pool:
   vmImage: 'ubuntu-latest'

steps: 
- task: GoTool@0
  inputs:
    version: '1.13.5'
- task: Go@0
  inputs:
    command: 'get'
    arguments: '-d'
    workingDirectory: '$(System.DefaultWorkingDirectory)'
- task: Go@0
  inputs:
    command: 'build'
    workingDirectory: '$(System.DefaultWorkingDirectory)'
- task: CopyFiles@2
  inputs:
    TargetFolder: '$(Build.ArtifactStagingDirectory)'
- task: PublishBuildArtifacts@1
  inputs:
     artifactName: drop

Entwickeln

Verwenden Sie go build, um Ihr Go-Projekt zu erstellen. Fügen Sie Ihrer Datei azure-pipelines.yml das folgende Codeschnipsel hinzu:

- task: Go@0
  inputs:
    command: 'build'
    workingDirectory: '$(System.DefaultWorkingDirectory)'

Test

Verwenden Sie go test, um Ihr Go-Modul und dessen Unterverzeichnisse (./...) zu testen. Fügen Sie Ihrer Datei azure-pipelines.yml das folgende Codeschnipsel hinzu:

- task: Go@0
  inputs:
    command: 'test'
    arguments: '-v'
    workingDirectory: '$(System.DefaultWorkingDirectory)'

Wenn Sie bereit sind, committen Sie eine neue azure-pipelines.yml-Datei in Ihr Repository, und aktualisieren Sie die Commitnachricht. Klicken Sie auf Speichern und ausführen.

Schaltfläche „Speichern und ausführen“ in einer neuen YAML-Pipeline

Wenn Sie Ihre Pipeline in Aktion beobachten möchten, wählen Sie den Build in der Option Aufträge in Ihrem Azure Pipelines-Dashboard aus. Pipelinebuild in Aktion, wenn die Option „Aufträge“ in Azure Pipelines ausgewählt ist

Da Ihr Code für die Go-Vorlage geeignet schien, wurde Ihre Pipeline automatisch erstellt.

Sie verfügen nun über eine funktionierende YAML-Pipeline (azure-pipelines.yml) in Ihrem Repository, die Sie anpassen können.

Wenn Sie bereit sind, Änderungen an Ihrer Pipeline vorzunehmen, wählen Sie sie auf der Seite Pipelines aus, und bearbeiten Sie dann die azure-pipelines.yml-Datei.

Tipp

Um wie in diesem Artikel beschrieben Änderungen an der YAML-Datei vorzunehmen, wählen Sie die Pipeline auf der Seite Pipelines aus, und wählen Sie dann Bearbeiten aus, um den Editor für die azure-pipelines.yml-Datei zu öffnen. Screenshot, der zeigt, wie Sie die Azure-Pipeline über das Dashboard bearbeiten, wobei die Option „Weitere Optionen“ ausgewählt und „Bearbeiten“ hervorgehoben ist

Erstellen eines Images und Pushen in eine Containerregistrierung

Für Ihre Go-App können Sie auch ein Image erstellen und in eine Containerregistrierung pushen.

Go-Erweiterung für Visual Studio Code (Microsoft)