Upgrading the hub¶
The short version¶
- Take a backup first — backup-restore.md. Migrations are forward-only; the backup IS the rollback.
- Point at the new image and restart:
- selfhost: set
LUMNIK_VERSIONin.env(or pull latest), thendeploy/selfhost/up.sh— compose recreates the hub container. - Helm: bump
hub.image.tag,helm upgrade. - Flyway migrates at boot. The startup probe allows ~150s; watch
docker compose -f docker-compose.selfhost.yml logs -f hubuntil healthy.
Rules the migrations follow¶
- One shared Flyway version namespace across
core,connectorandplatform(they run in a single session) — a release never reuses a number. - Forward-only: there are no down-migrations. Rolling back = restoring the pre-upgrade backup (and losing writes made since — hence step 1).
If the boot fails mid-migration¶
Flyway stops at the failing version; the hub never reports ready and old data is
untouched by later migrations. Capture logs hub, restore the backup if you need
service back immediately, and report the failing version.
Known scar¶
Changing the public origin (TLS façade hostname, port, issuer path) during an upgrade orphans JIT identities — see the scar note in backup-restore.md.