Freigeben über


Empfehlungen für die kontinuierliche Integration

Hierfür gilt die Empfehlung der Power Platform Well-Architected Operational Excellence-Checkliste:

OE:04 Optimieren Sie die Softwareentwicklungs- und Qualitätssicherungsprozesse, indem Sie branchenerprobte Verfahren für Entwicklung und Tests befolgen. Um eine klare Rollenzuweisung sicherzustellen, standardisieren Sie Vorgehensweisen für alle Komponenten, wie etwa Tools, Quellcodeverwaltung, Anwendungsentwurfsmuster, Dokumentation und Stilhandbücher.

Die Einführung kontinuierlicher Integration/kontinuierlicher Bereitstellung (CI/CD) kann die Entwicklungskomplexität für Citizen Developer erhöhen. Für einen zuverlässigen, nachhaltigen Fusion-Entwicklungsprozess ist jedoch ein skalierbarer und automatisierter Entwicklungsprozess von entscheidender Bedeutung, der neue Funktionen und Fehlerkorrekturen schnell integrieren kann.

Als Entwickler können Sie kleine Codeänderungen vornehmen, diese Änderungen in ein Code-Repository übertragen und nahezu sofort Feedback zur Qualität, Test-Abdeckung und aufgetretenen Fehlern erhalten. Durch diesen Prozess können Sie schneller, sicherer und mit weniger Risiko arbeiten. Kontinuierliche Integration ist ein Verfahren, bei dem Quellcodeverwaltungssysteme und Bereitstellungspipelines integriert werden, um Softwareentwicklungsteams automatisierte Build-, Test- und Feedbackmechanismen bereitzustellen.

Wichtige Designstrategien

Die kontinuierliche Integration ist eine Softwareentwicklungspraxis, die Entwickler nutzen, um Softwareaktualisierungen in regelmäßigen Abständen in ein Quellcodeverwaltungssystem zu integrieren.

Der kontinuierliche Integrationsprozess beginnt, wenn ein Ingenieur eine GitHub-Pullanforderung erstellt, um dem CI-System zu signalisieren, dass Codeänderungen zur Integration bereit sind. Im Idealfall validiert der Integrationsprozess den Code anhand mehrerer Referenzwerte und Tests. Anschließend erhält der anfordernde Ingenieur Feedback zum Status dieser Tests.

Wenn die Überprüfungen der Referenzwerte und die Tests erfolgreich verlaufen, werden im Rahmen des Integrationsprozesses Assets erstellt und bereitgestellt, die die aktualisierte Software bereitstellen. Zu diesen Assets gehören kompilierter Code und Containerimages.

Mithilfe der folgenden Aktionen können Sie mithilfe der kontinuierlichen Integration qualitativ hochwertige Software schneller bereitstellen:

  • Führen Sie automatisierte Tests des Codes durch, um Breaking Changes frühzeitig zu erkennen.
  • Führen Sie eine Codeanalyse durch, um Codestandards, -qualität und -konfiguration sicherzustellen.
  • Führen Sie Compliance- und Sicherheitsprüfungen durch, um sicherzustellen, dass die Software keine bekannten Schwachstellen aufweist.
  • Führen Sie Abnahme- oder Funktionstests durch, um sicherzustellen, dass die Software wie erwartet funktioniert.
  • Geben Sie schnelles Feedback zu erkannten Problemen.
  • Erstellen Sie gegebenenfalls bereitstellbare Assets oder Pakete, die den aktualisierten Code enthalten.

Umgebungen

Die Einrichtung und Konfiguration der Umgebung sind für eine nachhaltige und zuverlässige CI/CD von entscheidender Bedeutung. Power Platform-Umgebungen können eingerichtet werden, um verschiedene Phasen der Lösungsentwicklung, des Tests und der Bereitstellung zu isolieren. Der CI/CD-Prozess leitet Änderungen durch diese Phasen hindurch. Erstellen Sie eine Umgebungsstrategie mit Leitlinien für Entwicklerumgebungen.

Pipelines der kontinuierlichen Integration

Um eine kontinuierliche Integration zu erreichen, verwenden Sie Tools zum Verwalten, Integrieren und Automatisieren des Prozesses. Eine Pipeline der kontinuierlichen Integration bietet Folgendes:

  • Eine Plattform zum Ausführen automatisierter Tests
  • Compliance-Scans
  • Berichterstellung
  • Alle anderen Komponenten, die den kontinuierlichen Integrationsprozess ausmachen

In den meisten Fällen ist die Pipeline-Software an die Quellcodeverwaltung angehängt, sodass beim Erstellen von Pull-Anfragen oder beim Zusammenführen von Software in einen bestimmten Zweig die kontinuierliche Integrationspipeline ausgeführt wird. Die Integration der Quellcodeverwaltung bietet außerdem die Möglichkeit, CI-Feedback direkt zu Pullanforderungen zu geben.

