Skip to content

VOL 00 / CH 08 / LESSON 04

8.4 Release and Deployment Quick Reference

Type: Reference page, no required sequential reading Prerequisites: Full lifecycle and CI/CD You are ready to continue when: you can quickly locate artifacts, versions, deployments, and rollback evidence

End-to-End Quick Reference

StageTypical ActionsMandatory Evidence
Integrationcheckout, compile, test, verifycommit SHA, test results
PackagingMaven package / verifyJAR, hash, build log
Image builddocker buildimage ID, base image, SBOM
Releasepush artifact/imageregistry digest, provenance
Deploymentupdate target declarationenvironment, time, operator, old/new digest
Traffic rollouthealth, smoke, gradual traffic increasemetrics, logs, error budget
Rollbackrestore known good versiontrigger conditions, target digest, verification results

Local Check

bash
mvn --batch-mode verify
sha256sum target/*.jar
docker image inspect name:tag
docker container inspect name
docker logs --tail 100 name

These snippets target existing projects and containers; replace name:tag and name. When multiple JARs match a wildcard, explicitly select the primary artifact. The macOS hash command is available at shasum -a 256.

Registry Template

bash
printf '%s' "$REGISTRY_TOKEN" | docker login REGISTRY \
  --username "$REGISTRY_USER" --password-stdin
docker tag local:candidate registry.example.com/owner/image:sha-COMMIT
docker push registry.example.com/owner/image:sha-COMMIT
docker logout REGISTRY

REGISTRY, the user variable, commit marker, and registry.example.com/owner/image are placeholders. The login host must match the push target, and image repository paths use lowercase. Inject variables only in controlled terminals or CI environments. Do not write real tokens into the repository, command examples, or shell history. Deployment records use the digest returned by push, rather than movable tags alone.

Pre-Release Check

  • [ ] Testing, static analysis, and vulnerability strategies have passed;
  • [ ] Candidate artifacts are built only once, and their hashes and digests are recorded;
  • [ ] Configurations and secrets belong to the correct environment;
  • [ ] Database migrations are compatible with rollbacks;
  • [ ] Health, smoke, metrics, and log queries are prepared;
  • [ ] Known good versions and rollback permissions are available;
  • [ ] Concurrency deployment and manual gate strategies are clearly defined.

Common Errors

ErrorCheck First
Address already in useHost listening and container port publishing
no main manifest attributeJAR manifest, main class, and repackage configuration
registry deniedRepository name, login credentials, token scope, and package access relationships
Deployment still serves the old versionActual digest, container image ID, proxy and browser caching
Rollback still failsDatabase/configuration compatibility, external dependencies, and caching and traffic routing

Built with VitePress | Software Systems Atlas