| ▲ | gcr a day ago | ||||||||||||||||||||||
The secret is held by the metadata server that the CI instance has access to Or: the deployment service knows the identity of the instance, so its secret is its private key Or, how PyPI does it: the deployment service coordinates with the trusted CI/CD service to learn the identity of the machine (like its IP address, or a trusted assertion of which repository it’s running on), so the secret is handled in however that out-of-band verification step happens. (PyPI communicates with Github Actions about which pipeline from which repository is doing the deployment, for example) It’s still just secrets all the way down | |||||||||||||||||||||||
| ▲ | mrweasel a day ago | parent | next [-] | ||||||||||||||||||||||
> The secret is held by the metadata server that the CI instance has access to But how does the metadata server know that the CI instance is allowed to access the secret? Especially when the CI/CD system is hosted at a 3rd. party. It needs to present some form of credentials. The CI system may also need permission or credentials for a private repository of packages or artifacts needed in the build process. For me, a CI/CD system needs two things: Secret management and the ability to run Bash. | |||||||||||||||||||||||
| |||||||||||||||||||||||
| ▲ | hinkley 18 hours ago | parent | prev [-] | ||||||||||||||||||||||
That is secret management. | |||||||||||||||||||||||
| |||||||||||||||||||||||