feat: Add annotation to provision public secret data only#676
feat: Add annotation to provision public secret data only#676
Conversation
|
This should basically be ready to go, but is currently blocked on https://github.com/stackabletech/decisions/issues/78. |
| )] | ||
| pub cert_manager_cert_lifetime: Option<Duration>, | ||
|
|
||
| // TODO (@Techassi): Name to be decided. Will potentially be renamed. |
There was a problem hiding this comment.
Can you please document the new attribute in https://docs.stackable.tech/home/stable/secret-operator/volume/#_attributes?
There was a problem hiding this comment.
Yes, I will add the appropriate documentation once the exact name and value of this annotation has been decided.
There was a problem hiding this comment.
Can you please also add a small kuttl test?
A simple Secret with only ca.crt and asserting that a pod with pkcs12 format comes up is totally sufficient to me.
I'm also happy to add one, in that case just ping me here
There was a problem hiding this comment.
Yes, sure thing. I will add an integration test asap.
Implements stackabletech/issues#547, based on decision in https://github.com/stackabletech/decisions/issues/78.
This PR introduces a new annotation for secret volumes, called
secrets.stackable.tech/tbdwhich allows users to only request public/non-sensitive data instead of the complete secret material like currently. For backwards compatibility, this defaults tofalse(potentially different value based on decision).The following use-cases are now supported:
autoTlsbackend, but only provision theca.crt/truststore.p12for the consumer.kerberosKeytabbackend, but only provision thekrb5.conffor the consumerk8sSearchbackend to select Secrets which contain non-sensitive data only and support parsing the partial set of files. Explicitly requesting a format currently fails due to stricter parsing. This strict parsing is disabled whensecrets.stackable.tech/tbdis usedThe following example details the last use-case mentioned above:
(Note: The CA was generated by the default
tlsSecretClass)