Skip to main content

Close a release with smoke and rollback evidence

Building an image does not prove that users can use a healthy path. Bind the tested commit to the running image and run a real DB-reading smoke after readiness.

5 viewsAbout 2 min read
Table of contents

Building an image does not prove that users can use a healthy path. Bind the tested commit to the running image and run a real DB-reading smoke after readiness.

Minimal sequence

  1. Require a clean worktree and explicit services.
  2. Build or reuse the Git-SHA image.
  3. Replace only target services with --no-deps --force-recreate.
  4. Check container readiness and each service's real read smoke.
  5. On failure, restore the previous image as a rollback tag and re-check readiness.

SSR and the static mirror

Docker SSR and a static mirror are separate artifacts. A DB-only change can leave the mirror with an old export, so verify console seed, SSR public reads, export contents, static deployment, and both locale routes separately. Preserve success and rollback logs with the release tag.

Where the evidence closes

Stage Weak evidence Evidence of completion
Build An image was created Image tag matches the verified Git SHA
Start Process is running Readiness, including required dependencies, passes
Feature Static /health returns 200 A DB-backed read and a core user route respond
Failure A previous image tag exists The previous image passes readiness and smoke again
Mirror Static deployment succeeds Source/export field drift is zero and public routes work
commit ──build──▶ immutable image ──replace──▶ readiness
   ▲                                      │
   └──────── rollback + smoke ◀── failure ┘

Deleting a failed new container does not complete a rollback. The previous instance must prove that it serves requests again, and smoke must use a representative read that does not mutate data.

Related course: Bind a verified commit to a release and image

More in quality

All in this category →

Was this article helpful?