taints

package
v1.30.0-beta.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 12, 2024 License: Apache-2.0 Imports: 6 Imported by: 210

Documentation

Overview

package taints implements utilities for working with taints

Index

Constants

View Source
const (
	MODIFIED  = "modified"
	TAINTED   = "tainted"
	UNTAINTED = "untainted"
)

Variables

This section is empty.

Functions

func AddOrUpdateTaint added in v1.8.0

func AddOrUpdateTaint(node *v1.Node, taint *v1.Taint) (*v1.Node, bool, error)

AddOrUpdateTaint tries to add a taint to annotations list. Returns a new copy of updated Node and true if something was updated false otherwise.

func CheckIfTaintsAlreadyExists added in v1.8.0

func CheckIfTaintsAlreadyExists(oldTaints []v1.Taint, taints []v1.Taint) string

CheckIfTaintsAlreadyExists checks if the node already has taints that we want to add and returns a string with taint keys.

func CheckTaintValidation added in v1.23.0

func CheckTaintValidation(taint v1.Taint) error

CheckTaintValidation checks if the given taint is valid. Returns error if the given taint is invalid.

func DeleteTaint added in v1.8.0

func DeleteTaint(taints []v1.Taint, taintToDelete *v1.Taint) ([]v1.Taint, bool)

DeleteTaint removes all the taints that have the same key and effect to given taintToDelete.

func DeleteTaintsByKey added in v1.8.0

func DeleteTaintsByKey(taints []v1.Taint, taintKey string) ([]v1.Taint, bool)

DeleteTaintsByKey removes all the taints that have the same key to given taintKey

func ParseTaints added in v1.8.0

func ParseTaints(spec []string) ([]v1.Taint, []v1.Taint, error)

ParseTaints takes a spec which is an array and creates slices for new taints to be added, taints to be deleted. It also validates the spec. For example, the form `<key>` may be used to remove a taint, but not to add one.

func RemoveTaint added in v1.8.0

func RemoveTaint(node *v1.Node, taint *v1.Taint) (*v1.Node, bool, error)

RemoveTaint tries to remove a taint from annotations list. Returns a new copy of updated Node and true if something was updated false otherwise.

func TaintExists added in v1.8.0

func TaintExists(taints []v1.Taint, taintToFind *v1.Taint) bool

TaintExists checks if the given taint exists in list of taints. Returns true if exists false otherwise.

func TaintKeyExists added in v1.24.0

func TaintKeyExists(taints []v1.Taint, taintKeyToMatch string) bool

TaintKeyExists checks if the given taint key exists in list of taints. Returns true if exists false otherwise.

func TaintSetDiff added in v1.8.0

func TaintSetDiff(taintsNew, taintsOld []v1.Taint) (taintsToAdd []*v1.Taint, taintsToRemove []*v1.Taint)

TaintSetDiff finds the difference between two taint slices and returns all new and removed elements of the new slice relative to the old slice. for example: input: taintsNew=[a b] taintsOld=[a c] output: taintsToAdd=[b] taintsToRemove=[c]

func TaintSetFilter added in v1.8.0

func TaintSetFilter(taints []v1.Taint, fn func(*v1.Taint) bool) []v1.Taint

TaintSetFilter filters from the taint slice according to the passed fn function to get the filtered taint slice.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL