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 augmenter 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 (CI) désigne une pratique dans laquelle les systèmes de contrôle de code 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 retour d’informations 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.
  • Des analyses de la conformité.
  • La création de rapports.
  • Tous les autres composants qui constituent le processus d’intégration continue.

Dans la plupart des cas, le logiciel de pipeline est associé au contrôle de source, de sorte que lorsque des demandes d’extraction sont créées ou que le logiciel est fusionné dans une branche spécifique, le pipeline d’intégration continue est exécuté. 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.

Pour en savoir plus, consultez 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 requête d’extraction déclenche un pipeline Azure DevOps. 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.

Actions GitHub pour Power Platform permet aux développeurs de créer des workflows de cycle de vie de développement logiciel automatisés. 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, entre autres, l’importation et l’exportation des solutions Power Platform, l’emballage et le déballage depuis les fichiers source des solutions Power Platform. PAC CLI est disponible sous forme d’ outil de ligne de commande autonome ou comme d’extension pour Visual Studio Code.

Voir aussi

Liste de contrôle de l’excellence opérationnelle

Référez-vous à l’ensemble complet des recommandations.