Verwendung von Azure Pipelines

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Azure Pipelines unterstützt Continuous Integration (CI) und Continuous Delivery (CD), um Ihren Code kontinuierlich zu testen, zu erstellen und bereitzustellen. Hierzu müssen Sie eine Pipeline definieren.

Die neueste Möglichkeit zum Erstellen von Pipelines ist der YAML-Pipeline-Editor. Sie können klassische Pipelines auch mit dem klassischen Editor verwenden.

Automatisieren von Tests, Builds und Bereitstellung

Continuous Integration wird verwendet, um Tests und Builds für Ihr Projekt zu automatisieren. CI hilft dabei, Fehler oder Probleme frühzeitig im Entwicklungszyklus zu erfassen, wenn sie einfacher und schneller zu beheben sind. Elemente, die als Artefakte bezeichnet werden, werden von CI-Systemen erstellt. Sie werden von den Continuous Delivery-Releasepipelines verwendet, um automatische Bereitstellungen zu steuern.

Continuous Delivery wird verwendet, um Code automatisch in mehreren Phasen bereitzustellen und zu testen, um die Qualität zu steigern. Continuous Integration-Systeme erzeugen bereitstellbare Artefakte, einschließlich Infrastruktur und Apps. Automatisierte Releasepipelines nutzen diese Artefakte, um neue Versionen und Fehlerkorrekturen für das Ziel Ihrer Wahl freizugeben.

Continuous Integration (CI) Continuous Delivery (CD)
- Erhöhen der Code Coverage
- Schnelleres Erstellen durch Aufteilen von Test- und Buildläufen.
- Automatische Sicherstellung, dass Sie keinen fehlerhaften Code versenden.
- Kontinuierliches Ausführen von Tests
- Automatisches Bereitstellen von Code in der Produktion
- Stellen Sie sicher, dass Bereitstellungsziele über den neuesten Code verfügen.
- Verwenden von getesteten Code aus dem CI-Prozess

Definieren von Pipelines mithilfe der YAML-Syntax

In der CI-Phase definieren Sie Ihre Pipeline in einer YAML-Datei namens azure-pipelines.yml mit dem Rest Ihrer App.

Pipelines YAML-Einführungsimage

  • Die Version der Pipeline wird mit Ihrem Code verwaltet. Dabei wird dieselbe Verzweigungsstruktur verwendet. Eine Überprüfung Ihrer Änderungen erzielen Sie durch Code Reviews in Pull Requests und Brancherstellungsrichtlinien.
  • Jede von Ihnen verwendete Verzweigung kann die Pipeline ändern, indem sie die azure-pipelines.yml Datei ändert. Erfahren Sie mehr über branch-Überlegungen für YAML-Pipelines.
  • Eine Änderung am Buildprozess kann zu einer Unterbrechung oder zu einem unerwarteten Ergebnis führen. Da sich die Änderung mit dem Rest Ihrer Codebasis der Versionskontrolle unterliegt, können Sie das Problem leichter identifizieren.

Führen Sie die folgenden grundlegenden Schritte aus:

  1. Konfigurieren Sie Azure Pipelines zur Verwendung Ihres Git-Repositorys.
  2. Bearbeiten Sie Ihre azure-pipelines.yml Datei, um Ihren Build zu definieren.
  3. Übertragen Sie den Code per Push in Ihr Repository für die Versionskontrolle. Mit dieser Aktion wird der Standardauslöser ausgelöst, um den Buildvorgang und die Bereitstellung durchzuführen und anschließend die Ergebnisse zu überwachen.

Ihr Code wird nun aktualisiert, erstellt, getestet und gepackt. Er kann auf einem beliebigen Ziel bereitgestellt werden.

Definieren von Pipelines mithilfe der klassischen Schnittstelle

Erstellen und konfigurieren Sie Pipelines im Azure DevOps-Webportal mit dem Editor für klassische Benutzeroberfläche. Sie definieren eine Buildpipeline, um Ihren Code zu erstellen und zu testen sowie um anschließend Artefakte zu veröffentlichen. Außerdem definieren Sie eine Releasepipeline, um diese Artefakte zu nutzen und für Bereitstellungsziele bereitzustellen.

Pipelines Designer-Einführungsbild

