Freigeben über


Automatisieren der Erstellung und Bereitstellung für Standardlogik-App-Workflows mit Azure DevOps und Visual Studio Code

Für Logik-App-Standardworkflows, die in Azure Logic Apps mit einem Mandaten ausgeführt werden, können Sie Visual Studio Code mit der Erweiterung Azure Logic Apps (Standard) verwenden, um Ihr Logik-App-Projekt lokal zu entwickeln, zu testen und zu speichern, indem Sie ein beliebiges Quellcodeverwaltungssystem verwenden. Um die vollständigen Vorteile der einfachen und konsistenten Bereitstellung Ihrer Workflows in verschiedenen Umgebungen und Plattformen zu erzielen, automatisieren Sie Ihren Build- und Bereitstellungsprozess.

Die Azure Logic Apps (Standard)-Erweiterung bietet Tools zum Erstellen und Verwalten automatisierter Build- und Bereitstellungsprozesse mithilfe von Azure DevOps. Bevor Sie mit dieser Automatisierung beginnen, lesen Sie die folgenden Überlegungen:

  • Die Azure-Logik-App-Ressource, in der Sie Ihre Workflows erstellen

  • Die von Ihren Workflows mit freigegebenen Connectors erstellten und in Azure gehosteten Verbindungen

    Diese Verbindungen unterscheiden sich von den integrierten Verbindungen, die direkt und nativ mit der Azure Logic Apps-Laufzeit ausgeführt werden.

  • Die spezifischen Einstellungen und Parameter für die verschiedenen Umgebungen, in denen Sie bereitstellen möchten

Die Erweiterung hilft Ihnen, die folgenden erforderlichen Aufgaben zum Automatisieren von Erstellung und Bereitstellung auszuführen:

  • Parametrisieren der Verbindungsverweise zur Entwurfszeit. Diese Aufgabe vereinfacht das Aktualisieren von Verweisen in verschiedenen Umgebungen, ohne die lokale Entwicklungsfunktionalität zu unterbrechen.

  • Generieren von Skripts, die die Bereitstellung für Ihre Logik-App-Standardressource automatisieren, einschließlich aller abhängigen Ressourcen.

  • Generieren von Skripts, die die Bereitstellung für von Azure gehostete Verbindungen automatisieren.

  • Vorbereiten umgebungsspezifischer Parameter, die Sie während des Erstellungsprozesses in das Azure Logic Apps-Paket einfügen können, ohne die lokale Entwicklungsfunktionalität zu unterbrechen.

  • Generieren von Pipelines nach Bedarf mithilfe von Azure DevOps, um die Infrastrukturbereitstellung zusammen mit den Erstellungs- und Releaseprozessen zu unterstützen.

In diesem Leitfaden wird gezeigt, wie Sie die folgenden Aufgaben ausführen:

  1. Erstellen eines Logik-App-Arbeitsbereichs und eines Projekts in Visual Studio Code mit den Dateien, die Pipelines für Infrastrukturbereitstellung, Continuous Integration (CI) und Continuous Deployment (CD) erstellen.

  2. Erstellen einer Verbindung zwischen Ihrem Arbeitsbereich und Git-Repository in Azure DevOps.

  3. Erstellen von Pipelines in Azure DevOps.

Einschränkungen und bekannte Probleme

  • Diese Funktion unterstützt nur Logik-App-Standardprojekte. Wenn Ihr Visual Studio Code-Arbeitsbereich sowohl ein Logik-App-Standardprojekt als auch ein benutzerdefiniertes Functions-Codeprojekt enthält, werden für beide Bereitstellungsskripts generiert, benutzerdefinierte Codeprojekte werden derzeit jedoch ignoriert. Die Möglichkeit zum Erstellen von Buildpipelines für benutzerdefinierten Code ist in der Roadmap enthalten.

  • Die Erweiterung erstellt Pipelines für Infrastrukturbereitstellung, Continuous Integration (CI) und Continuous Deployment (CD). Sie sind dafür verantwortlich, die Pipelines mit Azure DevOps zu verbinden und die relevanten Trigger zu erstellen.

  • Derzeit unterstützt die Erweiterung nur Azure Resource Management-Vorlagen (ARM-Vorlagen) für Infrastrukturbereitstellungsskripts. Andere Vorlagen sind in Planung.

