Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( MutatingWebhookSetup = injectorSetup{ // contains filtered or unexported fields } ValidatingWebhookSetup = injectorSetup{ // contains filtered or unexported fields } APIServiceSetup = injectorSetup{ // contains filtered or unexported fields } CRDSetup = injectorSetup{ // contains filtered or unexported fields } )
Functions ¶
func OwningCertForSecret ¶
func OwningCertForSecret(secret *corev1.Secret) *types.NamespacedName
OwningCertForSecret gets the name of the owning certificate for a given secret, returning nil if no such object exists.
Types ¶
type CertInjector ¶
type CertInjector interface { // NewTarget creates a new InjectTarget containing an empty underlying object. NewTarget() InjectTarget }
CertInjector knows how to create an instance of an InjectTarget for some particular type of inject target. For instance, an implementation might create a InjectTarget containing an empty MutatingWebhookConfiguration. The underlying API object can be populated (via AsObject) using client.Client#Get, and then CAs can be injected with Injectables (representing the various individual webhooks in the config) retrieved with Services.
type InjectTarget ¶
type InjectTarget interface { // AsObject returns this injectable as an object. // It should be a pointer suitable for mutation. AsObject() client.Object // SetCA sets the CA of this target to the given certificate data (in the standard // PEM format used across Kubernetes). In cases where multiple CA fields exist per // target (like admission webhook configs), all CAs are set to the given value. SetCA(data []byte) }
InjectTarget is a Kubernetes API object that has one or more references to Kubernetes Services with corresponding fields for CA bundles.
type Injectable ¶
type Injectable interface { }
Injectable is a point in a Kubernetes API object that represents a Kubernetes Service reference with a corresponding spot for a CA bundle. TODO: either add some actual functionality or remove this empty interface