Führen Sie die folgenden grundlegenden Schritte aus:

  1. Konfigurieren Sie Azure Pipelines zur Verwendung Ihres Git-Repositorys.
  2. Verwenden Sie den klassischen Azure Pipelines-Editor, um Ihre Build- und Releasepipelines zu erstellen und zu konfigurieren.
  3. Übertragen Sie den Code per Push in Ihr Repository für die Versionskontrolle. Diese Aktion löst Ihre Pipeline aus und führt Tasks wie das Erstellen oder Testen von Code aus.

Der Build erstellt ein Artefakt, das von den restlichen Pipelines zum Ausführen von Tasks wie der Bereitstellung im Staging- oder Produktionsprozess verwendet wird.

Ihr Code wird nun aktualisiert, erstellt, getestet und gepackt. Er kann auf einem beliebigen Ziel bereitgestellt werden.

Verfügbarkeit von Funktionen

Bestimmte Pipelinefeatures sind nur bei Verwendung von YAML oder beim Definieren von Build- oder Releasepipelines mit der klassischen Schnittstelle verfügbar. Die folgende Tabelle gibt an, welche Features unterstützt werden und für welche Aufgaben und Methoden.

Funktion YAML Klassischer Build Klassisches Release Notizen
Agents Gibt eine erforderliche Ressource an, auf der die Pipeline ausgeführt wird.
Genehmigungen Definiert eine Reihe von Überprüfungen, die vor Abschluss einer Bereitstellungsstufe erforderlich sind.
Artefakte Unterstützt das Veröffentlichen oder Nutzen verschiedener Pakettypen.
Zwischenspeichern Reduziert die Buildzeit, indem die Wiederverwendung von Ausgaben oder heruntergeladenen Abhängigkeiten aus einer Ausführung in späteren Ausführungen zugelassen wird. In der Vorschauversion nur mit Azure Pipelines verfügbar.
Conditions (MSBuild-Bedingungen) Gibt Bedingungen an, die erfüllt werden müssen, bevor ein Auftrag ausgeführt wird.
Containeraufträge Gibt Aufträge an, die in einem Container ausgeführt werden sollen.
Forderungen Stellt sicher, dass die Pipelineanforderungen erfüllt werden, bevor eine Pipelinestufe ausgeführt wird. Erfordert selbstgehostete Agents.
Abhängigkeiten Gibt eine Anforderung an, die erfüllt sein muss, damit der nächste Auftrag oder die nächste Stufe ausgeführt wird.
Bereitstellungsgruppen Definiert einen logischen Satz von Bereitstellungszielcomputern.
Bereitstellungsgruppenaufträge Gibt einen Auftrag für das Release in einer Bereitstellungsgruppe an.
Bereitstellungsaufträge Definiert die Bereitstellungsschritte.
Umgebung Stellt eine Sammlung von Ressourcen dar, die für die Bereitstellung als Ziel dienen. Nur mit Azure Pipelines verfügbar.
Gates Unterstützen die automatische Sammlung und Auswertung externer Integritätssignale, bevor eine Releasestufe abgeschlossen wird. Nur mit klassischem Release verfügbar.
Aufträge Definiert die Ausführungssequenz einer Reihe von Schritten.
Dienstverbindungen Aktiviert eine Verbindung mit einem Remotedienst, der zum Ausführen von Aufgaben in einem Auftrag erforderlich ist.
Dienstcontainer Ermöglicht es Ihnen, den Lebenszyklus eines containerisierten Diensts zu verwalten.
Phasen Organisiert Aufträge innerhalb einer Pipeline.
Aufgabengruppen Kapselt eine Abfolge von Aufgaben in eine einzelne, wiederverwendbare Aufgabe. Wenn Sie YAML verwenden, finden Sie weitere Informationen unter „Vorlagen“.
Aufgaben Definiert die Bausteine, aus denen sich eine Pipeline zusammensetzt.
Vorlagen Definiert wiederverwendbare/n Inhalt, Logik und Parameter.
Trigger Definiert das Ereignis, das die Ausführung einer Pipeline auslöst.
Variablen Stellt einen Wert dar, der durch Daten ersetzt wird, die an die Pipeline übergeben werden sollen.
Variablengruppen Dient dem Speichern von Werten, die Sie kontrollieren und über mehrere Pipelines hinweg verfügbar machen möchten.

Nächste Schritte