Add a literal, runnable VPS release runbook
VPS_STAGING_PLAN.md describes the release process at a policy level; the changelog table narrates what happened after each release. Neither is a step-by-step "how" a person (or Guntis) could actually follow without already knowing the process from having run it. This is that document -- copy-pasteable commands, in order, parameterized by commit SHA. Writing it surfaced a real regression: earlier releases (throughef64895) retained the release tarball under /srv/weathertool/releases/<sha>/ and backed up .env.staging before every edit; tonight's releases (0be325f,9bab93d,001b014) did neither -- I'd been deleting the transfer copy from /tmp after each deploy and sed-ing .env.staging directly with no backup. Practical cost: rolling back to any of tonight's releases would have meant rebuilding from git history and re-transferring, instead of just re-pointing .env.staging at an already-present image. Closed the gap for the current live release (001b014) retroactively -- exported it directly on the VPS (checksum matches the exact bytes shipped tonight, confirming no drift) and backed up the current .env.staging -- and the runbook restores both habits going forward.
This commit is contained in:
@@ -40,6 +40,7 @@ This directory contains the working documentation for the WeatherTool modernizat
|
||||
- [Continuous integration](CONTINUOUS_INTEGRATION.md) — Gitea Actions topology, isolation boundary, and the current CI workflow.
|
||||
- [Third-party notices](THIRD_PARTY_NOTICES.md) — licenses and attribution for adapted interface components.
|
||||
- [Temporary VPS staging plan](VPS_STAGING_PLAN.md) — isolation, authentication, prepared deployment bundle, release, backup, verification, and rollback model for external user testing.
|
||||
- [VPS release runbook](VPS_RELEASE_RUNBOOK.md) — the literal, copy-pasteable command sequence for shipping and rolling back a release, step by step.
|
||||
|
||||
## Documentation rules
|
||||
|
||||
|
||||
Reference in New Issue
Block a user