Freigeben über


ALM Accelerator-Pipelines konfigurieren

Pipelines sind die Motoren des ALM Accelerator. Sie automatisieren den ALM-Prozess für Power Platform. Sie werden mit Azure Pipelines, einem Dienst von Azure DevOps, erstellt und in einem Azure DevOps Projekt gespeichert.

Zur Automatisierung des ALM-Prozesses werden vier Hauptpipelines verwendet:

  • Import
  • Export
  • Delete
  • Erstellen/Bereitstellen

Die Pipelines sind für die Verwendung mit der ALM Accelerator Canvas-App konzipiert. Sie müssen die App nicht verwenden, wir empfehlen es jedoch. Die App bietet eine einfache Schnittstelle zum Aufrufen der Pipelines und eine Möglichkeit, sie zu konfigurieren, ohne die zugrunde liegenden Parameter verstehen zu müssen.

Gängige ALM Accelerator-Pipelineszenarien

Die ALM Accelerator-Pipelines und -Apps verfügen über Standardkonfigurationen, mit denen Sie schnell in ALM für die Power Platform einsteigen können. Die Pipelines können viele verschiedene ALM-Szenarien abdecken, um den Anforderungen Ihres Unternehmens gerecht zu werden. In den nächsten Abschnitten werden einige gängige Szenarien und wie sie durch die Pipelinekonfiguration, Bereitstellungsprofile und die Schritte in der ALM Accelerator-App oder direkt über die Pipeline abgedeckt werden.

Die Pipelines in einem Projekt und den Quellcodes in einem anderen Projekt installieren

Sie können in der ALM Accelerator App und in Bereitstellungsprofilen ein Pipelineprojekt und ein Quellprojekt angeben. Eine Option im Setup-Assistenten erlaubt Ihnen, ein separates Pipelineprojekt und Repository anzugeben. Diese Optionen sind nützlich, wenn Sie den Speicher von Lösungen basierend auf Benutzenden, Unternehmensstruktur oder anderen Faktoren segmentieren möchten. In den meisten Fällen werden die Pipeline-YAML-Dateien im Pipelineprojekt gespeichert und die Export-, Import- und Löschpipelines werden im Projekt erstellt, in dem die Lösung quellcodegesteuert ist.

Die Pipelines ohne den ALM Accelerator ausführen

Die ALM Accelerator-Canvas-App bietet eine einfache Schaltflächenebene zum Ausführen der Pipelines. Sie benötigen die App jedoch nicht, um sie auszuführen. Wenn Sie die Pipelines unabhängig von der App nutzen möchten, führen Sie sie direkt über die Befehlszeile aus. Sie können auch Ihre eigene App erstellen. Verwendenden Sie einen benutzerdefinierten Connector für die Azure DevOps API, die in der ALM Accelerator Lösung enthalten ist, um die Pipelines mithilfe von Power Automate oder anderen Power Platform Technologien aufzurufen.

Wenn Sie die Pipelines unabhängig verwenden müssen, ist der Schlüssel in jedem Fall, die Parameter zu verstehen, die an sie weitergegeben werden.

Pipelineparameter

Parameter für „Import-unmanaged-to-dev-environment“: Verwenden Sie die Importlösungspipeline, um eine nicht verwaltete Lösung aus der Quellcodeverwaltung in eine Entwicklung Umgebung zu importieren.

Die folgende Tabelle beschreibt die Parameter der Importieren-Pipeline.

Parameter Beispiel Beschreibung
Project Mein Azure DevOps Projekt Der Name des Projekts, in das die Lösung importiert werden soll
Repo Mein Azure DevOps Repository Der Name des Repositorys, aus dem die Lösung importiert werden soll
SolutionName MySolutionName Der Name der zu importierenden Lösung
E‑Mail me@example.com Die E-Mail-Adresse des Benutzers, der die Lösung importiert
Benutzername Nachname, Vorname Der Benutzername des Benutzers, der die Lösung importiert
Bankfiliale main Die Verzweigung, aus der die Lösung erstellt und importiert werden soll
ServiceConnectionName MyServiceConnection Der Name der Dienstverbindung, der für den Import verwendet werden soll
ServiceConnectionUrl example.crm.dynamics.com Die URL der Erstellerumgebung für den Import
EnvironmentName MyDevEnvironment Wird verwendet, um die Bereitstellungseinstellungen in der Bereitstellungspipeline zu finden; gibt einen Ordnernamen unter dem Konfigurationsverzeichnis in der Lösungsquelle zurück

