Exportieren von Einstellungen aus App Configuration mit Azure Pipelines
Mit der Azure App Configuration-Exportaufgabe werden Schlüsselwerte aus Ihrem App Configuration-Speicher exportiert und als Azure Pipeline-Variablen festgelegt, die von nachfolgenden Tasks genutzt werden können. Diese Aufgabe ergänzt die Azure App Configuration-Importaufgabe, mit der Schlüsselwerte aus einer Konfigurationsdatei in Ihren App Configuration-Speicher importiert werden. Weitere Informationen finden Sie unter Importieren von Einstellungen an App Configuration mit Azure Pipelines.
Voraussetzungen
- Azure-Abonnement – Erstellen eines kostenlosen Kontos
- App Configuration-Speicher – kostenlos erstellen
- Azure DevOps-Projekt (kostenlos erstellen)
- Azure Pipelines-Agent Version 2.144.0 oder höher und Node Version 16 oder höher für die Ausführung der Aufgabe auf selbstgehosteten Agents.
Erstellen einer Dienstverbindung
Über eine Dienstverbindung können Sie von Ihrem Azure DevOps-Projekt aus auf Ressourcen in Ihrem Azure-Abonnement zugreifen.
Navigieren Sie in Azure DevOps zu dem Projekt, das Ihre Zielpipeline enthält. Wählen Sie in der unteren linken Ecke Projekteinstellungen aus.
Klicken Sie unter Pipelines auf Dienstverbindungen. Wählen Sie in der oberen rechten Ecke Neue Dienstverbindung aus.
Wählen Sie unter Neue Dienstverbindung die Option Azure Resource Manager aus.
Wählen Sie im Dialogfeld Authentifizierungsmethode die Option Workload-Identitätsverbund (automatisch) aus, um einen neuen Workload-Identitätsverbund zu erstellen, oder wählen Sie die Option Workload-Identitätsverbund (manuell) aus, um einen vorhandenen Workload-Identitätsverbund zu verwenden.
Geben Sie Ihr Abonnement, die Ressourcengruppe sowie einen Namen für Ihre Dienstverbindung ein.
Wenn Sie einen neuen Dienstprinzipal erstellt haben, suchen Sie den Namen des Dienstprinzipals, der der Dienstverbindung zugewiesen ist. Diesem Dienstprinzipal wird im nächsten Schritt eine neue Rollenzuweisung hinzugefügt.
Navigieren Sie zu Projekteinstellungen>Dienstverbindungen.
Wählen Sie die neue Dienstverbindung aus.
Wählen Sie Dienstprinzipal verwalten aus.
Beachten Sie den Wert unter Anzeigename.
Rollenzuweisung hinzufügen
Weisen Sie den im Rahmen der Aufgabe verwendeten Anmeldeinformationen die passenden App Configuration-Rollenzuweisungen zu, damit von der Aufgabe auf den App Configuration-Speicher zugegriffen werden kann.
Gehen Sie zu Ihrem App Configuration-Zielspeicher.
Wählen Sie im linken Menü Zugriffssteuerung (IAM) aus.
Wählen Sie im rechten Bereich Rollenzuweisungen hinzufügen aus.
Wählen Sie unter Rolle die Option App Configuration-Datenleser aus. Diese Rolle ermöglicht der Aufgabe das Lesen im App Configuration-Speicher.
Wählen Sie den Dienstprinzipal aus, der der Dienstverbindung zugeordnet ist, die Sie im vorherigen Abschnitt erstellt haben.
Wählen Sie Überprüfen und zuweisen aus.
Wenn der Speicher Key Vault-Verweise enthält, wechseln Sie zur entsprechenden Key Vault-Instanz, und weisen Sie dem im vorherigen Schritt erstellten Dienstprinzipal die Rolle Key Vault-Geheimnisbenutzer zu. Wählen Sie im Key Vault-Menü die Option Zugriffsrichtlinien aus, und stellen Sie sicher, dass die rollenbasierte Zugriffssteuerung in Azure als Berechtigungsmodell ausgewählt ist.
Verwenden in Builds
In diesem Abschnitt erfahren Sie, wie Sie Azure App Configuration-Exportaufgabe in einer Azure DevOps-Buildpipeline verwenden.
- Klicken Sie auf Pipelines>Pipelines, um zur Seite für Buildpipelines zu navigieren. Eine Dokumentation zur Buildpipeline finden Sie unter Erstellen Ihrer ersten Pipeline.
- Wenn Sie eine neue Buildpipeline erstellen, wählen Sie im letzten Schritt des Vorgangs auf der Registerkarte Review (Überprüfen) auf der rechten Seite der Pipeline Show assistant (Assistenten anzeigen) aus.
- Wenn Sie eine vorhandene Buildpipeline verwenden, klicken Sie oben rechts auf die Schaltfläche Bearbeiten.
- Suchen Sie nach der Aufgabe Azure App Configuration-Export.
- Konfigurieren Sie die erforderlichen Parameter für die Aufgabe, um die Schlüsselwerte aus dem App Configuration-Speicher zu exportieren. Die Parameter werden im Abschnitt Parameter sowie in QuickInfos neben dem jeweiligen Parameter beschrieben.
- Legen Sie den Parameter Azure subscription (Azure-Abonnement) auf den Namen der Dienstverbindung fest, die Sie in einem vorherigen Schritt erstellt haben.
- Legen Sie den App Configuration-Endpunkt auf den Endpunkt Ihres App Configuration-Speichers fest.
- Behalten Sie für die übrigen Parameter die Standardwerte bei.
- Speichern Sie Ihre Angaben, und reihen Sie einen Build in die Warteschlange ein. Im Buildprotokoll werden alle Fehler angezeigt, die ggf. bei der Aufgabenausführung aufgetreten sind.
Verwenden in Releases
In diesem Abschnitt erfahren Sie, wie Sie Azure App Configuration-Exportaufgabe in einer Azure DevOps-Releasepipeline verwenden.
- Wählen Sie Pipelines>Releases aus, um zur Seite für Releasepipelines zu navigieren. Eine Dokumentation zu Releasepipelines finden Sie unter Releasepipelines.
- Wählen Sie eine vorhandene Releasepipeline aus. Sollten Sie nicht über eine verfügen, wählen Sie Neue Pipeline aus, um eine zu erstellen.
- Wählen Sie rechts oben die Schaltfläche Bearbeiten aus, um die Releasepipeline zu bearbeiten.
- Wählen Sie im Dropdown Tasks (Aufgaben) die Stage (Phase) aus, in der Sie die Aufgabe hinzufügen möchten. Weitere Informationen zu den Phasen finden Sie unter Hinzufügen von Phasen, Abhängigkeiten und Bedingungen.
- Klicken Sie neben dem Auftrag, dem Sie eine neue Aufgabe hinzufügen möchten, auf + .
- Suchen Sie nach der Aufgabe Azure App Configuration-Export.
- Konfigurieren Sie die erforderlichen Parameter in der Aufgabe, um Ihre Schlüsselwerte aus Ihrem App Configuration-Speicher zu exportieren. Die Parameter werden im Abschnitt Parameter sowie in QuickInfos neben dem jeweiligen Parameter beschrieben.
- Legen Sie den Parameter Azure subscription (Azure-Abonnement) auf den Namen der Dienstverbindung fest, die Sie in einem vorherigen Schritt erstellt haben.
- Legen Sie den App Configuration-Endpunkt auf den Endpunkt Ihres App Configuration-Speichers fest.
- Behalten Sie für die übrigen Parameter die Standardwerte bei.
- Speichern Sie Ihre Angaben, und reihen Sie ein Release in die Warteschlange ein. Im Releaseprotokoll werden alle Fehler angezeigt, die ggf. bei der Aufgabenausführung aufgetreten sind.
Parameter
Von der Aufgabe „Azure App Configuration-Export“ werden folgende Parameter verwendet:
- Azure-Abonnement: Eine Dropdownliste mit Ihren verfügbaren Azure-Dienstverbindungen. Klicken Sie zum Aktualisieren der Liste mit den verfügbaren Azure-Dienstverbindungen rechts neben dem Textfeld auf die Schaltfläche Refresh Azure subscription (Azure-Abonnement aktualisieren).
- App Configuration-Endpunkt: Eine Dropdownliste, in die Ihre verfügbaren Konfigurationsspeicherendpunkte unter dem ausgewählten Abonnement geladen werden. Klicken Sie zum Aktualisieren der Liste mit den verfügbaren Konfigurationsspeicherendpunkten rechts neben dem Textfeld auf die Schaltfläche App Configuration-Endpunkt aktualisieren.
- Auswahlmodus: Gibt an, wie die aus einem Konfigurationsspeicher gelesenen Schlüsselwerte ausgewählt werden. Der Auswahlmodus „Standard“ ermöglicht die Verwendung von Schlüssel- und Bezeichnungsfiltern. Der Auswahlmodus „Momentaufnahme“ ermöglicht die Auswahl von Schlüsselwerten aus einer Momentaufnahme. Der Standardwert lautet Standard (Default).
- Key Filter (Schlüsselfilter): Mit dem Filter können Sie auswählen, welche Schlüsselwerte von Azure App Configuration angefordert werden. Mit dem Wert „*“ werden alle Schlüsselwerte ausgewählt. Weitere Informationen finden Sie unter Abfragen von Schlüsselwerten.
- Bezeichnung: Gibt an, welche Bezeichnung beim Auswählen von Schlüsselwerten aus dem App Configuration-Speicher verwendet werden soll. Wenn keine Bezeichnung angegeben wird, werden Schlüsselwerte ohne eine Bezeichnung abgerufen. Folgende Zeichen sind nicht zulässig: , *.
- Name der Momentaufnahme: Gibt eine Momentaufnahme an, aus der Schlüsselwerte in Azure App Configuration abgerufen werden sollen.
- Trim Key Prefix (Schlüsselpräfix kürzen): Geben Sie Präfixe an, die von App Configuration-Schlüsseln abgeschnitten werden sollen, bevor diese als Variablen festgelegt werden. Mehrere Präfixe können durch einen Zeilenumbruch voneinander getrennt werden.
- Unterdrücken der Warnung für außer Kraft gesetzte Schlüssel: Der Standardwert ist deaktiviert. Gibt an, ob Warnungen angezeigt werden sollen, wenn vorhandene Schlüssel außer Kraft gesetzt werden. Aktivieren Sie diese Option, wenn erwartet wird, dass die von App Configuration heruntergeladenen Schlüssel überlappende Schlüssel mit den in Pipelinevariablen vorhandenen Schlüsseln aufweisen.
Verwenden von Schlüsselwerten in nachfolgenden Aufgaben
Die aus App Configuration abgerufenen Schlüsselwerte werden als Pipelinevariablen festgelegt, auf die als Umgebungsvariablen zugegriffen werden kann. Der Schlüssel einer solchen Umgebungsvariable ist der Schlüssel des Schlüssel-Wert-Paars, das aus App Configuration abgerufen wurde, nachdem das Präfix gekürzt wurde (sofern angegeben).
Wenn eine nachfolgende Aufgabe beispielsweise ein PowerShell-Skript ausführt, könnte sie einen Schlüsselwert mit dem Schlüssel „myBuildSetting“ wie folgt verwenden:
echo "$env:myBuildSetting"
Und der Wert wird an die Konsole ausgegeben.
Hinweis
Azure Key Vault-Verweise in der App-Konfiguration werden aufgelöst und als geheime Variablen festgelegt. In Azure-Pipelines werden geheime Variablen aus dem Protokoll maskiert. Sie werden nicht als Umgebungsvariablen an Aufgaben übermittelt und müssen stattdessen als Eingaben übermittelt werden.
Problembehandlung
Sollte ein unerwarteter Fehler auftreten, können Sie Debugprotokolle aktivieren, indem Sie die Pipelinevariable system.debug
auf true
festlegen.
Häufig gestellte Fragen
Wie stelle ich meine Konfiguration aus mehreren Schlüsseln und Bezeichnungen zusammen?
Es kann vorkommen, dass eine Konfiguration aus mehreren Bezeichnungen zusammengestellt werden muss, z. B. „default“ und „dev“. Sie können mehrere App Configuration-Aufgaben in einer Pipeline verwenden, um dieses Szenario umzusetzen. Schlüsselwerte, die von einer Aufgabe in einem späteren Schritt abgerufen werden, ersetzen alle Werte aus den vorherigen Schritten. Im obigen Beispiel können mit einer Aufgabe Schlüsselwerte mit der Bezeichnung „default“ ausgewählt werden, während mit einer zweiten Aufgabe Schlüsselwerte mit der Bezeichnung „dev“ ausgewählt werden. Die Schlüssel mit der Bezeichnung „dev“ überschreiben dieselben Schlüssel mit der Bezeichnung „default“.
Nächster Schritt
Eine vollständige Referenz zu den Parametern oder zur Verwendung dieser Pipelineaufgabe in YAML-Pipelines finden Sie im folgenden Dokument.
Wenn Sie erfahren möchten, wie Sie Schlüsselwerte aus einer Konfigurationsdatei in Ihren App-Konfigurationsspeicher importieren, fahren Sie mit dem folgenden Dokument fort.
Wenn Sie erfahren möchten, wie eine Momentaufnahme in einem App Configuration-Speicher erstellt wird, fahren Sie mit dem folgenden Dokument fort.