Documentation ¶
Index ¶
- Constants
- Variables
- func Register(plugins *admission.Plugins)
- type Plugin
- func (p *Plugin) Admit(ctx context.Context, a admission.Attributes, o admission.ObjectInterfaces) error
- func (p *Plugin) SetExternalKubeClientSet(client kubernetes.Interface)
- func (p *Plugin) SetExternalKubeInformerFactory(f informers.SharedInformerFactory)
- func (p *Plugin) Validate(ctx context.Context, a admission.Attributes, o admission.ObjectInterfaces) error
- func (p *Plugin) ValidateInitialization() error
Constants ¶
View Source
const PluginName = "PodNodeSelector"
PluginName is a string with the name of the plugin
Variables ¶
View Source
var NamespaceNodeSelectors = []string{"scheduler.alpha.kubernetes.io/node-selector"}
NamespaceNodeSelectors is for assigning node selectors labels to namespaces. Default value is the annotation key scheduler.alpha.kubernetes.io/node-selector
Functions ¶
Types ¶
type Plugin ¶
Plugin is an implementation of admission.Interface.
func NewPodNodeSelector ¶
NewPodNodeSelector initializes a podNodeSelector
func (*Plugin) Admit ¶
func (p *Plugin) Admit(ctx context.Context, a admission.Attributes, o admission.ObjectInterfaces) error
Admit enforces that pod and its namespace node label selectors matches at least a node in the cluster.
func (*Plugin) SetExternalKubeClientSet ¶
func (p *Plugin) SetExternalKubeClientSet(client kubernetes.Interface)
SetExternalKubeClientSet sets the plugin's client
func (*Plugin) SetExternalKubeInformerFactory ¶
func (p *Plugin) SetExternalKubeInformerFactory(f informers.SharedInformerFactory)
SetExternalKubeInformerFactory configures the plugin's informer factory
func (*Plugin) Validate ¶
func (p *Plugin) Validate(ctx context.Context, a admission.Attributes, o admission.ObjectInterfaces) error
Validate ensures that the pod node selector is allowed
Click to show internal directories.
Click to hide internal directories.