Voraussetzungen

Erstellen eines Logik-App-Arbeitsbereichs, -Projekts und -Workflows

  1. Wählen Sie auf der Aktivitätsleiste in Visual Studio Code das Azure-Symbol aus.

  2. Öffnen Sie im Fenster Azure auf der Symbolleiste Arbeitsbereich das Menü Azure Logic Apps, und wählen Sie Neuen Logik-App-Arbeitsbereich erstellen aus.

    Screenshot zeigt Visual Studio Code, Azure-Symbol im linken Menü, Arbeitsbereichsbereich und ausgewählte Option für den Arbeitsbereich

  3. Folgen Sie den Aufforderungen, um die folgenden Aufgaben auszuführen:

    1. Um Ihren Arbeitsbereich zu erstellen, wählen Sie den Ordner aus.

    2. Geben Sie den Namen Ihres Arbeitsbereichs ein.

    3. Wählen Sie den Projekttyp aus: Logik-App.

    4. Geben Sie den Namen ihres Logik-App-Projekts ein.

    5. Wählen Sie den visuellen oder codebehafteten Workflowtyp aus.

    6. Wählen Sie die Workflowvorlage aus.

    7. Geben Sie den Workflownamen ein.

    8. Wählen Sie aus, ob der Arbeitsbereich im aktuellen Visual Studio Code-Fenster oder in einem neuen Fenster geöffnet werden soll.

      Visual Studio Code zeigt den neuen Arbeitsbereich und das Logik-App-Projekt an.

  4. Führen Sie die folgenden Schritte aus, um den Workflow-Designer zu öffnen:

    1. Erweitern Sie im Logik-App-Projekt den Ordner mit dem Workflownamen.

    2. Wenn sie noch nicht geöffnet ist, öffnen Sie die workflow.json Datei, öffnen Sie das Kontextmenü der Datei, und wählen Sie "Designer öffnen" aus.

    3. Wenn Sie aufgefordert werden, Parametrisierungen für Verbindungen zuzulassen, wenn Ihr Projekt geladen wird, wählen Sie Ja aus.

      Mit dieser Auswahl kann Ihr Projekt Parameter in Verbindungsdefinitionen verwenden, sodass Sie Erstellung und Bereitstellung für verschiedene Umgebungen automatisieren können.

    4. Befolgen Sie die Anweisungen, um die folgenden Elemente auszuwählen:

      • Verwenden von Connectors aus Azure

        Hinweis

        Wenn Sie diesen Schritt überspringen, können Sie nur die integrierten Connectors verwenden, die laufzeitgehostet sind. Führen Sie die folgenden Schritte aus, um die von Microsoft verwalteten, von Azure gehosteten Connectors zu einem späteren Zeitpunkt zu aktivieren:

        1. Öffnen Sie das Kontextmenü für die Datei workflow.json, und wählen Sie Connectors von Azure verwenden aus.

        2. Wählen Sie eine vorhandene Azure-Ressourcengruppe aus, die Sie für Ihre Logik-App verwenden möchten.

        3. Laden Sie den Workflow-Designer erneut.

      • Die vorhandene Azure-Ressourcengruppe, die Sie für Ihre Logik-App verwenden möchten

  5. Wenn Sie fertig sind, laden Sie den Workflow-Designer neu. Melden Sie sich an Azure an, wenn Sie dazu aufgefordert werden.

    Screenshot: Visual Studio Code, ausgewähltes Explorer-Symbol im linken Menü, Logik-App-Projekt und Workflow-Designer.

