Einführung in Azure DevOps Services

Abgeschlossen

Jedes in Azure DevOps erstellte Projekt wird mit einer Reihe von Diensten bereitgestellt. Sie können alle Dienste verwenden oder nur diejenigen auswählen, die in Ihren Workflow passen. Diese Dienste umfassen Tools für Planung, Versionskontrolle, Tests, Integration und Bereitstellung.

Azure Boards

Azure Boards ist einer der am häufigsten verwendeten Azure DevOps Services. Mit Azure Boards können Sie die Arbeit in Ihren Teams planen, verfolgen und diskutieren. Das Erscheinungsbild hängt davon ab, welchen Arbeitselementprozess Sie beim Erstellen des Projekts ausgewählt haben.

Screenshot eines Beispiels zu einer Azure DevOps-Übersicht

Azure Boards bietet Kanban-Übersichten und Backlogs, um Ihren agilen Entwicklungsprozess zu unterstützen. Es ist ein einfaches schnelles Planungstool mit Drag & Drop-Funktion. Alle verschiedenen Aufgaben können in einer Backlog-Übersicht zusammengefasst und vom Produktbesitzer priorisiert werden.

Azure Repos

Azure Repos ist der Dienst, der für die Versionskontrolle verwendet wird. Sie haben die Möglichkeit, Git oder Team Foundation-Versionskontrolle zu verwenden. Wenn Sie sich für Git entscheiden, können Sie unbegrenzt viele Repositorys hosten. Jede von Ihnen entwickelte AL-Erweiterung kann ein separates Git-Repository sein. Sie können ein Projekt für einen bestimmten Kunden erstellen und mehrere Git-Repositorys in einem Projekt haben, um alle verschiedenen Erweiterungen zu hosten, die Sie für diesen Kunden entwickelt haben.

Im Abschnitt „Azure Repos“ erhalten Sie einen Überblick über alle gehosteten Dateien, Commits, Verzweigungen und Pull-Anforderungen.

Screenshot des Azure Repos-Abschnitts mit Übersicht

Bei einer Pull-Anforderung können Sie eine Codeüberprüfung von anderen Entwicklern in Ihrem Team verlangen, bevor Ihr Code akzeptiert wird. Dies kann ein Trigger sein, um einen automatisierten Build zu starten.

Screenshot der Pull-Anforderungen für Azure Repos

Azure Repos unterstützt auch Web-Hooks und REST-APIs. So können Sie Validierungen automatisieren oder auf Ereignisse im Repository reagieren.

Azure Pipelines

Azure Pipelines ist der Dienst, den Sie zum Einrichten automatisierter Tests, automatisierter Builds und automatisierter Bereitstellungen benötigen. Pipelines werden mit Build-Agents ausgeführt. Diese Agents können als Clouddienst gehostet werden, sodass Sie nicht in die Infrastruktur investieren müssen, oder Sie können sie auf Ihrer Infrastruktur ausführen. Wenn Sie auf lokale Ressourcen zugreifen oder einen lokalen Business Central Server anvisieren müssen, sind lokale Build-Agents die bessere Wahl. Bei lokalen Build-Agents gibt es auch keine zeitliche Beschränkung für die Laufzeit eines Agent.

Ein Build-Agent ist eine kleine ausführbare Datei, auf der ein oder mehrere Server (oder sogar Desktops) installiert werden können. Sie können sie in einem Agentenpool gruppieren. Wenn Sie also einen Build starten, wird nach dem nächsten verfügbaren Build-Agent im Auswahlpool gesucht. Auf diese Weise können Sie mehrere Builds gleichzeitig auf verschiedenen Computern ausführen.

Screenshot der Seite zum Erstellen von Azure Pipelines

Azure Pipelines unterstützt verschiedene Programmiersprachen und kann mit Docker-Containern erstellt werden. Für Business Central müssen Sie viele PowerShell-Skripts verwenden, um einen automatisierten Erstellungsprozess einzurichten. Dazu gehört das Abrufen des Herkunftscodes aus einem Git-Repository mithilfe des AL-Compilers und das Erstellen einer App-Datei. Azure Pipelines ist auch der Dienst, mit dem automatisierte Tests eingerichtet werden. Einheiten‑ und Integrationstests sind Teil Ihrer AL-Erweiterung (oder haben eine Abhängigkeit). Sie werden in einer Build-Pipeline erstellt und ausgeführt. Wenn ein Test fehlschlägt, schlägt auch das Build fehl.

Selbst wenn Sie GitHub als Versionskontrollsystem verwenden, können Sie Azure Pipelines integrieren, um ein automatisiertes Build-System einzurichten. Mit YAML-Dateien kann eine Build-Definition erstellt werden. Eine YAML-Datei ist eine Textdatei, die alle verschiedenen Schritte in einem Erstellungsprozess definiert.

Screenshot eines Beispiels zu einer YAML-Build-Datei

Azure Test Plans

Mit Azure Test Plans erhalten Sie Tools zum Konfigurieren einer manuellen Testlösung. Sie können einen schrittweisen Testprozess definieren, der die Tester des Testteams anleitet, jeden einzelnen Schritt des Workflows Ihrer Anwendung zu überprüfen. Sie können dies verwenden, um Desktop‑ und Webanwendungen zu testen.

Jeder Schritt wird aufgezeichnet, sodass bei Auftreten eines Fehlers ein Fehler-Arbeitselement mit allen Schritten erstellt werden kann, die der Tester ausgeführt hat, um diesen Fehler zu erhalten. Dieser Dienst ist ein zusätzlicher bezahlter Service oder Teil eines Visual Studio Enterprise-Abonnements.

Screenshot zu Azure Test Plans

Azure Artifacts

Mit Azure Artifacts verfügen Sie über eine vollständig integrierte Paketverwaltung. Dies kann problemlos in Ihre Azure Pipelines integriert werden. Für .NET-Anwendungen in Visual Studio haben Sie die Möglichkeit, vorhandene Pakete herunterzuladen, um beispielsweise eine Bildverarbeitung durchzuführen, eine Verbindung zu Social Media-Plattformen herzustellen, Barcodes zu generieren usw. Sie können alle diese Funktionen selbst schreiben, aber auch vorhandene Pakete integrieren. Meistens werden sie vom offiziellen Anbieter dieser Dienste geschrieben. Diese Pakete werden in Paketverwaltungsdiensten wie NuGet gespeichert.

Screenshot der Seite „Azure Artifacts-Pakete“

Mit Azure Artifacts können Sie Ihren eigenen Paketverwaltungsdienst einrichten und Ihren eigenen Code hosten, der in anderen Projekten in Ihrer Organisation wiederverwendet werden kann. Sie können eine Business Central-Erweiterung erstellen, die die Lizenzinformationen für alle Ihre Add-On-Erweiterungen überprüft. Anstatt diesen Code neu zu schreiben, können Sie das Paket während Ihrer Buildpipelines von Azure Artifacts abrufen.