Skip to content

Commit 1b7795c

Browse files
authored
upgrade alpha to v2
1 parent 71bed72 commit 1b7795c

File tree

1 file changed

+65
-0
lines changed

1 file changed

+65
-0
lines changed

docs/upgrade/alpha-to-v2.md

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# Migration Sesame : Alpha → v2
2+
3+
Ce guide décrit la procédure complète pour mettre à niveau une instance Sesame Alpha vers la version 2 à l’aide des deux scripts fournis dans le gist suivant : <https://gist.github.com/tacxou/6631662c8fbe6aa8357f08a61cb55004>.
4+
5+
## Pré-requis
6+
- Sauvegarde récente et vérifiée (base de données, fichiers `configs/`, `certificates/`, volumes applicatifs).
7+
- Python 3.9+ et `pip` disponibles sur la machine d’administration.
8+
- Librairie Python `requests` installée (`pip install requests`).
9+
- Accès réseau et droits suffisants pour arrêter/démarrer les conteneurs Sesame ainsi que pour appeler l’API Sesame (token d’administration nécessaire pour le script de nettoyage des cycles de vie).
10+
11+
> 💡 Positionnez-vous dans le répertoire racine du projet Sesame (`/data/sesame`) pour l’ensemble des commandes.
12+
13+
## 1. Arrêter les conteneurs Sesame
14+
```bash
15+
cd /data/sesame
16+
docker compose down
17+
```
18+
19+
Vérifiez qu’aucun conteneur applicatif `sesame-*` ne reste actif (à l’exception éventuelle des services de base de données).
20+
21+
## 2. Lancer le script d’upgrade
22+
1. Téléchargez les scripts depuis le gist (à exécuter une seule fois ou lors de chaque mise à jour si vous souhaitez les renouveler) :
23+
```bash
24+
mkdir -p scripts
25+
curl -fsSL "https://gist.githubusercontent.com/tacxou/6631662c8fbe6aa8357f08a61cb55004/raw/sesame-upgrade-to-v2.py" -o scripts/sesame-upgrade-to-v2.py
26+
curl -fsSL "https://gist.githubusercontent.com/tacxou/6631662c8fbe6aa8357f08a61cb55004/raw/sesame-cleanup-lifecycle.py" -o scripts/sesame-cleanup-lifecycle.py
27+
chmod +x scripts/sesame-upgrade-to-v2.py scripts/sesame-cleanup-lifecycle.py
28+
```
29+
2. Exécutez le script d’upgrade (il demandera des confirmations si nécessaire) :
30+
```bash
31+
python3 scripts/sesame-upgrade-to-v2.py
32+
```
33+
34+
Le script demande l'arrêt les services restants avant de démarrer, puis sauvegarde le `docker-compose.yml` d’origine (`docker-compose.yml.v1.backup`) et met à jour la configuration pour Sesame v2.
35+
36+
## 3. Redémarrer les conteneurs
37+
```bash
38+
docker compose up -d
39+
docker compose ps
40+
```
41+
42+
Attendez que les services critiques (API, orchestrator, web) soient en bonne santé avant de poursuivre.
43+
44+
## 4. Nettoyer les cycles de vie
45+
Le script de nettoyage requiert un token d’API Sesame avec les droits d’administration. Vous pouvez soit :
46+
- fournir le token via la variable d’environnement `SESAME_API_TOKEN`,
47+
- ou stocker le token dans un fichier `.env` compatible (clé `SESAME_API_TOKEN=`).
48+
49+
Exemple d’exécution en utilisant un fichier `.env` existant :
50+
```bash
51+
python3 scripts/sesame-cleanup-lifecycle.py --env-file configs/sesame-taiga-crawler/.env
52+
```
53+
54+
Par défaut, le script cible l’API sur `http://127.0.0.1:3333/api`. Adaptez l’URL si nécessaire (`--base-url https://votre-hote/api`). Pour effectuer un test à blanc, ajoutez `--dry-run`.
55+
56+
## 5. Vérifications post-migration
57+
- Contrôlez les logs : `docker compose logs -f sesame-orchestrator`.
58+
- Validez l’accès à l’interface Sesame et le fonctionnement des workflows.
59+
- Confirmez que les cycles de vie des identités sont à l’état attendu (`O`).
60+
- Conservez la sauvegarde `docker-compose.yml.v1.backup` tant que la migration n’est pas définitivement validée.
61+
62+
## 6. Nettoyage optionnel
63+
- Supprimez les scripts dans `scripts/` afin de ne pas les relancer si la migration à bien été faites.
64+
65+
La migration Alpha → v2 est terminée lorsque les services sont stables et que toutes les vérifications métiers sont validées.

0 commit comments

Comments
 (0)