Création pipelines CI/CD de l'API Gateway
Création du pipeline CI
- Sélectionner le code dans Azure Repo Git

- Sélectionner NC.CAM.App.PortailClients/APIGateway :

- Sélectionner un YAM existant :

- Sélectionner le fichier YAML sur la branche souhaité (ici master)

- Sauvegarder le Pipeline
Configuration du pipeline CI
- Activer l'intégration continue (selon l'environnement)

Création du pipeline CD
- Copier le pipeline de Release d'un autre environnement
- Ajouter/modifier la variable d'environnement :
ASPNETCORE_ENVIRONMENT = Staging(pour l'environnement de Staging, sinon Dev ou Production)
Création pipelines CI/CD de l'API/frontend (même piepline pour les deux)
-
Procéder à la création du pipeline CI à l'instar de l'API Gateway, en adaptant les noms et les fichiers à l'API/frontend
-
Dans les variables d'environnement du pipeline :
- Ajouter DEPLOYMENT_ENVIRONMENT = staging (ou dev ou prod. Cette variable est nécessaire pour la compilation npm du frontend selon l'environnement)
- Ajouter les groupes de variables (selon l'environnement) suivants :

Création du pipeline CD
-
Copier le pipeline de Release d'un autre environnement
-
Editer le pipeline pour modifier la source des artefacts pour récupérer ceux du bon pipeline CI, et supprimer l'ancienne source :

-
Modifier les groupes de variables du pipeline CD :

-
Modifier la tâche 'Execute Migrator' :
- Mettre à jour le script d'ajout de l'IP trusté de DB (ce script est dans les sources du PIPELINE et non les sources de l'application. Le script est à adapter au niveau du CLUSTER_ID, à récupérer sur l'interface de Digital Ocean).

- Mettre à jour le script de suppression de l'IP trusté de DB (ce script est dans les sources du PIPELINE et non les sources de l'application. Le script est à adapter au niveau du CLUSTER_ID, à récupérer sur l'interface de Digital Ocean).

-
Modifier la tâche 'API - Build and Push Docker Images'

- Etape 'Build API' :
- Vérifier/modifier la valeur du container repository (ex : cam-registry/cam-portailclients-api)
- vérifier/modifier la valeur du Dockerfile (ex : $(System.DefaultWorkingDirectory)/_NC.CAM.App.PortailClients-PROD-CI/api-artifacts/Dockerfile)
- Vérifier/modifier la valeur du Tags
- Etape 'Push API' :
- Vérifier/modifier la valeur du container repository (ex : cam-registry/cam-portailclients-api)
- Vérifier/modifier la valeur du Tags
- Etape 'Bulid & Push Frontend' :
- Vérifier/modifier la valeur du container repository (ex : cam-registry/cam-portailclients-api)
- Vérifier/modifier la valeur du Tags