Mettre à niveau et revenir en arrière sur une application Sovrium
Les migrations de schéma sont en avant seulement — une migration publiée n'est jamais réécrite, et il n'y a pas de downgrade automatique. Une mise à niveau sûre s'accompagne donc toujours d'une sauvegarde restaurable.
Mettre à niveau
Sauvegardez d'abord (SQLite, ou un instantané de base sur Postgres), puis passez à la nouvelle version et redémarrez. La migration de schéma s'exécute au démarrage, dans une transaction, avant que l'app ne serve du trafic :
sqlite3 .sovrium/database.db ".backup '/backups/pre-upgrade.db'"
sovrium update # installation du binaire ; ou : docker pull ghcr.io/sovrium/sovrium:latest
sovrium stop && sovrium start app.ts
Si la migration échoue, la transaction revient en arrière et le serveur refuse de démarrer sur un schéma incohérent — vous n'êtes jamais laissé à moitié migré.
Revenir en arrière
Comme les migrations ne s'inversent pas, un rollback restaure les données d'avant la mise à niveau avec le binaire/l'image précédent :
sovrium stop
# réinstallez la version précédente (épinglez le tag / binaire d'où vous veniez)
cp /backups/pre-upgrade.db .sovrium/database.db && rm -f .sovrium/database.db-wal .sovrium/database.db-shm
sovrium start app.ts
Pour un zéro interruption, exécutez la nouvelle version comme seconde instance derrière votre proxy, vérifiez-la, puis basculez le trafic — en gardant l'ancienne instance jusqu'à ce que vous soyez confiant.
Suite
- Migrations de schéma — pourquoi les migrations publiées sont immuables.
- Sauvegarder & restaurer SQLite — la sauvegarde sur laquelle ce guide s'appuie.
- Référence CLI —
update,stopetstart.
Dernière mise à jour 21 juillet 2026
Cette documentation a été rédigée avec Claude Fable 5 (Anthropic) : des erreurs ou du contenu obsolète sont donc possibles. Sovrium est en bêta — les contributions et corrections sont les bienvenues.