Partager via


Recommandations pour l’intégration continue

S’applique à cette recommandation de liste de contrôle Excellence opérationnelle Power Platform Well-Architected :

OE:04 Optimisez les processus de développement de logiciels et d’assurance qualité en suivant des pratiques de développement et de test éprouvées par l’industrie. Pour une désignation claire des rôles, standardisez les pratiques entre les composants tels que les outils, le contrôle de code source, les modèles de conception d’applications, la documentation et les guides de style.

L’adoption de l’intégration continue/livraison continue (CI/CD) peut accroître la complexité du développement pour les développeurs citoyens. Cependant, un processus de développement évolutif et automatisé, capable d’incorporer rapidement de nouvelles fonctionnalités et de corriger des bogues, est essentiel pour un processus de développement de fusion fiable et durable.

En tant que développeur, vous pouvez apporter de petites modifications au code, transférer ces modifications vers un référentiel de code et obtenir un retour presque instantané sur la qualité, la couverture des tests et les bogues introduits. Ce processus vous permet de travailler plus rapidement, avec plus de confiance et moins de risques. L’intégration continue est une pratique dans laquelle les systèmes de contrôle de source et les pipelines de déploiement sont intégrés pour fournir des mécanismes automatisés de création, de test et de rétroaction aux équipes de développement de logiciels.

Stratégies de conception clés

L’intégration continue est une pratique de développement logiciel que les développeurs utilisent pour intégrer les mises à jour logicielles dans un système de contrôle de code source à une cadence régulière.

Le processus d’intégration continue démarre lorsqu’un ingénieur génère une demande d’extraction pour signaler au système CI que les modifications de code sont prêtes à être intégrées. Idéalement, le processus d’intégration valide le code par rapport à plusieurs références et tests. Il fait ensuite un retour d’informations à l’ingénieur à l’origine de la demande sur le statut de ces tests.

Si les vérifications et les tests de base se déroulent correctement, le processus d’intégration produit et met en scène les actifs qui déploient le logiciel mis à jour. Ces actifs incluent du code compilé et des images de conteneurs.

L’intégration continue vous permet de fournir plus rapidement des logiciels de haute qualité via les actions suivantes :

  • en exécutant des tests automatisés sur le code pour permettre une détection précoce des changements cassants ;
  • en exécutant une analyse de code pour garantir les normes, la qualité et la configuration du code ;
  • en exécutant des contrôles de conformité et de sécurité pour vous assurer que le logiciel est dépourvu de toute vulnérabilité connue ;
  • en exécutant des tests d’acceptation ou fonctionnels pour vous assurer que le logiciel fonctionne comme prévu ;
  • en fournissant des commentaires rapides sur les problèmes détectés ;
  • en produisant, le cas échéant, des actifs ou des packages déployables (mise à jour du code incluse).

Environnements

L’installation et la configuration de l’environnement sont essentielles à un CI/CD durable et fiable. Des environnements Power Platform peuvent être configurés pour isoler les différentes étapes de développement, de test et de déploiement de la solution. Le processus CI/CD fait passer les changements à travers ces étapes. Établir une stratégie environnementale avec des principes directeurs pour les environnements de développement.

Pipelines d’intégration continue

Pour réaliser une intégration continue, utilisez des outils pour gérer, intégrer et automatiser le processus. Un pipeline d’intégration continue offre :

  • Une plateforme pour exécuter des tests automatisés
  • Analyses de conformité
  • Signalement
  • Tous les autres composants qui composent le processus d’intégration continue

Dans la plupart des cas, le logiciel du pipeline est attaché au contrôle de source afin que lorsque des demandes d’extraction sont créées ou que des logiciels sont fusionnés dans une branche spécifique, le pipeline d’intégration continue s’exécute. L’intégration du contrôle de source offre également la possibilité de donner des commentaires CI directement sur les demandes d’extraction.

