En tant que développeur, vous souhaitez intégrer continuellement votre code à partir d’un référentiel GitHub ou d’un référentiel GitLab Enterprise. Chaque fois que vos développeurs mettent à jour leur code et valident les modifications apportées au référentiel, Code Stream peut détecter ces modifications et déclencher le pipeline.

Le workflow de l'archivage d'un code vers une application déployée sur un cluster Kubernetes peut utiliser GitHub, Code Stream, Docker Hub, le déclencheur pour Git et Kubernetes.

Pour que Code Stream déclenche votre pipeline dès que le code est modifié, vous utilisez le déclencheur Git. Code Stream déclenche ensuite votre pipeline à chaque fois que vous validez les modifications apportées à votre code.

L'espace de travail de pipeline Code Stream prend en charge Docker et Kubernetes pour les tâches d'intégration continue et les tâches personnalisées.

Pour plus d'informations sur la configuration de l'espace de travail, consultez Configuration de l'espace de travail de pipeline.

Le diagramme de flux suivant montre le workflow que vous pouvez prendre si vous utilisez un modèle de pipeline intelligent pour créer votre pipeline ou si vous créez le pipeline manuellement.

Figure 1. Workflow qui utilise un modèle de pipeline intelligent ou crée un pipeline manuellement
Un workflow vous aide à décider de votre chemin dans le processus qui intègre continuellement votre code à l'aide d'un pipeline d'intégration continue.

L'exemple suivant utilise un espace de travail Docker.

Pour créer votre code, vous utilisez un hôte Docker. Vous utilisez JUnit et JaCoCo comme outils de structure de test, qui exécutent des tests unitaires et la couverture du code, et vous les incluez dans votre pipeline.

Ensuite, vous pouvez utiliser le modèle de pipeline intelligent d'intégration continue qui crée un pipeline d'intégration continue qui crée, teste et déploie votre code sur le cluster Kubernetes de votre équipe de projet sur AWS. Pour stocker les artefacts de dépendance de code pour votre tâche d’intégration continue, ce qui permet de gagner du temps dans les builds de code, vous pouvez utiliser un cache.

Dans la tâche de pipeline qui crée et teste votre code, vous pouvez inclure plusieurs étapes d'intégration continue. Ces étapes peuvent résider dans le même répertoire de travail que celui dans lequel Code Stream clone le code source lorsque le pipeline se déclenche.

Pour déployer votre code sur le cluster Kubernetes, vous pouvez utiliser une tâche Kubernetes dans votre pipeline. Vous devez ensuite activer et exécuter votre pipeline. Ensuite, apportez une modification à votre code dans le référentiel et observez le déclencheur de pipeline. Pour surveiller et générer des rapports sur vos tendances de pipeline après l'exécution de ce dernier, utilisez les tableaux de bord.

Dans l'exemple suivant, pour créer un pipeline d'intégration continue qui intègre continuellement votre code à votre pipeline, vous utilisez le modèle de pipeline intelligent d'intégration continue. Cet exemple utilise un espace de travail Docker.

Vous pouvez éventuellement créer manuellement le pipeline, et y ajouter des étapes et des tâches. Pour plus d'informations sur la planification d'une build d'intégration continue et la création manuelle du pipeline, reportez-vous à la section Planification d'une build native CICD dans Code Stream avant d'ajouter des tâches manuellement.

Conditions préalables

Procédure

  1. Respectez les conditions préalables.
  2. Pour créer le pipeline à l'aide du modèle de pipeline intelligent, ouvrez le modèle de pipeline intelligent d'intégration continue et remplissez le formulaire.
    1. Cliquez sur Pipelines > Nouveau pipeline > Modèle intelligent > Intégration continue.
    2. Répondez aux questions du modèle concernant votre référentiel de code source, les ensembles d'outils de build, l'outil de publication et l'espace de travail de l'image de build.
    3. Ajoutez des notifications Slack ou par e-mail pour votre équipe.
    4. Pour que le modèle de pipeline intelligent crée le pipeline, cliquez sur Créer.
    5. Pour apporter d'autres modifications au pipeline, cliquez sur Modifier, apportez vos modifications, puis cliquez sur Enregistrer.
    6. Activez le pipeline et exécutez-le.
  3. Pour créer le pipeline manuellement, ajoutez des étapes et des tâches au canevas, et incluez vos informations de construction d'intégration continue native à la tâche d'intégration continue.
    1. Cliquez sur Pipelines > Nouveau pipeline > Canevas vide.
    2. Cliquez sur l'étape, puis faites glisser les différentes tâches l'intégration continue du volet de navigation vers l'étape.
    3. Pour configurer la tâche d'intégration continue, cliquez dessus, puis cliquez sur l'onglet Tâche.
    4. Ajoutez les étapes qui intègrent continuellement votre code.
    5. Incluez les chemins d'accès aux artefacts de dépendance.
    6. Ajoutez l'emplacement d'exportation.
    7. Ajoutez les outils de structure de test que vous utiliserez.
    8. Ajoutez l'hôte Docker et l'image de build.
    9. Ajoutez le registre du conteneur, le répertoire de travail et le cache.
    10. Enregistrez le pipeline, puis activez-le.
  4. Modifiez votre code dans votre référentiel GitHub ou votre référentiel GitLab.
    Le déclencheur Git active votre pipeline, qui commence à s'exécuter.
  5. Pour vérifier que la modification du code a déclenché le pipeline, cliquez sur Déclencheurs > Git > Activité.
  6. Pour afficher l'exécution de votre pipeline, cliquez sur Exécutions et vérifiez que les étapes ont créé et exporté votre image de build.
    L'exécution du pipeline affiche le chemin des artefacts préservés et la valeur de l'image exportée.
  7. Pour surveiller le tableau de bord du pipeline afin de suivre les KPI et les tendances, cliquez sur Tableaux de bord > Tableaux de bord de pipeline.

Résultats

Félicitations ! Vous avez créé un pipeline qui intègre continuellement votre code d'un référentiel GitHub ou GitLab à votre pipeline, et déploie l'image de build.

Que faire ensuite

Pour plus d'informations, reportez-vous à la section Plus de ressources pour les administrateurs et les développeurs Code Stream.