Files
vtuber-awards/docs/release-process.md
T
AzuTear 441ef2b850
CI - Build & Verify / Build, Typecheck & Hygiene (push) Successful in 59s
CI - Build & Verify / Deploy to award.noveria.net (push) Failing after 53s
Update release notes and deploy workspace
2026-06-29 17:49:54 +02:00

3.3 KiB

Release Process

This document defines release expectations for VTuber Star Awards.

For daily delivery flow, see workflow.md. For branch policy, see branching.md. For release checklist, see CHECKLISTS.md.

Release Principles

  • Keep releases small when practical.
  • Prefer repeatable automation over manual server edits.
  • Validate before and after deployment.
  • Review migration and configuration risk before deploy.
  • Keep rollback or recovery options ready.

Release Types

Type Description
Standard Planned change deployed from main through the Gitea workflow.
Hotfix Urgent production correction with the smallest safe change.
Documentation-only Docs update that does not require runtime deployment validation.
Infrastructure Runtime, hosting, Docker, database, network, or secret/config change.

Versioning

The frontend package version lives in frontend/package.json. The deploy workflow appends build metadata and writes VITE_BUILD_VERSION plus VITE_BUILD_DATE before building production assets.

Readiness

Before releasing application changes:

  • frontend build passes;
  • backend Release build passes;
  • git diff --check passes;
  • migration operations are reviewed;
  • target environment config and secrets are present;
  • demo, seed, CORS, and production safety settings are understood;
  • UI or API behavior has targeted validation evidence.

Automated Deployment

The production deploy job in .gitea/workflows/ci.yaml runs on main pushes and manual dispatches.

Pipeline responsibilities:

  1. Verify repository hygiene.
  2. Build backend and frontend.
  3. Resolve version/build metadata.
  4. Verify production host layout.
  5. Sync repository contents to the production app directory.
  6. Write frontend build metadata.
  7. Build Docker images.
  8. Write a PostgreSQL predeploy backup.
  9. Apply EF Core migrations.
  10. Recreate api and web services.
  11. Verify API health, database connectivity, pending migrations, and frontend assets.

Smoke Tests

Minimum automated smoke signals:

  • https://award.noveria.net/api/health
  • https://award.noveria.net/api/health/database
  • pendingMigrations is empty;
  • frontend index serves current JS and CSS assets;
  • JS asset contains expected build version metadata.

Add manual smoke checks for the changed workflow, especially for admin, auth/permissions, voting, nomination, clip review, showact, sponsor, or content management changes. Use end-to-end-smoke.md as the standard core-workflow smoke checklist.

Rollback And Recovery

Rollback planning should address:

  • application artifact rollback or redeploy from a previous commit;
  • database restore or forward-fix path;
  • configuration rollback;
  • disabling demo/seed/optional public features;
  • communication of degraded public workflows.

If a migration is destructive or hard to reverse, document the recovery path before deployment.

Post-Release Review

After production-impacting releases:

  • confirm health checks and relevant public/admin workflows;
  • check for unexpected database migration state;
  • record incidents or anomalies;
  • update docs, checklists, or ADRs when release steps drift;
  • add follow-up tests or runbooks for gaps found during release.