Parameter zum Löschen nicht verwalteter Lösungen und Komponenten: Verwenden Sie die Pipeline zum Löschen von Lösungen, um eine nicht verwaltete Lösung und alle ihre Komponenten aus einer Entwicklung Umgebung zu löschen.

Die folgende Tabelle beschreibt die Parameter der Löschen-Pipeline.

Parameter Beispiel Beschreibung
SolutionName MySolutionName Der Name der zu löschenden Lösung
ServiceConnectionName MyServiceConnection Der Name der Dienstverbindung, der für die zu löschende Lösung verwendet werden soll
ServiceConnectionUrl example.crm.dynamics.com Die URL der Erstellerumgebung für die zu löschende Lösung

Parameter für „Export-solution-to-git“: Verwenden Sie die Export-Lösungspipeline, um die Lösung in ein Git-Repository zu exportieren.

Die folgende Tabelle beschreibt die Parameter der Exportieren-Pipeline.

Parameter Beispiel Beschreibung
Project Mein Azure DevOps Projekt Der Name des Projekts, in das der Lösungsquellcode exportiert werden soll
Repo Mein Azure DevOps Repository Der Name des Repositorys, in das der Lösungsquellcode exportiert werden soll
SolutionName MySolutionName Der Name der zu exportierenden Lösung
E‑Mail me@example.com Die E-Mail-Adresse des Benutzers, der die Lösung exportiert
Benutzername Nachname, Vorname Der Benutzername des Benutzers, der die Lösung exportiert
CommitMessage Korrekturen Nr. 1234-Fehler Eine Beschreibung der Änderungen, die beim Commit im Repository gespeichert werden sollen
Bankfiliale main Entweder die Quellverzweigung, aus der eine Verzweigung erstellt werden soll, oder die vorhandene Verzweigung zum Committen
BranchToCreate Funktion-1234 Der eindeutige Name einer neuen Verzweigung, die, falls erforderlich, basierend auf dem Branch-Parameter erstellt werden soll
ServiceConnectionName MyServiceConnection Der Name der Dienstverbindung, der für den Lösungsexport verwendet werden soll
ServiceConnectionUrl example.crm.dynamics.com Die URL der Erstellerumgebung, in der die zu exportierende nicht verwaltete Lösung vorhanden ist
Daten [JSON für Bereitstellungseinstellungen] Eine JSON-Zeichenfolge, die die Bereitstellungseinstellungen enthält, die für den Export und die Konfiguration von Bereitstellungspipelines verwendet werden sollen
PortalSiteName MyPortalSite Der Name der Power Pages-Website, die der zu exportierenden Lösung zugeordnet ist

Versionsverwaltung von Lösungen anpassen, wenn Sie ALM Accelerator-Pipelines für den Export und die Bereitstellung verwenden

Standardmäßig werden exportierte und bereitgestellte Lösungen mit dem in der YAML-Datei der Bereitstellungspipeline angegebenen Namen versioniert. Mit ALM Accelerator-Pipelines können Sie jedoch die Versionsverwaltung einer Lösung anpassen, wenn Sie diese exportieren oder bereitstellen. In den folgenden Abschnitten werden die Methoden beschrieben, die Sie dazu verwenden können.

Exportierte Versionsverwaltung

Verwenden Sie die von den Pipelines exportierte Versionsnummer in allen bereitgestellten Umgebungen als Versionsnummer. Erstellen Sie in Ihrer Exportpipeline oder eine globale Variable in der Variablenbibliothek für den ALM Accelerator eine Variable namens UseSolutionVersionFromDataverse. Geben Sie ihr den Wert True. Die Variable stellt sicher, dass die in Ihre Lösung exportierte Versionsnummer in nachgelagerten Umgebungen erhalten bleibt und in Ihrer Quellcodeverwaltung widergespiegelt wird, wenn die Lösungsquelle committet wird.

Benutzerdefinierte Versionsverwaltungslogik

Verwenden Sie ALM Accelerator-Hooks, um die Version der Lösung festzulegen. Fügen Sie Ihre benutzerdefinierte Logik die build-solution-pack-pre-hook.yml Vorlage zum Bearbeiten der Solution.xml direkt hinzu oder indem Sie Tools wie pac-Lösungsversion verwenden.

Benutzerdefinierte „Bring your own Template“-Versionsverwaltung

Die Möglichkeit, eigene Vorlagen zum Generieren von Bereitstellungspipelines zu verwenden, bietet Flexibilität für die Versionsverwaltung während des ersten Exports einer Lösung. Erstellen Sie als Beispiel eine Kopie einer build-deploy-validation/test/prod-SampleSolution.yml und ändern Sie den Buildnamen vom Standard in eine Versionierungsstrategie, die auf dem Konfigurieren der Ausführen- oder Buildnummern basiert:

build:
  - name: 1.0.$(Date:yyyyMMdd)$(Rev:.r)
    ...

Nachdem Sie Ihre Vorlagen eingerichtet haben, aktualisieren Sie die Bereitstellungsschritte in Ihrem Bereitstellungsprofil, um darauf zu verweisen.

Die Anzahl der Bereitstellungsschritte in Ihren Pipelines und die Namen der Zielumgebungen anpassen

Ähnlich wie benutzerdefinierte Versionsverwaltung mit Vorlagen bietet dies die Möglichkeit, eigene Vorlagen zum Generieren von Bereitstellungspipelines zu verwenden, was während des anfänglichen Exports einer Lösung mehr Flexibilität bietet. Geben Sie das Projekt, in dem Ihre Vorlagen vorhanden sind, und den Pfad zu der Vorlage an, die für die Erstellung der Bereitstellungspipeline verwendet werden soll. Die Einstellungen für das Projekt und den Pfad finden Sie im Bereitstellungsprofil und der Bereitstellungsschrittetabelle in der ALM Accelerator Verwaltungs-App.

Der Pfad zur Vorlage ist relativ zum Stamm des Speicherorts der Exportpipeline. Der Pfad zu den standardmäßigen Bereitstellungspipelinevorlagen für die Prüfungsumgebung lautet beispielsweise /Pipelines/build-deploy-validation-SampleSolution.yml. Um eine Vorlage im selben Projekt wie die Exportpipeline zu verwenden, geben Sie den Pfad als /Pipelines/build-deploy-validation-MyCustomTemplate.yml an.

Die Folgende Tabelle beschreibt die Platzhalter in den Vorlagen für lösungsspezifische Werte, die beim Generieren der Bereitstellungspipeline ersetzt werden.

Platzhalter Beschreibung
SampleSolutionName Der Name der bereitzustellenden Lösung
RepositoryContainingTheBuildTemplates Das Repository, das die Build-Vorlagen enthält, die für die Bereitstellungspipeline verwendet werden sollen
BranchContainingTheBuildTemplates Die Verzweigung, die die Build-Vorlagen enthält, die für die Bereitstellungspipeline verwendet werden sollen
alm-accelerator-variable-group Die globale Variablengruppe, die die Buildvorlagen für die Bereitstellungspipeline verwenden

Wir empfehlen Ihnen, eine build-deploy-validation/test/prod-SampleSolution.yml Pipelinevorlage zu kopieren, um mit Ihrer eigenen benutzerdefinierten Vorlage zu beginnen.

Führen Sie benutzerdefinierte Schritte in Ihren Pipelines aus, ohne die Standardvorlagen zu ändern

Die ALM Accelerator Pipelinevorlagen haben verschiedene Erweiterungspunkte oder Hooks, mit denen Sie die Pipeline anpassen und gleichzeitig Störungen durch Zusammenführungskonflikte in Upgrade-Szenarien minimieren können. Erfahren Sie mehr über ALM Accelerator-Hooks.

