util

package
v0.2.8 Latest Latest
Warning

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

Go to latest
Published: Dec 11, 2019 License: Apache-2.0 Imports: 23 Imported by: 272

Documentation

Index

Constants

View Source
const (
	// CharSet defines the alphanumeric set for random string generation
	CharSet = "0123456789abcdefghijklmnopqrstuvwxyz"
	// MachineListFormatDeprecationMessage notifies the user that the old
	// MachineList format is no longer supported
	MachineListFormatDeprecationMessage = "Your MachineList items must include Kind and APIVersion"
)

Variables

View Source
var (
	ErrNoCluster                 = fmt.Errorf("no %q label present", clusterv1.MachineClusterLabelName)
	ErrUnstructuredFieldNotFound = fmt.Errorf("field not found")
)

Functions

func ClusterToInfrastructureMapFunc

func ClusterToInfrastructureMapFunc(gvk schema.GroupVersionKind) handler.ToRequestsFunc

ClusterToInfrastructureMapFunc returns a handler.ToRequestsFunc that watches for Cluster events and returns reconciliation requests for an infrastructure provider object.

func Contains

func Contains(list []string, strToSearch string) bool

Contains returns true if a list contains a string.

func Copy

Copy deep copies a Machine object.

func EnsureOwnerRef

func EnsureOwnerRef(ownerReferences []metav1.OwnerReference, ref metav1.OwnerReference) []metav1.OwnerReference

EnsureOwnerRef makes sure the slice contains the OwnerReference.

func ExecCommand

func ExecCommand(name string, args ...string) (string, error)

ExecCommand Executes a local command in the current shell.

func Filter

func Filter(list []string, strToFilter string) (newList []string)

Filter filters a list for a string.

func GetClusterByName

func GetClusterByName(ctx context.Context, c client.Client, namespace, name string) (*clusterv1.Cluster, error)

GetClusterByName finds and return a Cluster object using the specified params.

func GetClusterFromMetadata

func GetClusterFromMetadata(ctx context.Context, c client.Client, obj metav1.ObjectMeta) (*clusterv1.Cluster, error)

GetClusterFromMetadata returns the Cluster object (if present) using the object metadata.

func GetControlPlaneMachines

func GetControlPlaneMachines(machines []*clusterv1.Machine) (res []*clusterv1.Machine)

GetControlPlaneMachines returns a slice containing control plane machines.

func GetControlPlaneMachinesFromList

func GetControlPlaneMachinesFromList(machineList *clusterv1.MachineList) (res []*clusterv1.Machine)

GetControlPlaneMachinesFromList returns a slice containing control plane machines.

func GetDefaultKubeConfigPath

func GetDefaultKubeConfigPath() string

GetDefaultKubeConfigPath returns the standard user kubeconfig

func GetMachineByName

func GetMachineByName(ctx context.Context, c client.Client, namespace, name string) (*clusterv1.Machine, error)

GetMachineByName finds and return a Machine object using the specified params.

func GetMachineIfExists

func GetMachineIfExists(c client.Client, namespace, name string) (*clusterv1.Machine, error)

GetMachineIfExists gets a machine from the API server if it exists

func GetNamespaceOrDefault

func GetNamespaceOrDefault(namespace string) string

GetNamespaceOrDefault returns the default namespace if given empty output.

func GetOwnerCluster

func GetOwnerCluster(ctx context.Context, c client.Client, obj metav1.ObjectMeta) (*clusterv1.Cluster, error)

GetOwnerCluster returns the Cluster object owning the current resource.

func GetOwnerMachine

func GetOwnerMachine(ctx context.Context, c client.Client, obj metav1.ObjectMeta) (*clusterv1.Machine, error)

GetOwnerMachine returns the Machine object owning the current resource.

func HasOwner

func HasOwner(refList []metav1.OwnerReference, apiVersion string, kinds []string) bool

HasOwner checks if any of the references in the passed list match the given apiVersion and one of the given kinds

func HasOwnerRef

func HasOwnerRef(ownerReferences []metav1.OwnerReference, ref metav1.OwnerReference) bool

HasOwnerRef returns true if the OwnerReference is already in the slice.

func Home

func Home() string

Home returns the user home directory.

func IsControlPlaneMachine

func IsControlPlaneMachine(machine *clusterv1.Machine) bool

IsControlPlaneMachine checks machine is a control plane node.

func IsNodeReady

func IsNodeReady(node *v1.Node) bool

IsNodeReady returns true if a node is ready.

func MachineToInfrastructureMapFunc

func MachineToInfrastructureMapFunc(gvk schema.GroupVersionKind) handler.ToRequestsFunc

MachineToInfrastructureMapFunc returns a handler.ToRequestsFunc that watches for Machine events and returns reconciliation requests for an infrastructure provider object.

func PointsTo

func PointsTo(refs []metav1.OwnerReference, target *metav1.ObjectMeta) bool

PointsTo returns true if any of the owner references point to the given target

func Poll

func Poll(interval, timeout time.Duration, condition wait.ConditionFunc) error

func PollImmediate

func PollImmediate(interval, timeout time.Duration, condition wait.ConditionFunc) error

func RandomString

func RandomString(n int) string

RandomString returns a random alphanumeric string.

func RandomToken

func RandomToken() string

RandomToken returns a random token.

func Retry

func Retry(fn wait.ConditionFunc, initialBackoffSec int) error

func UnstructuredUnmarshalField

func UnstructuredUnmarshalField(obj *unstructured.Unstructured, v interface{}, fields ...string) error

UnstructuredUnmarshalField is a wrapper around json and unstructured objects to decode and copy a specific field value into an object.

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