From 8141d2020974813fb537597ce05113813b78da7f Mon Sep 17 00:00:00 2001 From: Mathieu LAUDE Date: Tue, 30 Dec 2025 11:49:20 +0100 Subject: [PATCH 1/3] =?UTF-8?q?Ajout=20documentation=20autosync=20+=20opti?= =?UTF-8?q?ons=20de=20d=C3=A9ploiement?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/guide/deployment-with-argo.md | 29 +++++++++++---------------- docs/guide/environments-management.md | 11 ++++++++-- 2 files changed, 21 insertions(+), 19 deletions(-) diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index a1a7114..6c0f3f4 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -1,30 +1,25 @@ # Déploiement de votre application -Une fois qu'un dépôt d'infrastructure est synchronisé, il convient de se rendre sur le service ArgoCD depuis la liste des services : -![argocd](/img/tuto/4argocd.png) +Lors de la configuration du dépôt d'infrastructure, il est possible de choisir quelques spécificités et notamment : -Cliquez sur l'application nouvellement créé afin de finaliser sa configuration : +- **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. +- **Fichiers values** : une liste des fichiers values à utiliser (dans le cas d'un Helm Chart). Si le pattern `` est spécifié dans le chemin ou le nom du fichier, celui-ci sera remplacé par le **nom de l'environnement** lors du déploiement. -Allez dans le menu en haut et cliquez sur details : -![ArgoCD-menus](/img/tuto/4argocd-menus-bouton.png) - -Sur l'écran qui s'affiche, cliquez sur le bouton *EDIT* et adaptez les valeurs renseignées par défaut par la console. -![ArgoCD-app-details](/img/tuto/4argocd-app-details.png) - -Notamment : - -- **CLUSTER** : correspond au cluster sur lequel l'application doit être déployée, celà dépends des informations renseignées lors de l'étape de [gérer les environnements](/guide/environments-management). -- **TARGET REVISION** : correspond à la branche du dépôt d'infra à déployer, par défaut il point sur HEAD (master). -- **PATH** qui est positionné sur "helm/" par défaut. Vous devez indiquer le bon chemin vers vos fichiers de déploiement de type manifests, kustomize ou helm. -- Dans l'onglet **PARAMETERS**, il est possible de surcharger certaines valeurs du fichier values (mais il est préférable de modifier le fichier values directement) +![Options de déploiement](/img/tuto/options-repo-infra.png) -Finir la saisie en cliquant sur le bouton *SAVE* +## Visualisation dans ArgoCD -Le déploiement se fait automatiquement par ArgoCD, mais il est possible de forcer la synchronisation avec le dépôt sur gitlab Cloud π Native en cliquant sur les boutons: +Le déploiement se fait automatiquement par ArgoCD. Une fois qu'un dépôt d'infrastructure est synchronisé, il convient de se rendre sur le service ArgoCD depuis la liste des services. +Il est possible de forcer la synchronisation avec le dépôt sur gitlab Cloud π Native en cliquant sur les boutons : - *REFRESH* pour forcer la synchronisation depuis le dépôt gitlab de la plateforme Cloud π Native - *SYNC* pour forcer le rafraichissement entre l'état défini par git et l'état réel des objets créés par ArgoCD. +![ArgoCD-menus](/img/tuto/4argocd-menus-bouton.png) + +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 à : ![ArgoCD-menus](/img/tuto/4argocd-menus.png) diff --git a/docs/guide/environments-management.md b/docs/guide/environments-management.md index e13c6f0..78e8555 100644 --- a/docs/guide/environments-management.md +++ b/docs/guide/environments-management.md @@ -14,7 +14,7 @@ pour chaque environnement, la console crée automatiquement : Depuis la console, aller dans l'onglet *Configuration* d'un projet afin de configurer les quotas du projet. Ces quotas doivent correspondre à la demande d'hébergement validée par le ministère de l'intérieur. -A l'image de la demande d'hébergement, les quotas sont répartis en **ressources hors production** et **ressources production**. Sur chacun, il est nécessaire d'ajouter les limites en terme de CPU, RAM et GPU. +À l'image de la demande d'hébergement, les quotas sont répartis en **ressources hors production** et **ressources production**. Sur chacun, il est nécessaire d'ajouter les limites en terme de CPU, RAM et GPU. ![type](/img/environnement/quotas-projet.png) @@ -36,4 +36,11 @@ Cliquez sur le bouton **+ Ajouter un nouvel environnement** puis compléter : > Les quotas associés à un environnement correspondent à la somme des valeurs définies dans "resources.limits" de l'ensemble des pods déployés sur le namespace de son projet. Une fois l'environnement créé, il est possible de voir la consommation total des environnements par rapport aux quotas du projet depuis l'onglet resources du projet. - ![quota](/img/environnement/environnement-quota.png) \ No newline at end of file + ![quota](/img/environnement/environnement-quota.png) + +## 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. + +![Désactivation de la synchronisation automatique](/img/tuto/env-autosync.png) From 3e9d9b3d184fb9ed0d3a36c5d630e799860ace6d Mon Sep 17 00:00:00 2001 From: Mathieu LAUDE Date: Tue, 30 Dec 2025 11:49:20 +0100 Subject: [PATCH 2/3] =?UTF-8?q?Ajout=20documentation=20autosync=20+=20opti?= =?UTF-8?q?ons=20de=20d=C3=A9ploiement?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/guide/deployment-with-argo.md | 29 ++++++++---------- docs/guide/environments-management.md | 11 +++++-- .../public/img/environnement/env-autosync.png | Bin 0 -> 23049 bytes docs/public/img/tuto/options-repo-infra.png | Bin 0 -> 46787 bytes 4 files changed, 21 insertions(+), 19 deletions(-) create mode 100644 docs/public/img/environnement/env-autosync.png create mode 100644 docs/public/img/tuto/options-repo-infra.png diff --git a/docs/guide/deployment-with-argo.md b/docs/guide/deployment-with-argo.md index a1a7114..6c0f3f4 100644 --- a/docs/guide/deployment-with-argo.md +++ b/docs/guide/deployment-with-argo.md @@ -1,30 +1,25 @@ # Déploiement de votre application -Une fois qu'un dépôt d'infrastructure est synchronisé, il convient de se rendre sur le service ArgoCD depuis la liste des services : -![argocd](/img/tuto/4argocd.png) +Lors de la configuration du dépôt d'infrastructure, il est possible de choisir quelques spécificités et notamment : -Cliquez sur l'application nouvellement créé afin de finaliser sa configuration : +- **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. +- **Fichiers values** : une liste des fichiers values à utiliser (dans le cas d'un Helm Chart). Si le pattern `` est spécifié dans le chemin ou le nom du fichier, celui-ci sera remplacé par le **nom de l'environnement** lors du déploiement. -Allez dans le menu en haut et cliquez sur details : -![ArgoCD-menus](/img/tuto/4argocd-menus-bouton.png) - -Sur l'écran qui s'affiche, cliquez sur le bouton *EDIT* et adaptez les valeurs renseignées par défaut par la console. -![ArgoCD-app-details](/img/tuto/4argocd-app-details.png) - -Notamment : - -- **CLUSTER** : correspond au cluster sur lequel l'application doit être déployée, celà dépends des informations renseignées lors de l'étape de [gérer les environnements](/guide/environments-management). -- **TARGET REVISION** : correspond à la branche du dépôt d'infra à déployer, par défaut il point sur HEAD (master). -- **PATH** qui est positionné sur "helm/" par défaut. Vous devez indiquer le bon chemin vers vos fichiers de déploiement de type manifests, kustomize ou helm. -- Dans l'onglet **PARAMETERS**, il est possible de surcharger certaines valeurs du fichier values (mais il est préférable de modifier le fichier values directement) +![Options de déploiement](/img/tuto/options-repo-infra.png) -Finir la saisie en cliquant sur le bouton *SAVE* +## Visualisation dans ArgoCD -Le déploiement se fait automatiquement par ArgoCD, mais il est possible de forcer la synchronisation avec le dépôt sur gitlab Cloud π Native en cliquant sur les boutons: +Le déploiement se fait automatiquement par ArgoCD. Une fois qu'un dépôt d'infrastructure est synchronisé, il convient de se rendre sur le service ArgoCD depuis la liste des services. +Il est possible de forcer la synchronisation avec le dépôt sur gitlab Cloud π Native en cliquant sur les boutons : - *REFRESH* pour forcer la synchronisation depuis le dépôt gitlab de la plateforme Cloud π Native - *SYNC* pour forcer le rafraichissement entre l'état défini par git et l'état réel des objets créés par ArgoCD. +![ArgoCD-menus](/img/tuto/4argocd-menus-bouton.png) + +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 à : ![ArgoCD-menus](/img/tuto/4argocd-menus.png) diff --git a/docs/guide/environments-management.md b/docs/guide/environments-management.md index e13c6f0..c710989 100644 --- a/docs/guide/environments-management.md +++ b/docs/guide/environments-management.md @@ -14,7 +14,7 @@ pour chaque environnement, la console crée automatiquement : Depuis la console, aller dans l'onglet *Configuration* d'un projet afin de configurer les quotas du projet. Ces quotas doivent correspondre à la demande d'hébergement validée par le ministère de l'intérieur. -A l'image de la demande d'hébergement, les quotas sont répartis en **ressources hors production** et **ressources production**. Sur chacun, il est nécessaire d'ajouter les limites en terme de CPU, RAM et GPU. +À l'image de la demande d'hébergement, les quotas sont répartis en **ressources hors production** et **ressources production**. Sur chacun, il est nécessaire d'ajouter les limites en terme de CPU, RAM et GPU. ![type](/img/environnement/quotas-projet.png) @@ -36,4 +36,11 @@ Cliquez sur le bouton **+ Ajouter un nouvel environnement** puis compléter : > Les quotas associés à un environnement correspondent à la somme des valeurs définies dans "resources.limits" de l'ensemble des pods déployés sur le namespace de son projet. Une fois l'environnement créé, il est possible de voir la consommation total des environnements par rapport aux quotas du projet depuis l'onglet resources du projet. - ![quota](/img/environnement/environnement-quota.png) \ No newline at end of file + ![quota](/img/environnement/environnement-quota.png) + +## 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. + +![Désactivation de la synchronisation automatique](/img/environnement/env-autosync.png) diff --git a/docs/public/img/environnement/env-autosync.png b/docs/public/img/environnement/env-autosync.png new file mode 100644 index 0000000000000000000000000000000000000000..83a05c645c0afc4fc30b8eb7f2d55eb19151196c GIT binary patch literal 23049 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 literal 0 HcmV?d00001 diff --git a/docs/public/img/tuto/options-repo-infra.png b/docs/public/img/tuto/options-repo-infra.png new file mode 100644 index 0000000000000000000000000000000000000000..86d4aa85c6b48bf2d1728db5b9faa35e46c4f795 GIT binary patch literal 46787 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 Date: Tue, 30 Dec 2025 16:06:02 +0100 Subject: [PATCH 3/3] =?UTF-8?q?ajout=20:=20pr=C3=A9cision=20sur=20les=20mo?= =?UTF-8?q?dification=20entre=20la=20console=20et=20ArgoCD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 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 6c0f3f4..4bd21c7 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, 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. @@ -8,6 +8,8 @@ Lors de la configuration du dépôt d'infrastructure, il est possible de choisir ![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. + ## Visualisation dans ArgoCD Le déploiement se fait automatiquement par ArgoCD. Une fois qu'un dépôt d'infrastructure est synchronisé, il convient de se rendre sur le service ArgoCD depuis la liste des services.