Sie können den Workflow jetzt beliebig bearbeiten und Ihren Workflow dabei lokal testen. Informationen zum Erstellen und Testen eines Beispielworkflows finden Sie im Artikel zum Erstellen von Standardworkflows mit Visual Studio Code.

Generieren von Bereitstellungsskripts

Nachdem Sie Ihren Workflow erstellt und lokal getestet haben, erstellen Sie Ihre Bereitstellungsskripts.

  1. Öffnen Sie im leeren Bereich unter allen Projektdateien das Kontextmenü des Projekts, und wählen Sie Bereitstellungsskripts generieren aus.

    Screenshot zeigt Visual Studio Code, Explorer-Symbol ausgewählt im linken Menü, Logik-App-Projekt, geöffnetes Kontextmenü des Projektfensters und ausgewählte Option zum Generieren von Bereitstellungsskripts.

  2. Befolgen Sie die Aufforderungen, um die folgenden Schritte auszuführen:

    1. Wenn Sie dazu aufgefordert werden, wählen Sie die vorhandene Azure-Ressourcengruppe aus, die für Ihre Logik-App verwendet werden soll.

    2. Geben Sie einen Bereitstellungsskripttyp ein. Verwenden Sie in diesem Beispiel die Azure DevOps-Pipeline.

    3. Geben Sie einen eindeutigen Namen für Ihre Logik-App-Ressource ein.

    4. Geben Sie einen eindeutigen Namen für Ihre Speicherkontoressource ein.

    5. Geben Sie einen eindeutigen Namen ein, der für Ihren App Service-Plan verwendet werden soll.

    Wenn Sie fertig sind, erstellt Visual Studio Code einen Ordner mit dem Namen deployment/{Name-der-Logik-App} im Stammverzeichnis Ihres Arbeitsbereichs. Dieser Ordner verwendet den gleichen Logik-App-Namen, den Sie in diesen Schritten angegeben haben.

    Hinweis

    Die Werte von Variablen, App-Einstellungen und Parametern in den folgenden Dateien werden basierend auf der Eingabe, die Sie in diesen Schritten bereitgestellt haben, vorab aufgefüllt. Wenn Sie auf eine andere Umgebung abzielen, stellen Sie sicher, dass Sie die Werte für die erstellten Parameter und Variablendateien aktualisieren.

    Screenshot zeigt Visual Studio Code, Explorer-Symbol im linken Menü, logikbasiertes App-Projekt und hervorgehobenen Ordner mit Bereitstellungsskripts mit Inhalt.

    Unter dem Ordner {Name-der-Logik-App} sehen Sie die folgende Struktur:

    Ordnername Dateiname und Beschreibung
    pipelines - CD-pipeline.yml: Die Continuous Delivery-Pipeline, die die Anweisungen zum Bereitstellen des Logik-App-Codes für die Logik-App-Ressource in Azure enthält.

    - CD-pipeline-variables.yml: Eine YAML-Datei, die die von der CD-pipeline.yml-Datei verwendeten Variablen enthält.

    - CI-pipeline.yml: Die Continuous Integration-Pipeline, die die Anweisungen zum Erstellen und Generieren der Artefakte enthält, die zum Bereitstellen der Logik-App-Ressource in Azure erforderlich sind.

    - CI-pipeline-variables.yml: Eine YAML-Datei, die die von der CI-pipeline.yml-Datei verwendeten Variablen enthält.

    - infrastructure-pipeline.yml: Eine YAML Infrastructure-as-Code-Pipeline , die die Anweisungen enthält, um alle ARM-Vorlagen in Azure zu laden und die Schritte in der infrastructure-pipeline-template.yml Datei auszuführen.

    - infrastructure-pipeline-variables.yml: Eine YAML-Pipeline, die alle Variablen enthält, die zum Ausführen der Schritte in der infrastructure-pipeline-template.yml Datei erforderlich sind.
    Infrastruktur - {connection-type}.parameters.json: Eine Ressourcen-Manager-Parameterdatei, die die Parameter enthält, die zum Bereitstellen einer von Azure gehosteten Verbindung mit dem Namen {Verbindungstyp} in Azure erforderlich sind. Diese Datei ist für jede in Azure gehostete Verbindung in Ihrem Workflow vorhanden.

    - {Verbindungstyp}.template.json: Eine Ressourcen-Manager-Vorlagendatei, die eine von Azure gehostete Verbindung namens {Verbindungsverweis} darstellt und die Informationen enthält, die zum Bereitstellen der entsprechenden {Verbindungsressource} in Azure verwendet werden. Diese Datei ist für jede in Azure gehostete Verbindung in Ihrem Workflow vorhanden.

    - {logic-app-name}.parameters.json: Eine Ressourcen-Manager-Parameterdatei, die die Parameter enthält, die zum Bereitstellen der Logik-App-Standardressource mit dem Namen {logic-app-name} in Azure erforderlich sind, einschließlich aller Abhängigkeiten.

    - {logic-app-name}.template.json: Eine Ressourcen-Manager-Vorlagendatei, die die Logik-App-Standardressource namens {logic-app-name} darstellt und die Informationen enthält, die zum Bereitstellen der Logik-App-Ressource in Azure verwendet werden.
    Workflowparameter parameters.json: Diese JSON-Datei ist eine Kopie der lokalen Parameterdatei und enthält eine Kopie aller benutzerdefinierten Parameter sowie die Cloudversion aller Parameter, die von der Erweiterung erstellt wurden, um von Azure gehostete Verbindungen zu parametrisieren. Diese Datei wird verwendet, um das Paket zu erstellen, das für Azure bereitgestellt wird.

