Skip to content

ci: Use the docker image digest instead of ':latest' tag in jobs

This avoids a potential race condition when multiple pipelines are running in parallel and could update/overwrite the ':latest' tag.

For example, with two pipelines, A and B, the following could occur:

A1 -> build image and update :latest tag to digest DigestA
B1 -> build image and update :latest tag to digest DigestB
A2 -> use image from :latest tag assuming it's DigestA, but it's actually DigestB

Explicitly using the image id avoids the problem:

A1 -> build image with digest DigestA and update :latest tag
B1 -> build image with digest DigestB and update :latest tag
A2 -> use image with digest DigestA
B2 -> use image with digest DigestB

Signed-off-by: Alexandros Frantzis

Edited by Alexandros Frantzis

Merge request reports