Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var Webhooks = RegisteredWebhooks{}
Webhooks are all registered webhooks mapping name to hook
Functions ¶
Types ¶
type RegisteredWebhooks ¶
type RegisteredWebhooks map[string]WebhookFactory
type Webhook ¶
type Webhook interface { // Authorized will determine if the request is allowed Authorized(request admissionctl.Request) admissionctl.Response // GetURI returns the URI for the webhook GetURI() string // Validate will validate the incoming request Validate(admissionctl.Request) bool // Name is the name of the webhook Name() string // FailurePolicy is how the hook config should react if k8s can't access it // https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#failure-policy FailurePolicy() admissionregv1.FailurePolicyType // MatchPolicy mirrors validatingwebhookconfiguration.webhooks[].matchPolicy. // If it is important to the webhook, be sure to check subResource vs // requestSubResource. // https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#matching-requests-matchpolicy MatchPolicy() admissionregv1.MatchPolicyType // Rules is a slice of rules on which this hook should trigger Rules() []admissionregv1.RuleWithOperations // ObjectSelector uses a *metav1.LabelSelector to augment the webhook's // Rules() to match only on incoming requests which match the specific // LabelSelector. ObjectSelector() *metav1.LabelSelector // SideEffects are what side effects, if any, this hook has. Refer to // https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#side-effects SideEffects() admissionregv1.SideEffectClass // TimeoutSeconds returns an int32 representing how long to wait for this hook to complete // The timeout value must be between 1 and 30 seconds. // https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#timeouts TimeoutSeconds() int32 // Doc returns a string for end-customer documentation purposes. Doc() string // SyncSetLabelSelector returns the label selector to use in the SyncSet. // Return utils.DefaultLabelSelector() to stick with the default SyncSetLabelSelector() metav1.LabelSelector // ClassicEnabled will return true if the webhook should be deployed to OSD/ROSA Classic clusters ClassicEnabled() bool // HypershiftEnabled will return true if the webhook should be deployed to ROSA HCP clusters HypershiftEnabled() bool }
Webhook interface
Source Files ¶
- add_clusterlogging.go
- add_clusterrolebinding.go
- add_customresourcedefinitions.go
- add_hiveownership.go
- add_imagecontentpolicies.go
- add_ingressconfig_hook.go
- add_ingresscontroller.go
- add_namespace_hook.go
- add_networkpolicy.go
- add_node.go
- add_pod.go
- add_podimagespec.go
- add_prometheusrule.go
- add_regularuser.go
- add_scc.go
- add_sdnmigration.go
- add_service_hook.go
- add_serviceaccount.go
- add_techpreviewnoupgrade.go
- register.go
Click to show internal directories.
Click to hide internal directories.