helper

package
v1.7.11 Latest Latest
Warning

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

Go to latest
Published: Nov 22, 2017 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddOrUpdateTaint

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

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

func AddOrUpdateTolerationInPod

func AddOrUpdateTolerationInPod(pod *v1.Pod, toleration *v1.Toleration) bool

AddOrUpdateTolerationInPod tries to add a toleration to the pod's toleration list. Returns true if something was updated, false otherwise.

func AddOrUpdateTolerationInPodSpec

func AddOrUpdateTolerationInPodSpec(spec *v1.PodSpec, toleration *v1.Toleration) bool

AddOrUpdateTolerationInPodSpec tries to add a toleration to the toleration list in PodSpec. Returns true if something was updated, false otherwise.

func AddToNodeAddresses

func AddToNodeAddresses(addresses *[]v1.NodeAddress, addAddresses ...v1.NodeAddress)

AddToNodeAddresses appends the NodeAddresses to the passed-by-pointer slice, only if they do not already exist

func DeleteTaint

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

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

func DeleteTaintsByKey

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

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

func GetAccessModesAsString

func GetAccessModesAsString(modes []v1.PersistentVolumeAccessMode) string

GetAccessModesAsString returns a string representation of an array of access modes. modes, when present, are always in the same order: RWO,ROX,RWX.

func GetAccessModesFromString

func GetAccessModesFromString(modes string) []v1.PersistentVolumeAccessMode

GetAccessModesAsString returns an array of AccessModes from a string created by GetAccessModesAsString

func GetAffinityFromPodAnnotations

func GetAffinityFromPodAnnotations(annotations map[string]string) (*v1.Affinity, error)

GetAffinityFromPodAnnotations gets the json serialized affinity data from Pod.Annotations and converts it to the Affinity type in api. TODO: remove when alpha support for affinity is removed

func GetAvoidPodsFromNodeAnnotations

func GetAvoidPodsFromNodeAnnotations(annotations map[string]string) (v1.AvoidPods, error)

func GetMatchingTolerations

func GetMatchingTolerations(taints []v1.Taint, tolerations []v1.Toleration) (bool, []v1.Toleration)

Returns true and list of Tolerations matching all Taints if all are tolerated, or false otherwise.

func GetPersistentVolumeClaimClass

func GetPersistentVolumeClaimClass(claim *v1.PersistentVolumeClaim) string

GetPersistentVolumeClaimClass returns StorageClassName. If no storage class was requested, it returns "".

func GetPersistentVolumeClass

func GetPersistentVolumeClass(volume *v1.PersistentVolume) string

GetPersistentVolumeClass returns StorageClassName.

func GetStorageNodeAffinityFromAnnotation

func GetStorageNodeAffinityFromAnnotation(annotations map[string]string) (*v1.NodeAffinity, error)

GetStorageNodeAffinityFromAnnotation gets the json serialized data from PersistentVolume.Annotations and converts it to the NodeAffinity type in api. TODO: update when storage node affinity graduates to beta

func IsOpaqueIntResourceName

func IsOpaqueIntResourceName(name v1.ResourceName) bool

IsOpaqueIntResourceName returns true if the resource name has the opaque integer resource prefix.

func IsServiceIPRequested

func IsServiceIPRequested(service *v1.Service) bool

this function aims to check if the service's cluster IP is requested or not

func IsServiceIPSet

func IsServiceIPSet(service *v1.Service) bool

this function aims to check if the service's ClusterIP is set or not the objective is not to perform validation here

func LoadBalancerStatusDeepCopy

func LoadBalancerStatusDeepCopy(lb *v1.LoadBalancerStatus) *v1.LoadBalancerStatus

TODO: make method on LoadBalancerStatus?

func LoadBalancerStatusEqual

func LoadBalancerStatusEqual(l, r *v1.LoadBalancerStatus) bool

TODO: make method on LoadBalancerStatus?

func NodeSelectorRequirementsAsSelector

func NodeSelectorRequirementsAsSelector(nsm []v1.NodeSelectorRequirement) (labels.Selector, error)

NodeSelectorRequirementsAsSelector converts the []NodeSelectorRequirement api type into a struct that implements labels.Selector.

func OpaqueIntResourceName

func OpaqueIntResourceName(name string) v1.ResourceName

OpaqueIntResourceName returns a ResourceName with the canonical opaque integer prefix prepended. If the argument already has the prefix, it is returned unmodified.

func PersistentVolumeClaimHasClass

func PersistentVolumeClaimHasClass(claim *v1.PersistentVolumeClaim) bool

PersistentVolumeClaimHasClass returns true if given claim has set StorageClassName field.

func PodAnnotationsFromSysctls

func PodAnnotationsFromSysctls(sysctls []v1.Sysctl) string

PodAnnotationsFromSysctls creates an annotation value for a slice of Sysctls.

func RemoveTaint

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

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

func StorageNodeAffinityToAlphaAnnotation

func StorageNodeAffinityToAlphaAnnotation(annotations map[string]string, affinity *v1.NodeAffinity) error

Converts NodeAffinity type to Alpha annotation for use in PersistentVolumes TODO: update when storage node affinity graduates to beta

func SysctlsFromPodAnnotation

func SysctlsFromPodAnnotation(annotation string) ([]v1.Sysctl, error)

SysctlsFromPodAnnotation parses an annotation value into a slice of Sysctls.

func SysctlsFromPodAnnotations

func SysctlsFromPodAnnotations(a map[string]string) ([]v1.Sysctl, []v1.Sysctl, error)

SysctlsFromPodAnnotations parses the sysctl annotations into a slice of safe Sysctls and a slice of unsafe Sysctls. This is only a convenience wrapper around SysctlsFromPodAnnotation.

func TaintExists

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

func TolerationsTolerateTaint

func TolerationsTolerateTaint(tolerations []v1.Toleration, taint *v1.Taint) bool

TolerationsTolerateTaint checks if taint is tolerated by any of the tolerations.

func TolerationsTolerateTaintsWithFilter

func TolerationsTolerateTaintsWithFilter(tolerations []v1.Toleration, taints []v1.Taint, applyFilter taintsFilterFunc) bool

TolerationsTolerateTaintsWithFilter checks if given tolerations tolerates all the taints that apply to the filter in given taint list.

Types

This section is empty.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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