quest'n'click 4.5.0 · r1

Construite pour quest'n'click 4.5.0, révision r1. Si elle est publiée, et laquelle est la courante, est dit par publication.json.

Mettre à jour le serveur et vérifier l’état après une migration

English · Type : procédure · Public : administrateur · Contexte : Studio hébergé · Statut : prête · S'applique depuis : 4.2.3

Le Studio Server (Studio d'équipe hébergé) · contrat : expérimental · vérifié par la CI (matrice de support de la 4.4.0, 2026-10-23) : Postgres, S3 et Keycloak en CI ; Chromium et Firefox (job studio-hosted) ; WebKit sous macOS, à la main seulement · vérifications automatiques : jobs studio-hosted, studio-install-smoke ; plan de CI studioHosted ; 3 fichiers de tests · passes humaines : studio-hosted pas faite (#149), studio-collab pas faite (#150), studio-preview pas faite (#166), studio-assets-hosted pas faite (#167), studio-mcp-remote pas faite (#196), studio-oidc-generic pas faite (#197) · limites connues : aucune listée sur cette page

Mettre à jour le Studio Server, c’est le même redéploiement à chevauchement que tout autre, d’une nouvelle version : les migrations de la base tournent au démarrage de la nouvelle instance. Cette page met à jour les deux applications et vérifie, ensuite, que le jeu est là où il était.

Ce que vous obtenez

Les deux applications à la nouvelle version, la base migrée à son schéma, la révision du jeu inchangée par la mise à jour, les écritures de nouveau servies, et une sauvegarde faite juste avant, pour revenir en arrière s’il le faut.

Contexte et versions

Prérequis

Où lancer les commandes

git, clever deploy : sur votre machine, dans le dépôt du moteur. La sauvegarde : dans un shell sur l’application studio (clever ssh --alias my-game-studio).

Étapes

  1. Lisez le CHANGELOG de la version, et les notes de mise à jour pour le contenu du jeu (Mettre à jour). Listez les nouvelles migrations de la base entre les deux versions :

    # sur votre machine, dans le dépôt du moteur
    git diff --name-only v4.3.1 v4.4.0 -- studio-server/migrations
    

    Les migrations tournent au démarrage de la nouvelle instance, pendant que l’ancienne peut encore servir. Si l’une change ce que lit l’ancienne version (une colonne qu’elle utilise renommée ou supprimée, pas une nouvelle table), arrêtez d’abord l’ancienne, clever stop --alias my-game-studio, et acceptez la minute sans Studio.

  1. Faites une sauvegarde dans le bucket et notez sa révision :

    # dans un shell sur l'application studio (clever ssh --alias my-game-studio)
    cd "$APP_HOME" && npm run -s studio-server -- backup --to-bucket
    
  1. Déployez le worker d’abord, puis le studio, à la même version :

    # sur votre machine, dans le dépôt du moteur, à la nouvelle version
    clever deploy --alias my-game-worker
    clever deploy --alias my-game-studio
    

    Tant que les deux ne sont pas à la nouvelle version, un job peut être refusé ; le Studio refuse alors l’écriture qu’il vérifiait (il échoue fermé, un 503) plutôt que de la laisser passer.

  1. Regardez /readyz revenir à 200 sur la nouvelle instance (instance dans la ligne lease-taken), vérifiez que la révision n’a pas changé, et faites une écriture.

Mesure · upgrade-run Le déploiement du studio avec la migration 0012 : « 1 minute and 29 seconds ». La révision a continué : 52 avant la bascule, 53 pour la première écriture après ; les écritures suivantes ont répondu en 164 à 600 ms. Les écritures ont été refusées 2 min 23 s (cette version n’avait pas encore la passation du bail ; Redéploiements), et une écriture retentée 70 fois avec son identifiant a été appliquée une fois.

  • date: 2026-10-19
  • version: 4.2.2
  • volume: le jeu de démo, révision 52 ; une nouvelle migration
  • conditions: phase B du déploiement de référence, 52e68932 → c66fbf56 sur main avant le tag 4.2.3 (package.json disait 4.2.2) ; worker puis studio, applications XS, PostgreSQL DEV, région par
  • source: QUALIF-4.2.3-REFERENCE.md §1 et §5

Résultat attendu, et comment le vérifier

Vérifiez, dans cet ordre :

Erreurs fréquentes

SymptômeCauseCorrection
Écritures en 503 « the edit cannot be judged now: … » un momentLe worker encore à l’ancienne version, ou en redéploiementAttendez les deux déploiements ; déployez le worker d’abord
Écritures refusées environ 2 min 30Le premier déploiement vers une version qui porte la passation du bail, depuis une qui ne la porte pasAttendu, une fois (Redéploiements)
too many connections dans les journaux pendant le déploiementPlan PostgreSQL DEVUn plan plus grand
L’ancienne instance consigne des erreurs sur une colonne que la migration a changéeUne migration qui change ce que lit l’ancienne versionLa prochaine fois, clever stop d’abord (étape 1)

Fichiers ou données modifiés

Le schéma de la base (nouvelles migrations appliquées, notées dans schema_migrations), une nouvelle sauvegarde sous backups/, le commit déployé des deux applications.

Reprise ou retour arrière

Redéployer la version précédente ne marche que tant qu’elle lit encore la base migrée ; un serveur plus ancien refuse une base dont le schéma est plus récent que le sien. Sinon, revenir en arrière, c’est restaurer la sauvegarde de l’étape 2 dans un nouvel add-on, avec la version précédente : Limites du retour arrière.

Références


Modifier la source de cette page · Signaler une erreur