> ## Documentation Index
> Fetch the complete documentation index at: https://infra-docs.kaeyros.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Le dépôt argo-production : arborescence et rôle

> Structure du dépôt de référence et distinction entre dossiers surveillés par ArgoCD et dossiers appliqués manuellement.

Le dépôt `git@github.com:kaeyros-analytics-org/argo-production.git`, branche `main`, est la source de vérité unique de l'état du cluster. Il contient à la fois les manifestes surveillés automatiquement par ArgoCD et les fichiers appliqués manuellement.

## Arborescence du dépôt

```bash Arborescence theme={null}
tree
.
├── base.yaml
├── apps/
├── charts/
├── values/
├── databases/
├── secrets/
├── treafik.yaml
├── vald/
└── docs/
```

| Dossier / Fichier | Rôle | Surveillance |
| - | - | - |
| `base.yaml` | Déclare l'Application racine `production` | Appliqué une fois manuellement |
| `apps/` | Contient les manifestes ArgoCD Application | Surveillé par ArgoCD (via base.yaml) |
| `charts/` | Charts Helm internes (rollout-v2, antid-v2, etc.) | Surveillé par ArgoCD |
| `values/` | Fichiers de valeurs par application et environnement | Surveillé par ArgoCD |
| `databases/` | Manifestes de bases de données (PostgreSQL, etc.) | **Non surveillé : appliqué à la main** |
| `secrets/` | Secrets Kubernetes chiffrés ou sensibles | **Non surveillé : appliqué à la main** |
| `treafik.yaml` | Configuration Traefik (Ingress Controller) | **Non surveillé : appliqué à la main** |
| `vald/` | Configuration Vald (moteur de recherche vectorielle) | À confirmer selon le contexte |
| `docs/` | Documentation interne du dépôt | Non appliqué au cluster |

> [!WARNING]
>
> **Attention** : modifier un fichier dans `databases/` ou `secrets/` ne déclenche **aucune action** d'ArgoCD. Ces dossiers ne sont pas inclus dans le chemin surveillé par l'Application racine. Vous devez les appliquer manuellement avec `kubectl apply`.

## Trois dossiers non surveillés par ArgoCD

1. **`databases/`** : les bases de données sont gérées en dehors du cycle GitOps automatique. Cela permet un contrôle fin sur les opérations sensibles (création, migration, suppression).
2. **`secrets/`** : les secrets ne sont pas versionnés dans le cycle automatique pour des raisons de sécurité. Ils sont appliqués manuellement après vérification.
3. **`treafik.yaml`** : la configuration de l'Ingress Controller Traefik est appliquée manuellement car elle touche à l'infrastructure réseau partagée.

> [!TIP]
>
> Pour toute modification dans `apps/`, `charts/` ou `values/`, ArgoCD détecte le changement dans les minutes qui suivent le push sur `main` et réconcilie automatiquement.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.