Créer des pipelines avec CodePipeline

Automatiser les déploiements sur AWS

Dunieski Otano

Amazon Web Services Solutions Architect

Pipelines multi-étapes

aperçu vidéo : pipeline multi-étapes avec artefacts, approbation et EventBridge

Automatiser les déploiements sur AWS

Anatomie d'un pipeline CodePipeline

  • Un pipeline est une suite d'étapes
  • Chaque étape contient des groupes d'actions avec des actions
  • Les actions produisent et consomment des artefacts (stockés dans S3)
  • L'étape suivante consomme les artefacts en entrée

anatomie de CodePipeline : étapes, actions, artefacts

Automatiser les déploiements sur AWS

Relier source, build et déploiement

  • Étape Source : CodeCommit détecte un push, produit un artefact source
  • Étape Build : CodeBuild reçoit la source, produit un artefact de build
  • Étape Déploiement : CodeDeploy reçoit l'artefact de build, déploie la cible
  • Le pipeline s'exécute de bout en bout à chaque push

pipeline en 3 étapes

Automatiser les déploiements sur AWS

Actions d'approbation manuelle

  • Approbation manuelle : point de contrôle humain entre étapes
  • Le pipeline se met en pause jusqu'à approbation ou rejet
  • Usage courant : contrôle entre préproduction et production
  • Statut : "Waiting for approval" ; notifications SNS prises en charge

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

Automatiser les déploiements sur AWS

Transitions d'étapes et contrôle du pipeline

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

 

contrôles de transition d'étape : retry et release dans CodePipeline

Automatiser les déploiements sur AWS

Notifications d'événements du pipeline

anatomie de CodePipeline : étapes, actions, artefacts

  • CodePipeline envoie des événements à Amazon EventBridge
  • Événements : pipeline démarré, étape réussie, étape en échec
  • Créez des règles EventBridge pour router les événements vers des cibles
    • Sujets SNS pour alertes e-mail/SMS
    • Fonctions Lambda pour l'automatisation sur mesure
  • Le détail inclut le nom du pipeline, de l'étape et la cause d'échec
Automatiser les déploiements sur AWS

Conception d'un pipeline multi-environnements

  • Un seul pipeline déploie vers plusieurs environnements
  • Construire une fois, puis promouvoir : Dev -> Staging -> Approval -> Prod
  • Le même artefact circule dans chaque environnement
  • Ce que vous avez testé est exactement ce que vous déployez

pipeline multi-environnements : dev, staging, approval, prod

Automatiser les déploiements sur AWS

Passons à la pratique !

Automatiser les déploiements sur AWS

Preparing Video For Download...