-
Notifications
You must be signed in to change notification settings - Fork 502
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement container image signing MVP (KEP-3031) #2383
Comments
About this:
Yes, https://github.com/sigstore/cosign/tree/main/pkg/cosign |
As per slack discussion thread, @jimangel, @palnabarun and @xmudrii are happy to work on this one with guidance from @puerco and myself. I think a good first step would be to implement the raw code bits converted from the keyless signing doc in release-sdk and add (mockable) unit tests for them. This way we can define an API and review if it would fit for the MVP (and future) use cases.
My question was more is it made to be used as a library. So to say, we can contribute back if we encounter any usability issues anyway. 👍 |
RelEng team, It is so great to see this coming together. @saschagrunert are there are any meeting minutes / slack channels / calendar invites I can subscribe to so that I can keep up to date with the progress and discussions around this KEP implementation? /sig security |
Thank you for considering to help us with the effort! We have a Release Engineering meeting every other week where we discuss the current progress and sync: https://bit.ly/k8s-releng-meeting |
Only #2417 is missing, otherwise we can consider this one as done 🥳 |
We can do #2417 in a different scope. Since 1.24 will be released today we now consider this EPIC is done. 🥳 |
We're now able to implement a Minimum Viable Product (MVP) after the merge of the release artifact signing KEP proposal:
This issue is part of #2227, which covers the whole topic from a release engineering perspective.
As a first iteration, we decided to sign the official Kubernetes container images using cosigns keyless signing feature: https://github.com/sigstore/cosign/blob/main/KEYLESS.md
Implementation details and constraints:
with keeping in mind that it will be reused by krel as well as kpromo
cc @kubernetes/release-engineering
Tracking the effort
KEP updates
Implementation into release-sdk
sign
package skeleton kubernetes-sigs/release-sdk#19Sign
API intoSignImage
andSignFile
kubernetes-sigs/release-sdk#20(Out of scope of the MVP but still required for follow-ups)
Verify
API intoVerifyImage
andVerifyFile
kubernetes-sigs/release-sdk#32(Out of scope of the MVP but still required for follow-ups)
sign
package kubernetes-sigs/release-sdk#24IsImageSignedInternal
kubernetes-sigs/release-sdk#46Integration into krel
krel stage
#2397Integration into the Container Image Promoter
Infrastructure changes
roles/iam.serviceAccountTokenCreator
to image staging service accounts k8s.io#3299latest-canary
image tag and manifests for canary promotion jobs kubernetes-sigs/promo-tools#529End user documentation
Other relevant implementations
The text was updated successfully, but these errors were encountered: