8.3 Artifacts and versioning
In short: An artifact is the output you keep from a build: a container image.
An artifact is the output you keep from a build: a container image, a jar, a zip of static files. Pipelines should promote artifacts, not "rebuild from memory on the server."
Versioning habits (beginner):
- Prefer image tags like
badge-api:0.3.1orbadge-api:sha-a3f2c1over onlylatest. - Record which git commit produced the artifact (commit SHA in tag or label).
- Keep a short release note: what changed, how to roll back (previous tag).
| Weak | Stronger |
|---|---|
| Deploy "whatever is on the VM folder" | Deploy image sha-a3f2c1 |
Only tag latest |
Immutable tag + optional latest pointer |
| No rollback plan | Previous known-good tag ready |
What you see in a healthy team: the deploy ticket or README says exactly which tag is in staging and which is in production.
Practice task
Invent three image tags for badge API after commits that add health, badge list, and a bugfix. Which tag would you roll back to if the third broke lunch traffic?