Verbinden Ihres Arbeitsbereichs mit Ihrem Git-Repository

  1. Führen Sie bei Bedarf die folgenden Schritte aus, um Ihr Repository zu initialisieren:

    1. Wählen Sie in Visual Studio Code in der Aktivitätsleiste das Symbol Quellcodeverwaltung aus.

    2. Wählen Sie im Fenster Quellcodeverwaltung die Option Repository initialisieren aus.

    3. Wählen Sie im Eingabeaufforderungsmenü Ordner auswählen aus. Wählen Sie den Arbeitsbereichstammordner und dann Repository initialisieren aus.

      Screenshot zeigt das Visual Studio Code-, Quellcodeverwaltungsfenster und die ausgewählte Option mit dem Namen

    4. Wählen Sie im Fenster Quellcodeverwaltung die Option Repository öffnen aus.

    5. Wählen Sie im Eingabeaufforderungsmenü das von Ihnen erstellte Repository aus.

    Weitere Informationen finden Sie im Artikel zu Visual Studio Code – Initialisieren eines Repositorys in einem lokalen Ordner.

  2. Führen Sie die folgenden Schritte aus, um die URL für Ihr Git-Repository abzurufen, damit Sie ein Remoterepository hinzufügen können:

    1. Öffnen Sie in Azure DevOps das Teamprojekt für Ihre Azure DevOps-Organisation.

    2. Erweitern Sie im linken Menü Repositorys, und wählen Sie Dateien aus.

    3. Wählen Sie auf der Symbolleiste des Bereichs Dateien die Option Klonen aus.

      Screenshot: Azure DevOps-Teamprojekt, Git-Repository und ausgewählte Option „Klonen“.

    4. Kopieren Sie im Fenster Repository klonen die HTTPS-Version der Klon-URL.

      Weitere Informationen finden Sie unter Abrufen der Klon-URL eines Azure Repos-Git-Repositorys.

  3. Führen Sie die folgenden Schritte aus, um ein Remoterepository für Ihr Git-Repository hinzuzufügen:

    1. Kehren Sie zu Visual Studio Code und zum Fenster Quellcodeverwaltung zurück.

    2. Unter Quellcodeverwaltungs-Repositories öffnen Sie in der Symbolleiste Ihres Repositorys das Menü mit den Auslassungspunkten (...) und wählen Sie Remote>Remote hinzufügen.

      Screenshot zeigt visual Studio Code, Quellcodeverwaltungsfenster und ausgewählte Option namens

  4. Fügen Sie an der Eingabeaufforderung die kopierte URL ein, und geben Sie einen Namen für das Remoterepository ein, normalerweise origin.

    Sie haben eine Verbindung zwischen Visual Studio Code und Ihrem Repository erstellt.

  5. Bevor Sie Ihre Pipelines im nächsten Abschnitt einrichten, öffnen Sie die CD-pipeline.yml-Datei, und benennen Sie die CI-Pipeline im Attribut source so um, dass sie dem CI-Pipelinenamen entspricht, den Sie verwenden möchten.

    Screenshot zeigt Visual Studio Code, das Quellcodeverwaltungsfenster, die geöffnete Datei CD-pipeline.yml und das hervorgehobene Quellfeld zur Angabe des CI-Pipeline-Namens.

  6. Committen Sie im Fenster Quellcodeverwaltung Ihre Änderungen, und veröffentlichen Sie sie im Repository.

    Weitere Informationen finden Sie im Artikel zu Staging und Committen von Codeänderungen.

