utils

package
v0.21.0 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2021 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

Log is a null logger instance.

Functions

func ApplyAll

func ApplyAll(ctx context.Context, cl client.Client, updates map[client.Object]Updater) error

ApplyAll applies all the update objects in the list called updates.

func B64Decode

func B64Decode(s *core.Secret, key string) (string, error)

B64Decode decodes the provided secret

func BoolPtr

func BoolPtr(b bool) *bool

BoolPtr returns a pointer to the passed boolean.

func CopySecret

func CopySecret(ctx context.Context, client client.Client, srcSecretRef types.NamespacedName, dstSecretRef types.NamespacedName) (error, *core.Secret)

CopySecret will return a *core.Secret that is copied from a source NamespaceName and intended to be applied into a destination NamespacedName

func GetClowderNamespace

func GetClowderNamespace() (string, error)

func GetCustomLabeler

func GetCustomLabeler(labels map[string]string, nn types.NamespacedName, baseResource obj.LabeledClowdObject) func(metav1.Object)

GetCustomLabeler takes a set of labels and returns a labeler function that will apply those labels to a reource.

func GetKindFromObj

func GetKindFromObj(scheme *runtime.Scheme, object runtime.Object) (schema.GroupVersionKind, error)

GetKindFromObj retrieves GVK associated with registered runtime.Object

func IntMax

func IntMax(listStrInts []string) (string, error)

IntMax takes a list of integers as strings and returns the maximum.

func IntMin

func IntMin(listStrInts []string) (string, error)

IntMin takes a list of integers as strings and returns the minimum.

func IntPtr

func IntPtr(i int) *int

IntPtr returns a pointer to the passed integer.

func ListMerge

func ListMerge(listStrs []string) (string, error)

ListMerge takes a list comma separated strings and performs a set union on them.

func MakeLabeler

func MakeLabeler(nn types.NamespacedName, labels map[string]string, obj obj.LabeledClowdObject) func(metav1.Object)

MakeLabeler creates a function that will label objects with metadata from the given namespaced name and labels

func MakePVC

func MakePVC(pvc *core.PersistentVolumeClaim, nn types.NamespacedName, labels map[string]string, size string, baseResource obj.ClowdObject)

MakePVC takes a PVC object and applies the correct ownership and labels to it.

func MakeService

func MakeService(service *core.Service, nn types.NamespacedName, labels map[string]string, ports []core.ServicePort, baseResource obj.ClowdObject, nodePort bool)

MakeService takes a service object and applies the correct ownership and labels to it.

func RandString

func RandString(n int) string

RandString generates a random string of length n

func RandStringLower added in v0.21.0

func RandStringLower(n int) string

RandStringLower generates a random string of length n

func UpdateAllOrErr

func UpdateAllOrErr(ctx context.Context, cl client.Client, nn types.NamespacedName, obj ...client.Object) (map[client.Object]Updater, error)

UpdateAllOrErr queries the client for a range of objects and returns updater objects for each.

Types

type Updater

type Updater bool

Updater is a bool type object with functions attached that control when a resource should be created or applied.

func UpdateOrErr

func UpdateOrErr(err error) (Updater, error)

UpdateOrErr returns an update object if the err supplied is nil.

func (*Updater) Apply

func (u *Updater) Apply(ctx context.Context, cl client.Client, obj client.Object) error

Apply will apply the resource if it already exists, and create it if it does not. This is based on the bool value of the Update object.

Jump to

Keyboard shortcuts

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