Documentation
¶
Index ¶
- Constants
- Variables
- func New(args runtime.Object, handle frameworktypes.Handle) (frameworktypes.Plugin, error)
- func RegisterDefaults(scheme *runtime.Scheme) error
- func SetDefaults_RemovePodsViolatingNodeAffinityArgs(obj runtime.Object)
- func ValidateRemovePodsViolatingNodeAffinityArgs(obj runtime.Object) error
- type RemovePodsViolatingNodeAffinity
- type RemovePodsViolatingNodeAffinityArgs
Constants ¶
const PluginName = "RemovePodsViolatingNodeAffinity"
Variables ¶
var ( SchemeBuilder = runtime.NewSchemeBuilder() AddToScheme = localSchemeBuilder.AddToScheme )
Functions ¶
func New ¶
func New(args runtime.Object, handle frameworktypes.Handle) (frameworktypes.Plugin, error)
New builds plugin from its arguments while passing a handle
func RegisterDefaults ¶ added in v0.26.0
RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.
func SetDefaults_RemovePodsViolatingNodeAffinityArgs ¶ added in v0.26.0
SetDefaults_RemovePodsViolatingNodeAffinityArgs TODO: the final default values would be discussed in community
func ValidateRemovePodsViolatingNodeAffinityArgs ¶ added in v0.26.0
ValidateRemovePodsViolatingNodeAffinityArgs validates RemovePodsViolatingNodeAffinity arguments
Types ¶
type RemovePodsViolatingNodeAffinity ¶
type RemovePodsViolatingNodeAffinity struct {
// contains filtered or unexported fields
}
RemovePodsViolatingNodeAffinity evicts pods on the node which violate node affinity
func (*RemovePodsViolatingNodeAffinity) Deschedule ¶
func (d *RemovePodsViolatingNodeAffinity) Deschedule(ctx context.Context, nodes []*v1.Node) *frameworktypes.Status
func (*RemovePodsViolatingNodeAffinity) Name ¶
func (d *RemovePodsViolatingNodeAffinity) Name() string
Name retrieves the plugin name
type RemovePodsViolatingNodeAffinityArgs ¶ added in v0.26.0
type RemovePodsViolatingNodeAffinityArgs struct { metav1.TypeMeta `json:",inline"` Namespaces *api.Namespaces `json:"namespaces"` LabelSelector *metav1.LabelSelector `json:"labelSelector"` NodeAffinityType []string `json:"nodeAffinityType"` }
RemovePodsViolatingNodeAffinityArgs holds arguments used to configure RemovePodsViolatingNodeAffinity plugin.
func (*RemovePodsViolatingNodeAffinityArgs) DeepCopy ¶ added in v0.26.0
func (in *RemovePodsViolatingNodeAffinityArgs) DeepCopy() *RemovePodsViolatingNodeAffinityArgs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemovePodsViolatingNodeAffinityArgs.
func (*RemovePodsViolatingNodeAffinityArgs) DeepCopyInto ¶ added in v0.26.0
func (in *RemovePodsViolatingNodeAffinityArgs) DeepCopyInto(out *RemovePodsViolatingNodeAffinityArgs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RemovePodsViolatingNodeAffinityArgs) DeepCopyObject ¶ added in v0.26.0
func (in *RemovePodsViolatingNodeAffinityArgs) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.