TestingOpsDocumentation

Version upgrade (Docker)

Upgrade a Docker Compose installation to a new release

Releases are listed in the release notes. From the kit directory:

./upgrade.sh 2026.11.0

What it does, in order:

  1. Backup — backup.sh (database dump, application data, configuration, license).
  2. Version — writes TESTINGOPS_VERSION=2026.11.0 to .env (the previous .env is kept as .env.bak-<old>).
  3. Pull — docker compose pull migrate app.
  4. Restart — docker compose up -d; the migrate service runs the schema migrations and exits, then app starts.
  5. Health — waits for /api/health.
  6. Prune — removes images other than the new and the previous version.

Downtime is the application restart (about 30–60 seconds, longer on releases with many migrations). The front end keeps the requests waiting instead of returning errors during that window.

Manual upgrade

./backup.sh
sed -i 's/^TESTINGOPS_VERSION=.*/TESTINGOPS_VERSION=2026.11.0/' .env
docker compose pull && docker compose up -d
docker compose logs migrate

Rollback

Migrations are forward-only. To roll back a release:

Registry access

Pulling a new version needs the registry credentials from the installation. If the credentials expired, log in again (docker login <registry>) and rerun upgrade.sh.