kubernetesk8s.io/kubernetes/plugin/pkg/admission/podnodeselector Index | Files

package podnodeselector

import "k8s.io/kubernetes/plugin/pkg/admission/podnodeselector"

Index

Constants

const PluginName = "PodNodeSelector"

PluginName is a string with the name of the plugin

Variables

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

func Register

func Register(plugins *admission.Plugins)

Register registers a plugin

Types

type Plugin

type Plugin struct {
	*admission.Handler
	// contains filtered or unexported fields
}

Plugin is an implementation of admission.Interface.

func NewPodNodeSelector

func NewPodNodeSelector(clusterNodeSelectors map[string]string) *Plugin

NewPodNodeSelector initializes a podNodeSelector

func (*Plugin) Admit

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

Validate ensures that the pod node selector is allowed

func (*Plugin) ValidateInitialization

func (p *Plugin) ValidateInitialization() error

ValidateInitialization verifies the object has been properly initialized

Source Files

admission.go

Version
v1.33.0 (latest)
Published
Apr 23, 2025
Platform
linux/amd64
Imports
16 packages
Last checked
3 hours ago

Tools for package owners.