package namespace
import "k8s.io/apiserver/pkg/admission/plugin/webhook/predicates/namespace"
Package namespace defines the utilities that are used by the webhook plugin to decide if a webhook should be applied to an object based on its namespace.
Index ¶
- type Matcher
- func (m *Matcher) GetNamespace(name string) (*v1.Namespace, error)
- func (m *Matcher) GetNamespaceLabels(attr admission.Attributes) (map[string]string, error)
- func (m *Matcher) MatchNamespaceSelector(p NamespaceSelectorProvider, attr admission.Attributes) (bool, *apierrors.StatusError)
- func (m *Matcher) Validate() error
- type NamespaceSelectorProvider
Types ¶
type Matcher ¶
type Matcher struct { NamespaceLister corelisters.NamespaceLister Client clientset.Interface }
Matcher decides if a request is exempted by the NamespaceSelector of a webhook configuration.
func (*Matcher) GetNamespace ¶
func (*Matcher) GetNamespaceLabels ¶
GetNamespaceLabels gets the labels of the namespace related to the attr.
func (*Matcher) MatchNamespaceSelector ¶
func (m *Matcher) MatchNamespaceSelector(p NamespaceSelectorProvider, attr admission.Attributes) (bool, *apierrors.StatusError)
MatchNamespaceSelector decideds whether the request matches the namespaceSelctor of the webhook. Only when they match, the webhook is called.
func (*Matcher) Validate ¶
Validate checks if the Matcher has a NamespaceLister and Client.
type NamespaceSelectorProvider ¶
type NamespaceSelectorProvider interface { // GetNamespaceSelector gets the webhook NamespaceSelector field. GetParsedNamespaceSelector() (labels.Selector, error) }
Source Files ¶
doc.go matcher.go
- Version
- v0.33.0 (latest)
- Published
- Apr 23, 2025
- Platform
- linux/amd64
- Imports
- 11 packages
- Last checked
- 1 hour ago –
Tools for package owners.