Viele Lösungen, wie Azure Pipelines oder GitHub Actions, bieten die Funktionen kontinuierlicher Integrationspipelines. Weitere Informationen finden Sie unter CI/CD mit Azure erstellen für Microsoft Power Platform.

Quellcodeverwaltungsintegration

Die Integration Ihrer kontinuierlichen Integrationspipeline in Ihr Quellcodeverwaltungssystem ist der Schlüssel dafür, schnelle Self-Service-Codebeiträge zu ermöglichen.

Die CI-Pipeline wird in einer neu erstellten Pullanforderung ausgeführt. Die Pipeline umfasst sämtliche Tests, Sicherheitsbewertungen und andere Prüfungen. CI-Testergebnisse werden direkt in der Pullanforderung angezeigt, um nahezu Echtzeit-Feedback zur Qualität zu ermöglichen.

Eine weitere beliebte Vorgehensweise ist das Erstellen kleiner Berichte oder Badges, die in der Quellcodeverwaltung angezeigt werden können, um den aktuellen Build-Status sichtbar zu machen.

Das folgende Bild zeigt die Integration zwischen GitHub und einer Azure DevOps-Pipeline. In diesem Beispiel wird die Pipeline durch die Erstellung einer Pull-Anfrage ausgelöst. Der Pipelinestatus wird in der Pullanforderung angezeigt.

Screenshot eines Azure DevOps-Status-Badges in einem GitHub-Repository.

Testintegration

Ein Schlüsselelement der kontinuierlichen Integration ist das kontinuierliche Erstellen und Testen von Code, während Entwickler Codebeiträge leisten. Durch das Testen von Pullanforderungen während ihrer Erstellung erhalten Sie unmittelbares Feedback, dass das Commit keine Breaking Changes mit sich gebracht hat. Der Vorteil besteht darin, dass die Tests in der kontinuierlichen Integrationspipeline dieselben Tests sein können, die während der testgesteuerten Entwicklung ausgeführt werden.

Beispieldiagramm der kontinuierlichen Integration.

Qualitätsprüfungen für benutzerdefinierten Code

Wenn Sie benutzerdefinierten Code in Ihre Lösungen einbinden, fügen Sie einer Validierungspipeline Codequalitätsprüfungen hinzu, um sicherzustellen, dass fehlerfreier benutzerdefinierter Code in die Quellcodeverwaltung übernommen wird. Unabhängig von der von Ihnen verwendeten Programmiersprache und den Syntaxmustern gibt es mehrere Möglichkeiten, die Codequalität aufrechtzuerhalten und die Sicherheit und Governance zu verbessern.

Fehlgeschlagene Tests

Fehlgeschlagene Tests sollten eine Bereitstellung vorübergehend blockieren und zu einer gründlicheren Analyse des Geschehens führen. Fehlgeschlagene Tests sollten außerdem entweder zu einer Verfeinerung der Tests oder zu einer Verbesserung der Änderung führen, die zum Fehlschlagen der Tests geführt hat.

Umsetzung in Power Platform

Pipelines zielen darauf ab, das Application Lifecycle Management (ALM) für Power Platform und Dynamics 365-Kunden zu demokratisieren, indem ALM-Automatisierung sowie Funktionen für kontinuierliche Integration und kontinuierliche Bereitstellung (CI/CD) in den Dienst integriert werden. Power Platform

Microsoft Power Platform Mit Build Tools für Azure DevOps können allgemeine Build- und Bereitstellungsaufgaben im Zusammenhang mit auf Power Platform erstellten Apps automatisiert werden.

GitHub Actions ermöglicht es Entwicklern, automatisierte Workflows für den Softwareentwicklungslebenszyklus zu erstellen. Power Platform Mit GitHub-Aktionen für Microsoft Power Platform können Sie Workflows in Ihrem Repository erstellen, um Apps zu erstellen, zu testen, zu paketieren, freizugeben und bereitzustellen, Automatisierungen durchzuführen und Bots und andere Komponenten zu verwalten, die auf Microsoft Power Platform erstellt wurden.

ALM Accelerator ist ein Open-Source-Tool, das aus einer Reihe von Anwendungen, Skripten und Pipelines besteht, die zur Automatisierung des kontinuierlichen Integrations-/Lieferprozesses entwickelt wurden.

Automatisieren Sie Tests mit Azure Pipelines.

Power Apps Die Checker-Web-API bietet einen Mechanismus zum Ausführen statischer Analyseprüfungen für Anpassungen und Erweiterungen der Microsoft Dataverse Plattform.

Microsoft Power Platform CLI (PAC CLI) ist ein Befehlszeilentool, das den Import und Export von Power Platform Lösungen sowie das Packen und Entpacken aus Power Platform Lösungsquelldateien unterstützt. PAC CLI ist als eigenständiges Befehlszeilentool oder als Erweiterung für Visual Studio Code verfügbar.

Nächste Schritte,