HomeProduct wikiBackups, recovery and updates
Hosting & recovery 3 min read

Backups, recovery and updates

Protect the installation, distinguish portable exports from backups and apply releases deliberately.

Choose the right protection

OptionPurposeImportant boundary
Campaign export/importTransfer portable contentMay omit private history and adjust ownership
Campaign snapshotCampaign recovery pointNot the entire host or module installation state
Full installation backupRecover data, private media and configuration togetherRequires a consistent database/file set
Universal VTT exportExchange a map sceneOmits most game and automation state

Availability depends on permissions and host options. Before restoring campaign content, preserve the current state and read the consequences shown by the interface.

Make a full backup

  1. Arrange a maintenance window and stop writes, including ASGI/Runner and maintenance processes.

  2. Copy the configured SQLite database with associated journal/WAL files when present, private media and installed package files, optional compendiums and required configuration/trust keys.

  3. Preserve .env privately and record the matching code version and lock file. Include recovery/updates state when preserving an installation for rollback.

  4. Restore into a separate writable folder first, with paths pointing to the copy.

  5. Verify login, a campaign, representative uploads and required modules before directing players there.

The default database is data/gravewright.sqlite3, not a root db.sqlite3. A database without its matching media is incomplete. Never publish backups or secrets with site/application source.

Apply an update

The owner can open the library notification bell and choose View update, or go to Administration → Updates. Review installed/available versions and release notes, create a backup, then choose the install action when ready. Keep the Runner open while download, verification, dependency preparation, backup, migration and restart complete. Table connections are interrupted during the change; the page reloads after the expected version is confirmed.

The bell is informational; it does not automatically authorize an installation. Installed release notes remain available offline. Direct ASGI deployments require their operator's update procedure rather than assuming the local Runner workflow applies.

Manual replacement and recovery

Stop the Runner, preserve .env, configured data/media, local extensions and recovery state, replace application files with the verified full release and rerun the platform installer. Updates to a reissued ZIP with the same version need manual installation because the updater compares versions.

If recovery fails, keep transaction and backup directories and inspect diagnostics. Do not delete them or restore old code over a newer migrated database. Restore matching code, database and media together.

Pending Blueprint Delay/Timer jobs are excluded from exports, snapshots and copies but included in a full database backup. A restored database may resume expired work at startup. When inspecting a recovery copy, the operator can disable its automation worker until they intentionally resume it.