Zero-downtime delivery · 4 / 10 ·
A private registry and tag rules
A private registry holds images you do not send to the public internet. The lab uses registry.titikterang.local:5000.
Two tag shapes
- Live release:
v1.2.3 - Candidate:
v1.2.4-dev
The playbook refuses to push a candidate onto a live production slot. The rule is simple: a tag without a -dev suffix is a release that already passed tests.
- A git push starts the path.
- The base image, then the app image, is built.
- The image is pushed to registry.titikterang.local:5000.
- CI runs ansible-playbook against the idle slot.
Push the image only after the base build and the app build succeed. The playbook then pulls that same tag.