💡 Ce guide fait partie du pack Data Engineering
ℹ️ L'ensemble de la plateforme est conçue pour être « as code », ce qui signifie que chaque modification, y compris le déploiement d'un nouveau code en production, est gérée par le code.
L'architecture de déploiement de notre orchestrateur repose sur :
- deux conteneurs Dagster qui font partie de la plateforme (dagit & daemon) ;
- un ou deux conteneurs de déploiement user-code personnalisé pour l'hôpital et qui sera redéployé à chaque fois que le code dbt ou python sera modifié
- des conteneurs de dagster-run automatiquement lancés par Dagster lors d'une matérialisation
**L'objectif de cette page est de vous guider dans cette procédure de re-déploiement. **
- Ouvrez une Pull Request (PR) avec vos modifications dbt (ou dagster)
- **Une fois la PR validée et la CI verte, elle peut-être mergée **
Une fois la PR mergée, une action GitHub est déclenchée automatiquement pour créer l'image Dagster arkhn/dagster-code-<hopital> personnalisée.
L'image nouvellement créée est taguée avec une version `X.X.X` *(ex : **`1.12.0`**)*
L'action s'appelle docker publish et devrait prendre environ 2 minutes pour publier la nouvelle image.

Si la construction est réussie, un nouveau tag aura été créé dans votre référentiel, par exemple ici la 0.29.0 :

Notez ce tag (dans l'exemple `"0.29.0"`), car il sera utilisé dans les étapes suivantes pour déployer votre code dans votre environnement Arkhn de prod/dev.
1. **Mettez à jour la version de dagster-code utilisée**
Dans `deployment-
/argocd/apps/dagster-values.yaml`, mettez à jour le tag :
- Pour modifier l'image de production : mettre à jour `dagster_code_version`
- Pour modifier l'image de développement : mettre à jour `dagster_code_version_dev`
Exemple de fichier `dagster-values.yaml` :
```yaml
global:
dagster_code_image: "arkhn/dagster-code-"
dagster_code_version: "X.X.X" <-- Le tag à mettre à jour pour l'image de prod
dagster_code_version_dev: "dev"
```
Vous devez commit et push cette mise à jour du fichier `dagster-values.yaml`, puis la merge.
1. **Accédez à l'interface web Dagster depuis Arkhn Admin dans l'onglet *Orchestrateur* ou directement via l'url ****`/dagit`**
Dans la section Deployment, vous devriez voir :
- Dans name : le nouvelle version de votre image (par exemple : `dagster-code-azure:latest`)
- Dans Updated : *Updated x seconds ago*
