Quand l’updater tourne sur l’installation, la mise à jour dans l’interface est la plus pratique – elle est décrite dans Mettre à jour avec l’updater. Voici la même procédure en ligne de commande ; elle fonctionne toujours, avec ou sans l’updater. Toutes les commandes se lancent dans le répertoire d’installation.
Mettre à jour vers une nouvelle version
Chaque version est un nouveau paquet. Soit vous le passez directement à la commande :
./draften update --bundle /chemin/vers/draften-<nouvelle version>.tar
soit vous le copiez dans le dossier updates/ et lancez :
./draften update <nouvelle version>
La mise à jour n’entraîne aucune interruption et se déroule étape par étape :
- elle vérifie le paquet avec les clés de la version installée – avant d’en utiliser quoi que ce soit,
- elle enregistre un dump de la base de données dans
backups/(les trois derniers sont conservés ; le nombre est fixé parDRAFTEN_BACKUPSdans.env), - elle exécute les migrations de la base de données,
- elle remplace les workers,
- elle démarre la nouvelle version du web à côté de celle qui sert, et bascule dessus dès qu’elle est saine.
Si la nouvelle version ne devient pas saine, rien n’est basculé et la précédente continue de servir.
Un paquet peut aussi être vérifié sans être installé :
./draften check draften-<nouvelle version>.tar
Après la mise à jour
./draften status
indique quelle couleur du web sert, la version et l’état de santé des deux couleurs et des workers, l’état HTTPS et les dumps de la base de données. Sur la page Exploitation, les workers se signalent et le verdict est « la capacité suffit ». Ce qu’a changé la version se trouve dans le fichier NOTES.md.
Revenir à la version précédente
La version qui servait avant la mise à jour continue de tourner, sans trafic. Vous basculez dessus immédiatement :
./draften rollback
C’est possible parce que la base de données reste lisible aussi pour la version précédente.
Revenir à une version encore plus ancienne
Cela ne passe que par la restauration d’un dump de la base de données. Chaque dump de backups/ porte dans son nom la version qui tournait au moment où il a été créé :
docker compose stop worker
gunzip -c backups/<heure>-<version>.sql.gz | docker compose exec -T db sh -c 'mariadb -uroot -p"$MARIADB_ROOT_PASSWORD"'
./draften update <version> --no-backup
Tout ce qui s’est passé dans draften après la création du dump est perdu.
Un dump antérieur au remplacement de la clé de chiffrement ne s’ouvre qu’avec la clé précédente, MASTER_KEY_PREVIOUS dans .env. Voir Sauvegarde et restauration.
Une machine sans internet
L’updater télécharge les nouvelles versions avec la clé de la licence. Une machine sans internet ne télécharge rien : copiez le paquet dans updates/ et mettez à jour avec ./draften update <version> – ou bien l’updater vous le propose depuis là, dans l’interface.
Ce qui ne change pas de soi-même
- Les paramètres, consignes et sources des assistants se trouvent dans la base de données, et une mise à jour n’y touche pas.
- Le client secret d’une inscription Entra expire selon la durée pour laquelle vous l’avez émis ; renouvelez-le dans l’interface (Organisation → Intégrations → Nouveau secret), pas par une mise à jour.
- Le certificat HTTPS, vous le renouvelez vous-même :
./draften certificate new.pem new.key.