Use OIDC based keyless signing for stable version images
In !1481 (merged), we added signing of docker images to the workflow. However, the stable version images, being built in dev.gitlab.org, is signed with a keypair and not OIDC. We should modify the release process so that they get signed in a keyless manner using OIDC so that users can verify the signatures in a more convenient way.
Proposal
- Add a new
coutnersign-imagesjob to the tag pipeline in GitLab.com that will- Get the list of public images that has been pushed to
registry.gitlab.combysync-images-gitlab-comjob in the dev.gitlab.org tag pipeline - For each image in the list, verify that the image has been signed by the public key
- Sign the image using GitLab.com OIDC provider
-
Countersign the image and both signatures using OIDC and push everything to
reigstry.gitlab.com
- Get the list of public images that has been pushed to
- As part of
sync-images-gitlab-comjob in the tag pipeline running in dev.gitlab.org project- Find out the corresponding tag pipeline in GitLab.com (Wait for it if it isn't present yet)
- Trigger the
countersign-imagesjob in the tag pipeline in GitLab.com.
Edited by Balasankar 'Balu' C