> ## 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.

# Environnements dev, staging et production

> Conventions de suffixes et répartition des environnements entre le cluster de production et le cluster de développement.

Cette page explique les suffixes que vous rencontrerez dans les noms d'Applications, de fichiers de valeurs et de bases, et où tournent physiquement les différents environnements.

## Les suffixes

| Suffixe | Sens |
| - | - |
| `dev` | Développement |
| `stg` (ou `staging`, forme ancienne) | Pré-production |
| `prod` (ou `production`) | Production |
| `sandbox` | Bac à sable, pour des démonstrations ou des essais clients |
| `canary` | Variante de test recevant une part du trafic |
| `passive` | Instance en attente, non servie |

> [!NOTE]
>
> La convention à retenir pour tout nouveau fichier est **`stg`**, pas `staging`.

## Où tournent les environnements

Notre plateforme distingue trois environnements principaux (dev, stg, prod) plus quelques variantes. Comprendre où tourne quoi évite bien des malentendus.

```mermaid theme={null}
flowchart LR
    subgraph PROD["Cluster PRODUCTION (Helsinki, 4 nœuds)"]
        A["dev"]
        B["stg"]
        C["prod"]
    end
    subgraph DEV["Cluster DEV (95.216.101.177:6443)"]
        D["étudiants / labos"]
    end
    subgraph STG["Serveurs staging (Nuremberg)"]
        E["usage à clarifier"]
    end
    PROD --> DEV
    PROD --> STG
```

Le **cluster de production** héberge, en pratique, les trois environnements : de nombreuses applications `-dev-` et `-stg-` y sont déployées à côté des applications de production, isolées par le nom et par le namespace.

Il existe par ailleurs un **cluster de développement** distinct, à l'adresse `https://95.216.101.177:6443`, piloté par un dépôt séparé (`argo-staging`).

## Le piège du dossier vald/

> [!WARNING]
>
> Le dépôt argo-production contient un dossier `vald/` avec 7 Applications qui pointent vers le **cluster de développement**. Ce sont des copies d'archive : elles ne concernent pas la production et **il ne faut pas les modifier en pensant agir sur le cluster principal**.

## Répartition à clarifier

> [!NOTE]
>
> La répartition exacte des rôles entre le cluster de production, le cluster de développement et les serveurs de staging reste à clarifier. Demandez à l'équipe infrastructure lors de votre arrivée.

## Règles de bonne conduite

> **Utilisez stg**
>
> Toujours utiliser `stg` dans les nouveaux noms de fichiers et d'Applications. La forme `staging` est une forme ancienne à éviter.

> **Jamais de test en prod**
>
> Ne jamais tester en production, même "juste pour voir". Utilisez dev ou stg pour toute expérimentation.

> **Documentez l'inhabituel**
>
> Documenter tout déploiement dans un environnement inhabituel pour que l'équipe puisse suivre et auditer.

> **Vérifiez le contexte**
>
> Vérifier votre contexte kubectl avant tout `apply`. Un `kubectl config current-context` évite bien des erreurs.


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