Bestimmte Aktionen in den Pipelines ein- bzw. ausschalten

Die Pipelines verwenden Variablen, um zu bestimmen, ob eine Aufgabe ausgeführt werden soll oder nicht oder welche von mehreren Möglichkeiten ausgeführt werden soll. Die folgende Tabelle beschreibt die Variablen, die Sie für eine einzelne Pipeline oder über die „alm-accelerator-variable-group“ für alle Pipelines festlegen können.

Anmerkung

Um diese Variablen für bestimmte Lösungen beim Export festzulegen, erstellen Sie eine bestimmte Exportpipeline basierend auf der Exportpipelinevorlage. Nennen Sie sie export-solution-to-git-{SolutionName}. Die ALM Accelerator-App verwendet diese Exportpipeline für die Lösung und nicht die universelle „export-solution-to-git pipeline“.

Variable Default Pipelines Beschreibung
GenerateDeploymentSettings true Export Bei „false“ werden die Bereitstellungseinstellungen nicht generiert und in der Quellcodeverwaltung gespeichert.
UseDeploymentSettingsPlaceholders true Export Bei „false“ verwenden die Bereitstellungseinstellungen keine Platzhalter, und alle Werte für die Bereitstellungseinstellungen werden in deploymentSettings.json- und customDeploymentSettings.json-Dateien gespeichert.
WICHTIG: In Ihren Bereitstellungseinstellungen können vertrauliche Informationen im Klartext gespeichert sein. Alle Benutzenden mit Zugriff auf die Quellcodeverwaltung können diese Werte lesen. Seien Sie vorsichtig, wenn Sie einen Wert für diese Variable festlegen.
DisableFlows False Export Bei „true“ werden alle Flows im entpackten Quellcode vor dem Committen deaktiviert.
UseSolutionVersionFromDataverse False Export Bei „true“ bleibt die in Ihre Lösung exportierte Versionsnummer in nachgelagerten Umgebungen erhalten. Die Versionsnummer wird in Ihrer Quellcodeverwaltung angezeigt, wenn die Lösungsquelle committet wird.
DoNotExportCurrentEnvironmentVariableValues False Export Bei „true“ werden die Variablenwerte für die aktuelle Umgebung aus dem Quellcode für die entpackte Lösung entfernt.
PublishCustomizationsBeforeExport true Export Bei „false“ werden die Anpassungen nicht veröffentlicht, bevor die Lösung exportiert wird. Diese Option ist nützlich, wenn Sie in einer gemeinsam genutzten Umgebung arbeiten und nur die neuesten veröffentlichten Anpassungen exportieren möchten.
CacheEnabled true Exportieren/Bereitstellen Bei „false“ ist das Zwischenspeichern von PowerShell-Modulen deaktiviert. Diese Option ist nützlich, wenn Ihre Pipelines nach der Ausführung der Pipelines eine Bereinigung des Verzeichnisses des Caches durchführen.
ProcessCanvasApps true Exportieren/Bereitstellen Im Falle von „false“ werden die Canvas-Apps nicht beim Export entpackt oder beim Build verpackt.
HINWEIS: Die Canvas-Funktion zum Entpacken und Packen befindet sich derzeit in Vorschauversion. Der Einsatz in der Produktionsumgebung wird derzeit nicht empfohlen. Allerdings können Sie den Canvas-Quellcode nicht in der Quellcodeverwaltung anzeigen, es sei denn, Sie setzen diese Variable auf „True“.
DisableSolutionChecker False Bereitstellen Bei „true“ wird die Lösungsüberprüfung nicht bei jedem Build ausgeführt, der über eine Pull-Anforderung initiiert wird.
SkipSolutionImport False Bereitstellen Wenn „true“, wird der Lösungsimportschritt während der Bereitstellung übersprungen. Andere Aktivitäten wie Flow-Aktivierungen und Freigaben können jedoch weiterhin durchgeführt werden.

Nächste Schritte,