De nombreuses solutions, comme Azure Pipelines ou GitHub Actions, offrent les capacités de pipelines d’intégration continue. En savoir plus dans Créer CI/CD avec Azure pour Microsoft Power Platform.

Intégration du contrôle de code source

L’intégration de votre pipeline d’intégration continue avec votre système de contrôle de code source est essentielle pour permettre des contributions de code rapides et en libre-service.

Le pipeline CI s’exécute sur une demande d’extraction récemment créée. Le pipeline comprend tous les tests, évaluations de sécurité et autres contrôles. Les résultats des tests CI s’affichent directement dans la demande d’extraction pour permettre des commentaires sur la qualité quasiment en temps réel.

Une autre pratique populaire consiste à créer de petits rapports ou badges qui peuvent être présentés dans le cadre du contrôle de code source pour rendre visibles les états de construction actuels.

L’image suivante montre l’intégration entre GitHub et un pipeline Azure DevOps. Dans cet exemple, la création d’une pull request déclenche le pipeline. Le statut du pipeline s’affiche dans la demande d’extraction.

Capture d’écran d’un badge du statut Azure DevOps dans un référentiel GitHub.

Intégration du test

Un élément clé de l’intégration continue est la création et le test continus du code à mesure que les développeurs apportent leur contribution au code. Tester les demandes d’extraction au fur et à mesure de leur création donne des commentaires immédiats indiquant que la validation n’a introduit aucune modification majeure. L’avantage ? Les tests du pipeline d’intégration continue peuvent être les mêmes que ceux exécutés lors du développement piloté par les tests.

Exemple de diagramme d’intégration continue.

Contrôles de qualité pour le code personnalisé

Lorsque vous incluez du code personnalisé dans vos solutions, ajoutez des contrôles de qualité du code à un pipeline de validation pour garantir que du code personnalisé propre est validé dans le contrôle de code source. Quels que soient le langage de codage et les modèles de syntaxe que vous utilisez, il existe plusieurs options pour maintenir la qualité du code et accroître la sécurité et la gouvernance.

Échec des tests

Les tests ayant connu un échec devraient bloquer temporairement un déploiement et conduire à une analyse plus approfondie de ce qui s’est passé. Les tests ayant échoué devraient également conduire soit à un affinement des tests, soit à une amélioration du changement qui a provoqué l’échec des tests.

Facilitation de Power Platform

Les pipelines dans Power Platform visent à démocratiser la gestion du cycle de vie des applications (ALM) pour les clients Power Platform et Dynamics 365 en intégrant l’automatisation ALM et les fonctionnalités d’intégration continue et de livraison continue (CI/CD) dans le service.

Microsoft Power Platform Build Tools pour Azure DevOps peut être utilisé pour automatiser les tâches courantes de création et de déploiement associées aux applications créées sur Power Platform.

Les actions GitHub permettent aux développeurs de créer des flux de travail automatisés tout au long du cycle de vie du développement logiciel. Power Platform Avec les actions GitHub pour Microsoft Power Platform, vous pouvez créer des flux de travail dans votre référentiel afin de créer, tester, empaqueter, publier et déployer des applications, effectuer l’automatisation et gérer les bots et autres composants basés sur Microsoft Power Platform.

ALM Accelerator est un outil open source composé d’un ensemble d’applications, de scripts et de pipelines conçus pour automatiser le processus d’intégration et de livraison continue.

Automatiser les tests avec les pipelines Azure avec YAML.

L’API web du vérificateur Power Apps offre un mécanisme permettant d’exécuter les vérifications d’analyse statique par rapport aux personnalisations et aux extensions vers la plateforme Microsoft Dataverse.

Microsoft Power Platform CLI (PAC CLI) est un outil de ligne de commande qui prend en charge l’importation et l’exportation de Power Platform solutions, ainsi que l’empaquetage et le déballage à partir de Power Platform fichiers sources de solutions. PAC CLI est disponible en tant qu’ outil de ligne de commande autonome ou en tant qu’ extension pour Visual Studio Code.

Étapes suivantes