Erstellen von Pipelines in Azure DevOps

Um die Infrastruktur zusammen mit den CI- und CD-Pipelines in Azure DevOps zu erstellen, wiederholen Sie die folgenden Schritte für jede der folgenden Pipelinedateien:

  • infrastructure-pipeline.yml für die Infrastructure-as-Code-Pipeline.
  • CI-pipeline.yml für die Continuous Integration-Pipeline.
  • CD-pipeline.yml für die Continuous Delivery-Pipeline.

Einrichten einer Pipeline

  1. Wechseln Sie in Azure DevOps zurück zu Ihrem Teamprojekt und zum Bereich Repos>Dateien.

  2. Wählen Sie im Bereich Dateien die Option Build einrichten aus.

    Screenshot: Azure DevOps-Teamprojekt, Git-Repository und ausgewählte Option „Build einrichten“.

  3. Wählen Sie im Bereich Pipeline konfigurieren die Option Vorhandene Azure Pipelines-YAML-Datei aus.

    Screenshot der Seite

  4. Führen Sie im Bereich Vorhandene YAML-Datei auswählen die folgenden Schritte aus, um die Datei Infrastructure-pipeline.yml auszuwählen:

    1. Wählen Sie für Branch den Branch aus, in dem Sie Ihre Änderungen committet haben, z. B. main oder Releasebranch.

    2. Wählen Sie für Pfad den Pfad aus, der für Ihre Pipeline verwendet werden soll. Dieser Pfad ist der Standardwert: deployment/{logic-app-name}/pipelines/{infrastructure-pipeline-name}.yml.

    3. Wenn Sie bereit sind, wählen Sie Weiter aus.

      Screenshot des Bereichs zum Auswählen einer vorhandenen YAML-Datei.

  5. Wählen Sie im Bereich Pipeline konfigurieren die Option Pipeline überprüfen aus.

  6. Wählen Sie Ausführen>Speichern aus.

    Screenshot des Bereichs „Review your governed pipeline“.

Anzeigen und Ausführen der Pipeline

Führen Sie die folgenden Schritte aus, um Ihre Pipeline zu suchen und auszuführen:

  1. Erweitern Sie im linken Menü Ihres Teamprojekts Pipelines, und wählen Sie Pipelines aus.

  2. Wählen Sie die Registerkarte Alle aus, um alle verfügbaren Pipelines anzuzeigen. Suchen Sie die Pipeline, und wählen Sie sie aus.

  3. Wählen Sie auf der Symbolleiste der Pipeline Pipeline ausführen aus.

    Screenshot des Bereichs für die erstellte Pipeline und ausgewählte Option zum Ausführen der Pipeline.

Weitere Informationen finden Sie unter Erstellen Ihrer ersten Pipeline.