Créer des pipelines avec CodePipeline

Automatiser les déploiements sur AWS

Dunieski Otano

Amazon Web Services Solutions Architect

Pipelines multistades

aperçu vidéo : pipeline multistade avec artéfacts, approbation et EventBridge

Automatiser les déploiements sur AWS

Anatomie d'un pipeline CodePipeline

  • Un pipeline est une suite de stades
  • Chaque stade contient des groupes d'actions avec des actions
  • Les actions produisent et consomment des artéfacts (stockés dans S3)
  • Le stade suivant consomme les artéfacts en entrée

anatomie de CodePipeline : stades, actions, artéfacts

Automatiser les déploiements sur AWS

Relier source, build et déploiement

  • Stade source : CodeCommit détecte un push, produit l'artéfact source
  • Stade de compilation : CodeBuild reçoit la source, produit l'artéfact de build
  • Stade de déploiement : CodeDeploy reçoit l'artéfact de build et déploie la cible
  • Le pipeline s'exécute de bout en bout à chaque push

pipeline en 3 stades

Automatiser les déploiements sur AWS

Actions d'approbation manuelle

  • Approbation manuelle : point de contrôle humain entre les stades
  • Le pipeline se met en pause jusqu'à approbation ou refus
  • Usage courant : contrôle entre préprod et production
  • L'état affiche « En attente d'approbation » ; prend en charge les avis SNS

porte d'approbation manuelle : chef d'équipe examinant le pipeline

Automatiser les déploiements sur AWS

Transitions de stades et contrôle du pipeline

  • Activer/désactiver les transitions entre les stades
    • Désactiver pour mettre le pipeline en pause à un point donné
  • Relancer des actions en échec sans redémarrer le pipeline
  • Publier une modification manuellement pour pousser une révision précise

 

commandes de transition de stade : réessayer et publier

Automatiser les déploiements sur AWS

Avis d'événements du pipeline

anatomie de CodePipeline : stades, actions, artéfacts

  • CodePipeline envoie des événements à Amazon EventBridge
  • Événements : pipeline démarré, stade réussi, stade en échec
  • Créez des règles EventBridge pour aiguiller vers des cibles
    • Sujets SNS pour des avis par courriel/SMS
    • Fonctions Lambda pour l'automatisation sur mesure
  • Les détails incluent le nom du pipeline, du stade et la cause de l'échec
Automatiser les déploiements sur AWS

Conception d'un pipeline multi-environnements

  • Un seul pipeline déploie vers plusieurs environnements
  • Compiler une fois, puis promouvoir : Dev -> Préprod -> Approbation -> Prod
  • Le même artéfact circule dans chaque environnement
  • Ce qui a été testé est exactement ce qui est déployé

pipeline multi-environnements : dev, préprod, approbation, prod

Automatiser les déploiements sur AWS

Passons à la pratique !

Automatiser les déploiements sur AWS

Preparing Video For Download...