From 55aecfa5699cace6d89ca81448894834e4b85d70 Mon Sep 17 00:00:00 2001 From: Pierre LE CLAINCHE Date: Tue, 27 Jan 2026 12:35:15 +0100 Subject: [PATCH 01/10] gestion des applications ArgoCD --- docs/guide/deployment-with-argo.md | 51 +++++++++++++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index 4bd21c7..1604de2 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -1,6 +1,6 @@ # Déploiement de votre application -Lors de la configuration du dépôt d'infrastructure, depuis la console, il est possible de choisir quelques spécificités et notamment : +Lors de la configuration du **dépôt d'infrastructure**, depuis la console, il est possible de choisir quelques spécificités et notamment : - **Nom de la révision** : correspond à la branche (ou tag) du dépôt d'infra à déployer, par défaut la cible sera HEAD. - **Chemin du répertoire** : correspond au chemin vers vos fichiers de déploiement de type manifests, kustomize ou helm. La valeur par défaut est `.`, soit la racine du dépôt. @@ -25,3 +25,52 @@ Note : Si vous avez désactivé la synchronisation automatique, il faudra obliga Une fois que le déploiement est correctement effectué le status de l'application ArgoCD doit correspondre à : ![ArgoCD-menus](/img/tuto/4argocd-menus.png) + +## Application ArgoCD depuis la version v9.11.5 + +Depuis la version 9.11.5 de la console CPiN, un changement majeur est apporté sur la gestion des applications ArgoCD. + +Plusieurs applications ArgoCD sont créées en plus des applications ArgoCD associés aux repos d'infra: + + - [prod|hprod]-[nom-prj-console]-observability : Cette application correspond au déploiement des dashboard as code (voir le tuto sur l'observabilité). Une autre application nommée "prod" et non "hprod-[nom_projet]-observability" peut également être présente si au moins un environnement de type production est déployé. + - [nom-prj-console]-[env]-[id]-env : Cette application ArgoCD correspond aux éléments d'infrastructure déployé au sein de son namespace : registry pull secret pour la récupération des images sur Harbor par exemple (aucune modification n'est à faire sur cette application). Une application de ce type est créé par environnement de son projet CPiN + - [nom-prj-console]-[nom-cluster]-[env]-root : App of apps permettant de piloter l'ensemble des applis de son projet (aucune modification n'est à faire sur cette application). Une application de ce type est créé par environnement de son projet CPiN + - [nom-prj-console]-[env]-[id]-[nom-repo-infra]-[id] : Application ArgoCD associé au repo de code d'infra déclaré dans la console, c'est l'application correspondant à notre déploiement. + + où : + - nom-prj-console : correspond au nom du projet dans la console CPiN + - env : correspond au nom de l'environnement déclaré dans la console + - nom-cluster : correspond au nom du cluster applicatif + - nom-repo-infra : correspond au nom du repo d'infra déclaré dans la console CPiN + - id : correspond à un identifiant technique sur 4 caractères. + +Ainsi pour le projet `stform`, avec un environnement `demo` de type hors prod (par exemple type dev), un repo d'infra nommé `infra`dans la console et déployé sur l'environnement de formation dont le cluster se nomme `formation-app` les projets suivants seront présents dans ArgoCD : + - hprod-stform-observability : Car seul un environnement de type hors prod est déployé + - stform-demo-3c58-env : correspond au déploiement du ns des quotas et du registry pull secret + - stform-formation-app-demo-root : Meta application qui controle les autres. + - stform-demo-3c58-infra-3843 : Application correspondant au repo de code + +## Migration des projets pour utiliser les nouvelles applications ArgoCD (post version 9.11.5) + +A partir de la version 9.11.5 de la console, il n'est plus possible de faire de modifications directement sur les applications ArgoCD. Les modifications de type target revision, path et nom des fichiers values se font désormais depuis la console CPiN (cf. haut de cette page). + +Les applications ArgoCD créées avant la version 9.11.5 de la console CPiN suivaient le pattern : [nom-projet]-[env]-[nom-repo-infra]-[id] nommé application historique. + +Lors de la mise en production de la version 9.11.5 de la console, pour chaque application ArgoCD existante, un test est réalisé afin de vérifier s'il existe des modifications réalisées depuis l'IHM ArgoCD (nommé `drift` par les équipes CPiN). + +Si aucun `drift` n'est identifié, alors l'application ArgoCD historique est supprimée (en `non cascading`) et remplacée par la nouvelle avec le pattern `[nom-prj-console]-[env]-[id]-[nom-repo-infra]-[id]` l'environnement depuis la console CPiN est positionné en `Synchronisation automatique`. Les modifications de l'application ArgoCD doivent désormais passer par les fichiers values et il n'est plus possible de modifier des paramètres directement dans ArgoCD (c'est la situation cible pour tous les projets). + +Si un drift est identifé : + - L'environnement depius la console CPiN n'est pas positonné en `Synchronisation automatique` et l'application historique est maintenue et il est toujours possible de la modifier depuis ArgoCD. Afin de corriger les `drifts` nous avons identifés différents cas de `drift` : + - *cas 1* : Présence de paramètre dans l'argoCD (surcharges de valeur depuis l'IHM) sur les champs parameters (surcharge d'un paramètre) et values (ajout d'un fichier de values depuis l'IHM). Ce cas se corrige en renseignant les valeurs des paramètres dans les fichiers de values et indiquer le nom des fichiers values à utiliser depuis les repos d'infra dans la console. + - *cas 2* : le nom des fichiers values utilisés par l'environnement ne correspondent pas au nom de l'environnement CPiN. Ce cas se corrige en renommant les fichiers values en utilisant le système de templating `values-.yaml` + - *cas 3* : Utilisation d'une target revision différente par enironnement : pour l'instant feature non supportée, développement en cours dans la console pour le supporter dans un prochaine version. Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN + - *cas 4* : utilisation du multi-sources pour l'instant feature non supportée, développement en cours dans la console pour le supporter dans un prochaine version. Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN + +Remarques générales : + +> Un script réalisé par les équipes CPiN permet d'identifier les drifts pour les projets et de savoir dans quel cas le projet se trouve. La ServiceTeam communiquera aux projets ce cas afin d'indiquer quelles sont les modifications à apporter et pourra valider ces moficiations afin de pour passer dans le nouveau mode de gestion des applications ArgoCD. + +> En cas de drift, il est **toujours** possible de continuer à utiliser l'application historique, le temps de corriger les drifts. + +> Tant qu'un `drift` est présent, il ne faut **surtout pas** activer la `Synchronisation automatique` depuis les environnements dans la console CPiN. From 455f75fc893f762b7e488404f97f53616ef75ea1 Mon Sep 17 00:00:00 2001 From: Pierre LE CLAINCHE Date: Tue, 27 Jan 2026 12:54:16 +0100 Subject: [PATCH 02/10] dev --- docs/guide/deployment-with-argo.md | 14 +++++++------- docs/guide/environments-management.md | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index 1604de2..ab7dab7 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -8,7 +8,7 @@ Lors de la configuration du **dépôt d'infrastructure**, depuis la console, il ![Options de déploiement](/img/tuto/options-repo-infra.png) -> Attention, sur les versions précédentes de la console CPiN, ces modifications s'effectuaient depuis ArgoCD dans le menu details de l'application. Il est maintenant *obligatoire* de faire ces modifications depuis la console. En effet, toute modification depuis l'interface ArgoCD sur ces éléments ne sera pas pris en compte. +> Attention, sur les versions précédentes de la console CPiN, ces modifications s'effectuaient depuis ArgoCD dans le menu details de l'application. Il est maintenant *obligatoire* de faire ces modifications depuis la console. En effet, toute modification depuis l'interface ArgoCD sur ces éléments ne sera pas prise en compte. ## Visualisation dans ArgoCD @@ -22,7 +22,7 @@ Il est possible de forcer la synchronisation avec le dépôt sur gitlab Cloud π Note : Si vous avez désactivé la synchronisation automatique, il faudra obligatoirement passer par cette synchronisation manuelle *SYNC*. Voir [Gestion des environnements](/guide/environments-management#synchronisation-argocd). -Une fois que le déploiement est correctement effectué le status de l'application ArgoCD doit correspondre à : +Une fois que le déploiement est correctement effectué le status de l'application ArgoCD passe à `Healthy` par exemple : ![ArgoCD-menus](/img/tuto/4argocd-menus.png) @@ -32,10 +32,10 @@ Depuis la version 9.11.5 de la console CPiN, un changement majeur est apporté s Plusieurs applications ArgoCD sont créées en plus des applications ArgoCD associés aux repos d'infra: - - [prod|hprod]-[nom-prj-console]-observability : Cette application correspond au déploiement des dashboard as code (voir le tuto sur l'observabilité). Une autre application nommée "prod" et non "hprod-[nom_projet]-observability" peut également être présente si au moins un environnement de type production est déployé. - - [nom-prj-console]-[env]-[id]-env : Cette application ArgoCD correspond aux éléments d'infrastructure déployé au sein de son namespace : registry pull secret pour la récupération des images sur Harbor par exemple (aucune modification n'est à faire sur cette application). Une application de ce type est créé par environnement de son projet CPiN - - [nom-prj-console]-[nom-cluster]-[env]-root : App of apps permettant de piloter l'ensemble des applis de son projet (aucune modification n'est à faire sur cette application). Une application de ce type est créé par environnement de son projet CPiN - - [nom-prj-console]-[env]-[id]-[nom-repo-infra]-[id] : Application ArgoCD associé au repo de code d'infra déclaré dans la console, c'est l'application correspondant à notre déploiement. + - [prod|hprod]-[nom-prj-console]-observability : Cette application correspond au déploiement de l'instance Grafana et des dashboard as code (voir le tuto sur l'observabilité). 2 applications de ce type peuvent exister : une pour la production (si au moins un environnement de type production existe) et une pour le hors production. + - [nom-prj-console]-[env]-[id]-env : Cette application ArgoCD correspond aux éléments d'infrastructure déployés au sein de son namespace : registry pull secret pour la récupération des images sur Harbor par exemple. Une application de ce type est créé par environnement de son projet CPiN. (aucune modification n'est à faire sur cette application) + - [nom-prj-console]-[nom-cluster]-[env]-root : App of apps permettant de piloter l'ensemble des applis de son projet. Une application de ce type est créé par environnement de son projet CPiN. (aucune modification n'est à faire sur cette application) + - [nom-prj-console]-[env]-[id]-[nom-repo-infra]-[id] : Application ArgoCD associé au repo de code d'infra déclaré dans la console, c'est l'application correspondant à un déploiement. où : - nom-prj-console : correspond au nom du projet dans la console CPiN @@ -44,7 +44,7 @@ Plusieurs applications ArgoCD sont créées en plus des applications ArgoCD asso - nom-repo-infra : correspond au nom du repo d'infra déclaré dans la console CPiN - id : correspond à un identifiant technique sur 4 caractères. -Ainsi pour le projet `stform`, avec un environnement `demo` de type hors prod (par exemple type dev), un repo d'infra nommé `infra`dans la console et déployé sur l'environnement de formation dont le cluster se nomme `formation-app` les projets suivants seront présents dans ArgoCD : +Ainsi pour le projet `stform`, avec un environnement `demo` de type hors prod (par exemple type dev), un repo d'infra nommé `infra` dans la console et déployé sur l'environnement de formation dont le cluster se nomme `formation-app` les projets suivants seront présents dans ArgoCD : - hprod-stform-observability : Car seul un environnement de type hors prod est déployé - stform-demo-3c58-env : correspond au déploiement du ns des quotas et du registry pull secret - stform-formation-app-demo-root : Meta application qui controle les autres. diff --git a/docs/guide/environments-management.md b/docs/guide/environments-management.md index c710989..b6106a2 100644 --- a/docs/guide/environments-management.md +++ b/docs/guide/environments-management.md @@ -41,6 +41,6 @@ Une fois l'environnement créé, il est possible de voir la consommation total d ## Synchronisation ArgoCD Une Application ArgoCD est créé pour chaque Environnement déclaré dans la Console (et pour chaque Dépôt de type *infra*, voir [Déploiement](/guide/deployment-with-argo)). -Par défaut, ArgoCD synchronise automatiquement cette Application et les modifications pilotées par la Console. Toutefois si des spécificités ou des tests temporaires sont nécessaires, il est possible de désactiver cette synchronisation au niveau du paramétrage de l'Environnement. +Par défaut, ArgoCD synchronise automatiquement cette Application et les modifications pilotées par la Console. Toutefois si des spécificités ou des `drifts` sont présents, il est nécessaire de désactiver cette synchronisation au niveau du paramétrage de l'Environnement. ![Désactivation de la synchronisation automatique](/img/environnement/env-autosync.png) From 6962facf5c9ec95dd958a067dc71560c4265fb65 Mon Sep 17 00:00:00 2001 From: Pierre LE CLAINCHE Date: Tue, 27 Jan 2026 13:01:25 +0100 Subject: [PATCH 03/10] dev2 --- docs/guide/deployment-with-argo.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index ab7dab7..86c8920 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -58,10 +58,12 @@ Les applications ArgoCD créées avant la version 9.11.5 de la console CPiN suiv Lors de la mise en production de la version 9.11.5 de la console, pour chaque application ArgoCD existante, un test est réalisé afin de vérifier s'il existe des modifications réalisées depuis l'IHM ArgoCD (nommé `drift` par les équipes CPiN). -Si aucun `drift` n'est identifié, alors l'application ArgoCD historique est supprimée (en `non cascading`) et remplacée par la nouvelle avec le pattern `[nom-prj-console]-[env]-[id]-[nom-repo-infra]-[id]` l'environnement depuis la console CPiN est positionné en `Synchronisation automatique`. Les modifications de l'application ArgoCD doivent désormais passer par les fichiers values et il n'est plus possible de modifier des paramètres directement dans ArgoCD (c'est la situation cible pour tous les projets). +Si aucun `drift` n'est identifié, alors l'application ArgoCD historique est supprimée (en `non cascading` donc sans suppression de ressources) et remplacée par la nouvelle avec le pattern `[nom-prj-console]-[env]-[id]-[nom-repo-infra]-[id]`. L'environnement depuis la console CPiN est positionnée en `Synchronisation automatique`. Les modifications de l'application ArgoCD doivent désormais se faire en mode `GirOps` ce qui apporte un versionning et un historique des modifications dans les fichiers values. -Si un drift est identifé : - - L'environnement depius la console CPiN n'est pas positonné en `Synchronisation automatique` et l'application historique est maintenue et il est toujours possible de la modifier depuis ArgoCD. Afin de corriger les `drifts` nous avons identifés différents cas de `drift` : +Si un `drift` est identifé : + - L'environnement dans la console CPiN n'est pas positonné en `Synchronisation automatique` et l'application historique est maintenue. Il est toujours possible de la modifier depuis ArgoCD. + > Il est nécessaire de corriger tous les drift avant de passer l'environnement en `Synchronisation automatique` afin de ne pas impacter vos application. + Afin de corriger les `drifts` plusieurs cas sont possibles : - *cas 1* : Présence de paramètre dans l'argoCD (surcharges de valeur depuis l'IHM) sur les champs parameters (surcharge d'un paramètre) et values (ajout d'un fichier de values depuis l'IHM). Ce cas se corrige en renseignant les valeurs des paramètres dans les fichiers de values et indiquer le nom des fichiers values à utiliser depuis les repos d'infra dans la console. - *cas 2* : le nom des fichiers values utilisés par l'environnement ne correspondent pas au nom de l'environnement CPiN. Ce cas se corrige en renommant les fichiers values en utilisant le système de templating `values-.yaml` - *cas 3* : Utilisation d'une target revision différente par enironnement : pour l'instant feature non supportée, développement en cours dans la console pour le supporter dans un prochaine version. Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN From bfab88e5ef7af2984ee61bad54a202ad3ff268de Mon Sep 17 00:00:00 2001 From: Pierre LE CLAINCHE Date: Tue, 27 Jan 2026 13:03:12 +0100 Subject: [PATCH 04/10] dev3 --- docs/guide/deployment-with-argo.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index 86c8920..ffbbcdf 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -62,7 +62,9 @@ Si aucun `drift` n'est identifié, alors l'application ArgoCD historique est sup Si un `drift` est identifé : - L'environnement dans la console CPiN n'est pas positonné en `Synchronisation automatique` et l'application historique est maintenue. Il est toujours possible de la modifier depuis ArgoCD. - > Il est nécessaire de corriger tous les drift avant de passer l'environnement en `Synchronisation automatique` afin de ne pas impacter vos application. + + > :warning: Il est nécessaire de corriger tous les drift avant de passer l'environnement en `Synchronisation automatique` afin de ne pas impacter vos application. + Afin de corriger les `drifts` plusieurs cas sont possibles : - *cas 1* : Présence de paramètre dans l'argoCD (surcharges de valeur depuis l'IHM) sur les champs parameters (surcharge d'un paramètre) et values (ajout d'un fichier de values depuis l'IHM). Ce cas se corrige en renseignant les valeurs des paramètres dans les fichiers de values et indiquer le nom des fichiers values à utiliser depuis les repos d'infra dans la console. - *cas 2* : le nom des fichiers values utilisés par l'environnement ne correspondent pas au nom de l'environnement CPiN. Ce cas se corrige en renommant les fichiers values en utilisant le système de templating `values-.yaml` From ccd51b9fe3bd5ef1ed0b12aa258d25d1fc2fbbcb Mon Sep 17 00:00:00 2001 From: Pierre LE CLAINCHE Date: Tue, 27 Jan 2026 13:03:54 +0100 Subject: [PATCH 05/10] dev4 --- docs/guide/deployment-with-argo.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index ffbbcdf..2a8c94c 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -77,4 +77,4 @@ Remarques générales : > En cas de drift, il est **toujours** possible de continuer à utiliser l'application historique, le temps de corriger les drifts. -> Tant qu'un `drift` est présent, il ne faut **surtout pas** activer la `Synchronisation automatique` depuis les environnements dans la console CPiN. +> :warning: Tant qu'un `drift` est présent, il ne faut **surtout pas** activer la `Synchronisation automatique` depuis les environnements dans la console CPiN. :warning: From c6ba14e0d3e0b1f509692bdfadc294ed432fd7e4 Mon Sep 17 00:00:00 2001 From: Pierre LE CLAINCHE Date: Tue, 27 Jan 2026 13:04:52 +0100 Subject: [PATCH 06/10] dev5 --- docs/guide/deployment-with-argo.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index 2a8c94c..ac28d3a 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -66,8 +66,10 @@ Si un `drift` est identifé : > :warning: Il est nécessaire de corriger tous les drift avant de passer l'environnement en `Synchronisation automatique` afin de ne pas impacter vos application. Afin de corriger les `drifts` plusieurs cas sont possibles : - - *cas 1* : Présence de paramètre dans l'argoCD (surcharges de valeur depuis l'IHM) sur les champs parameters (surcharge d'un paramètre) et values (ajout d'un fichier de values depuis l'IHM). Ce cas se corrige en renseignant les valeurs des paramètres dans les fichiers de values et indiquer le nom des fichiers values à utiliser depuis les repos d'infra dans la console. - - *cas 2* : le nom des fichiers values utilisés par l'environnement ne correspondent pas au nom de l'environnement CPiN. Ce cas se corrige en renommant les fichiers values en utilisant le système de templating `values-.yaml` + - *cas 1* : Présence de paramètre dans l'argoCD (surcharges de valeur depuis l'IHM) sur les champs parameters (surcharge d'un paramètre) et values (ajout d'un fichier de values depuis l'IHM). + :white_check_mark: Ce cas se corrige en renseignant les valeurs des paramètres dans les fichiers de values et indiquer le nom des fichiers values à utiliser depuis les repos d'infra dans la console. + - *cas 2* : le nom des fichiers values utilisés par l'environnement ne correspondent pas au nom de l'environnement CPiN. + :white_check_mark: Ce cas se corrige en renommant les fichiers values en utilisant le système de templating `values-.yaml` - *cas 3* : Utilisation d'une target revision différente par enironnement : pour l'instant feature non supportée, développement en cours dans la console pour le supporter dans un prochaine version. Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN - *cas 4* : utilisation du multi-sources pour l'instant feature non supportée, développement en cours dans la console pour le supporter dans un prochaine version. Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN From f4220b9a87d6eadb6a66d9d4d07348972b835404 Mon Sep 17 00:00:00 2001 From: Pierre LE CLAINCHE Date: Tue, 27 Jan 2026 13:06:11 +0100 Subject: [PATCH 07/10] dev6 --- docs/guide/deployment-with-argo.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index ac28d3a..886d899 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -67,7 +67,7 @@ Si un `drift` est identifé : Afin de corriger les `drifts` plusieurs cas sont possibles : - *cas 1* : Présence de paramètre dans l'argoCD (surcharges de valeur depuis l'IHM) sur les champs parameters (surcharge d'un paramètre) et values (ajout d'un fichier de values depuis l'IHM). - :white_check_mark: Ce cas se corrige en renseignant les valeurs des paramètres dans les fichiers de values et indiquer le nom des fichiers values à utiliser depuis les repos d'infra dans la console. + > :white_check_mark: Ce cas se corrige en renseignant les valeurs des paramètres dans les fichiers de values et indiquer le nom des fichiers values à utiliser depuis les repos d'infra dans la console. - *cas 2* : le nom des fichiers values utilisés par l'environnement ne correspondent pas au nom de l'environnement CPiN. :white_check_mark: Ce cas se corrige en renommant les fichiers values en utilisant le système de templating `values-.yaml` - *cas 3* : Utilisation d'une target revision différente par enironnement : pour l'instant feature non supportée, développement en cours dans la console pour le supporter dans un prochaine version. Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN From d59e958695561a7a0aea9f7e0fe7c39e0e863556 Mon Sep 17 00:00:00 2001 From: Pierre LE CLAINCHE Date: Tue, 27 Jan 2026 13:08:35 +0100 Subject: [PATCH 08/10] dev7 --- docs/guide/deployment-with-argo.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index 886d899..38ca497 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -69,9 +69,11 @@ Si un `drift` est identifé : - *cas 1* : Présence de paramètre dans l'argoCD (surcharges de valeur depuis l'IHM) sur les champs parameters (surcharge d'un paramètre) et values (ajout d'un fichier de values depuis l'IHM). > :white_check_mark: Ce cas se corrige en renseignant les valeurs des paramètres dans les fichiers de values et indiquer le nom des fichiers values à utiliser depuis les repos d'infra dans la console. - *cas 2* : le nom des fichiers values utilisés par l'environnement ne correspondent pas au nom de l'environnement CPiN. - :white_check_mark: Ce cas se corrige en renommant les fichiers values en utilisant le système de templating `values-.yaml` - - *cas 3* : Utilisation d'une target revision différente par enironnement : pour l'instant feature non supportée, développement en cours dans la console pour le supporter dans un prochaine version. Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN - - *cas 4* : utilisation du multi-sources pour l'instant feature non supportée, développement en cours dans la console pour le supporter dans un prochaine version. Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN + > :white_check_mark: Ce cas se corrige en renommant les fichiers values en utilisant le système de templating `values-.yaml` + - *cas 3* : Utilisation d'une target revision différente par enironnement : pour l'instant cette feature n'est pas supportée, un développement est en cours dans la console pour supporter cette option et sera présente dans un prochaine version. + > :warning: Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN + - *cas 4* : utilisation du multi-sources : pour l'instant cette feature npour l'instant cette feature n'est pas supportée, un développement est en cours dans la console pour supporter cette option et sera présente dans un prochaine version. + > :warning: Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN Remarques générales : From ddd3472a926243e0a3438fae18d025ffff67a4a6 Mon Sep 17 00:00:00 2001 From: Pierre LE CLAINCHE Date: Tue, 27 Jan 2026 13:10:28 +0100 Subject: [PATCH 09/10] dev8 --- docs/guide/deployment-with-argo.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index 38ca497..df909c7 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -63,7 +63,7 @@ Si aucun `drift` n'est identifié, alors l'application ArgoCD historique est sup Si un `drift` est identifé : - L'environnement dans la console CPiN n'est pas positonné en `Synchronisation automatique` et l'application historique est maintenue. Il est toujours possible de la modifier depuis ArgoCD. - > :warning: Il est nécessaire de corriger tous les drift avant de passer l'environnement en `Synchronisation automatique` afin de ne pas impacter vos application. + > :exclamation: Il est nécessaire de corriger tous les drift avant de passer l'environnement en `Synchronisation automatique` afin de ne pas impacter vos application. Afin de corriger les `drifts` plusieurs cas sont possibles : - *cas 1* : Présence de paramètre dans l'argoCD (surcharges de valeur depuis l'IHM) sur les champs parameters (surcharge d'un paramètre) et values (ajout d'un fichier de values depuis l'IHM). From a67ff69da9a75d998c041d61fdaac323fd76533a Mon Sep 17 00:00:00 2001 From: Pierre LE CLAINCHE Date: Tue, 27 Jan 2026 14:46:48 +0100 Subject: [PATCH 10/10] dev9 --- docs/guide/deployment-with-argo.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index df909c7..ebcd8e5 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -30,15 +30,15 @@ Une fois que le déploiement est correctement effectué le status de l'applicati Depuis la version 9.11.5 de la console CPiN, un changement majeur est apporté sur la gestion des applications ArgoCD. -Plusieurs applications ArgoCD sont créées en plus des applications ArgoCD associés aux repos d'infra: +Plusieurs applications ArgoCD sont créées en plus des applications ArgoCD associées aux repos d'infra: - [prod|hprod]-[nom-prj-console]-observability : Cette application correspond au déploiement de l'instance Grafana et des dashboard as code (voir le tuto sur l'observabilité). 2 applications de ce type peuvent exister : une pour la production (si au moins un environnement de type production existe) et une pour le hors production. - - [nom-prj-console]-[env]-[id]-env : Cette application ArgoCD correspond aux éléments d'infrastructure déployés au sein de son namespace : registry pull secret pour la récupération des images sur Harbor par exemple. Une application de ce type est créé par environnement de son projet CPiN. (aucune modification n'est à faire sur cette application) - [nom-prj-console]-[nom-cluster]-[env]-root : App of apps permettant de piloter l'ensemble des applis de son projet. Une application de ce type est créé par environnement de son projet CPiN. (aucune modification n'est à faire sur cette application) - - [nom-prj-console]-[env]-[id]-[nom-repo-infra]-[id] : Application ArgoCD associé au repo de code d'infra déclaré dans la console, c'est l'application correspondant à un déploiement. + - [nom-prj-console]-[env]-[id]-env : Cette application ArgoCD correspond aux éléments d'infrastructure déployés au sein de son namespace : registry pull secret pour la récupération des images sur Harbor par exemple. Une application de ce type est créé par environnement de son projet CPiN. (aucune modification n'est à faire sur cette application) + - [nom-prj-console]-[env]-[id]-[nom-repo-infra]-[id] : Application ArgoCD associé au repo de code d'infra déclaré dans la console, c'est l'application correspondant à un déploiement. Les modifications sur cette application doivent désormais se faire en mode gitops depuis les fichiers values et la configuration depuis la console CPiN. où : - - nom-prj-console : correspond au nom du projet dans la console CPiN + - nom-prj-console : correspond au nom du projet dans la console CPiN (ou slug du projet) - env : correspond au nom de l'environnement déclaré dans la console - nom-cluster : correspond au nom du cluster applicatif - nom-repo-infra : correspond au nom du repo d'infra déclaré dans la console CPiN @@ -58,27 +58,27 @@ Les applications ArgoCD créées avant la version 9.11.5 de la console CPiN suiv Lors de la mise en production de la version 9.11.5 de la console, pour chaque application ArgoCD existante, un test est réalisé afin de vérifier s'il existe des modifications réalisées depuis l'IHM ArgoCD (nommé `drift` par les équipes CPiN). -Si aucun `drift` n'est identifié, alors l'application ArgoCD historique est supprimée (en `non cascading` donc sans suppression de ressources) et remplacée par la nouvelle avec le pattern `[nom-prj-console]-[env]-[id]-[nom-repo-infra]-[id]`. L'environnement depuis la console CPiN est positionnée en `Synchronisation automatique`. Les modifications de l'application ArgoCD doivent désormais se faire en mode `GirOps` ce qui apporte un versionning et un historique des modifications dans les fichiers values. +Si aucun `drift` n'est identifié, alors l'application ArgoCD historique est supprimée (en `non cascading` donc sans suppression de ressources) et remplacée par la nouvelle avec le pattern `[nom-prj-console]-[env]-[id]-[nom-repo-infra]-[id]`. L'environnement depuis la console CPiN est positionnée en `Synchronisation automatique`. Les modifications de l'application ArgoCD doivent désormais se faire en mode `GitOps` ce qui apporte un versioning et un historique des modifications dans les fichiers values. Si un `drift` est identifé : - L'environnement dans la console CPiN n'est pas positonné en `Synchronisation automatique` et l'application historique est maintenue. Il est toujours possible de la modifier depuis ArgoCD. - > :exclamation: Il est nécessaire de corriger tous les drift avant de passer l'environnement en `Synchronisation automatique` afin de ne pas impacter vos application. + > :exclamation: Il est nécessaire de corriger tous les `drifts` avant de passer l'environnement en `Synchronisation automatique` afin de ne pas impacter vos applications. Afin de corriger les `drifts` plusieurs cas sont possibles : - - *cas 1* : Présence de paramètre dans l'argoCD (surcharges de valeur depuis l'IHM) sur les champs parameters (surcharge d'un paramètre) et values (ajout d'un fichier de values depuis l'IHM). + - *cas 1* : Présence de paramètres dans l'argoCD (surcharges de valeur depuis l'IHM) sur les champs parameters (surcharge d'un paramètre) et values (ajout de values dans la définition YAML de l'application ArgoCD). > :white_check_mark: Ce cas se corrige en renseignant les valeurs des paramètres dans les fichiers de values et indiquer le nom des fichiers values à utiliser depuis les repos d'infra dans la console. - - *cas 2* : le nom des fichiers values utilisés par l'environnement ne correspondent pas au nom de l'environnement CPiN. - > :white_check_mark: Ce cas se corrige en renommant les fichiers values en utilisant le système de templating `values-.yaml` - - *cas 3* : Utilisation d'une target revision différente par enironnement : pour l'instant cette feature n'est pas supportée, un développement est en cours dans la console pour supporter cette option et sera présente dans un prochaine version. + - *cas 2* : le nom des fichiers values utilisés par l'environnement ne correspondent pas au **nom de l'environnement CPiN**. + > :white_check_mark: Ce cas se corrige en renommant les fichiers values en utilisant le système de templating, par exemple `values-.yaml` ou `/values//values.yaml` + - *cas 3* : Utilisation d'une target revision différente par environnement : pour l'instant cette feature n'est pas supportée, un développement est en cours dans la console pour supporter cette option et sera présente dans une prochaine version. > :warning: Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN - - *cas 4* : utilisation du multi-sources : pour l'instant cette feature npour l'instant cette feature n'est pas supportée, un développement est en cours dans la console pour supporter cette option et sera présente dans un prochaine version. + - *cas 4* : utilisation du multi-sources : pour l'instant cette feature n'est pas supportée, un développement est en cours dans la console pour supporter cette option et sera présente dans une prochaine version. > :warning: Dans ce cas, il faut continuer à utiliser l'application historique et surtout ne pas cocher la `Synchronisation automatique` de l'environnement depuis la console CPiN Remarques générales : -> Un script réalisé par les équipes CPiN permet d'identifier les drifts pour les projets et de savoir dans quel cas le projet se trouve. La ServiceTeam communiquera aux projets ce cas afin d'indiquer quelles sont les modifications à apporter et pourra valider ces moficiations afin de pour passer dans le nouveau mode de gestion des applications ArgoCD. +> Un script réalisé par les équipes CPiN permet d'identifier les drifts pour les projets et de savoir dans quel cas le projet se trouve. La ServiceTeam communiquera aux projets ce cas afin d'indiquer quelles sont les modifications à apporter et pourra valider ces modifications afin de passer dans le nouveau mode de gestion des applications ArgoCD. -> En cas de drift, il est **toujours** possible de continuer à utiliser l'application historique, le temps de corriger les drifts. +> En cas de drift, il est **toujours** possible d'utiliser l'application historique, le temps de corriger les drifts. -> :warning: Tant qu'un `drift` est présent, il ne faut **surtout pas** activer la `Synchronisation automatique` depuis les environnements dans la console CPiN. :warning: +> :warning: Tant qu'un `drift` est présent, il ne faut **surtout pas** activer la `Synchronisation automatique` depuis les environnements dans la console CPiN au risque de générer des conflits et instabilités entre l'application historique et la nouvelle application. Le passage en `Synchronisation automatique` se fait par le script de migration présenté ci-dessus après suppression des `drifts` par le projet :warning: