 Documentation
      ¶
      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
      ¶
      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.