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_clusterrole.go
- add_clusterrolebinding.go
- add_customresourcedefinitions.go
- add_hcpnamespace.go
- add_hiveownership.go
- add_hostedcluster.go
- add_hostedcontrolplane.go
- add_imagecontentpolicies.go
- add_ingressconfig_hook.go
- add_ingresscontroller.go
- add_manifestworks.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.