utils

package
v0.8.3 Latest Latest
Warning

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

Go to latest
Published: May 30, 2023 License: Apache-2.0 Imports: 17 Imported by: 4

Documentation

Overview

Package utils contains shared utility methods for the Liqonet package.

Index

Constants

View Source
const (
	// LogInfoLevel -> level associated with informational messages.
	LogInfoLevel = 0
	// LogDebugLevel -> level associated with debug messages.
	LogDebugLevel = 4
)

Variables

This section is empty.

Functions

func FromResult added in v0.3.0

func FromResult(result controllerutil.OperationResult) klog.Level

FromResult returns a logger level, given the result of a CreateOrUpdate operation.

func GetClusterID added in v0.3.2

func GetClusterID(ctx context.Context, cl kubernetes.Interface, namespace string) (string, error)

GetClusterID returns the local clusterID.

func GetClusterIdentityWithControllerClient added in v0.3.2

func GetClusterIdentityWithControllerClient(ctx context.Context,
	controllerClient client.Client, namespace string) (discoveryv1alpha1.ClusterIdentity, error)

GetClusterIdentityWithControllerClient returns cluster identity using a client.Client client.

func GetClusterIdentityWithNativeClient added in v0.3.2

func GetClusterIdentityWithNativeClient(ctx context.Context,
	nativeClient kubernetes.Interface, namespace string) (discoveryv1alpha1.ClusterIdentity, error)

GetClusterIdentityWithNativeClient returns cluster identity using a kubernetes.Interface client.

func GetClusterName added in v0.3.2

func GetClusterName(ctx context.Context, k8sClient kubernetes.Interface, namespace string) (string, error)

GetClusterName returns the local cluster name.

func GetNodeClusterID added in v0.3.2

func GetNodeClusterID(selectedNode *corev1.Node) (string, bool)

GetNodeClusterID returns the clusterID given a virtual node.

func GetOwnerByKind added in v0.3.0

func GetOwnerByKind(ownerReferences *[]v1.OwnerReference, kind string) *v1.OwnerReference

func GetRestConfig added in v0.3.0

func GetRestConfig(configPath string) (config *rest.Config, err error)

GetRestConfig returns a rest.Config object to initialize a client to the target cluster.

func IsNodeReady added in v0.3.0

func IsNodeReady(node *corev1.Node) bool

IsNodeReady returns true if the passed node has the NodeReady condition = True, false otherwise.

func IsVirtualNode added in v0.3.2

func IsVirtualNode(node *corev1.Node) bool

IsVirtualNode returns true if the passed node is a virtual node, false otherwise.

func MergeNodeSelector added in v0.3.2

func MergeNodeSelector(ns1, ns2 *corev1.NodeSelector) corev1.NodeSelector

MergeNodeSelector merges two nodeSelectors. Every MatchExpression of the first one must be merged with all the MatchExpressions of the second one: n first MatchExpressions. m second MatchExpressions. m * n MergedNodeSelector MatchExpressions. For each term in the first selector, AND each term of the second selector: (A || B) && (C || D) -> (A && C) || (A && D) || (B && C) || (B && D).

func RandomJitter added in v0.7.0

func RandomJitter(duration, maxJitter time.Duration) time.Duration

RandomJitter returns a duration between duration and duration + maxJitter.

func RandomString added in v0.4.0

func RandomString(n int) string

RandomString generates a random string of the given length.

func UserConfig

func UserConfig(configPath string) (*rest.Config, error)

func WriteFile

func WriteFile(filepath string, content []byte) error

Types

This section is empty.

Directories

Path Synopsis
Package apiserver contains utility functions to configure the connection parameters to the Kubernetes API server to advertise to peering clusters.
Package apiserver contains utility functions to configure the connection parameters to the Kubernetes API server to advertise to peering clusters.
Package args contains shared utility methods for argument parsing and validation.
Package args contains shared utility methods for argument parsing and validation.
Package authenticationtoken contains shared utility methods for the management of the authentication token.
Package authenticationtoken contains shared utility methods for the management of the authentication token.
Package clients contains utility methods to create and manage clients with custom features.
Package clients contains utility methods to create and manage clients with custom features.
Package csr contains the logic required to generate, create and approve Certificate Signing Requests (CSR) for the Virtual Kubelet instances.
Package csr contains the logic required to generate, create and approve Certificate Signing Requests (CSR) for the Virtual Kubelet instances.
Package errors contains utility functions to deal with errors.
Package errors contains utility functions to deal with errors.
Package foreigncluster contains shared utility methods to handle the ForeignCluster resources.
Package foreigncluster contains shared utility methods to handle the ForeignCluster resources.
Package getters contains utility functions to get k8s resources and at the same time to extract data from the same resources.
Package getters contains utility functions to get k8s resources and at the same time to extract data from the same resources.
Package labels label selectors used throughout the liqo code in order to get k8s resources.
Package labels label selectors used throughout the liqo code in order to get k8s resources.
Package mapper contains the utility functions for k8s resource REST mapping.
Package mapper contains the utility functions for k8s resource REST mapping.
Package maps contains utility functions to manage maps.
Package maps contains utility functions to manage maps.
Package peeringconditionsutils contains shared utility methods to handle the PeeringCondition resource.
Package peeringconditionsutils contains shared utility methods to handle the PeeringCondition resource.
Package pod contains utilities to deal with Pod objects.
Package pod contains utilities to deal with Pod objects.
Package restcfg contains utility functions to deal with rest configs.
Package restcfg contains utility functions to deal with rest configs.
Package slice contains utility functions to manage slices.
Package slice contains utility functions to manage slices.
Package syncset provides a structure describing a set of elements safe for concurrent usage.
Package syncset provides a structure describing a set of elements safe for concurrent usage.
Package testutil contains some methods useful to mock components while testing
Package testutil contains some methods useful to mock components while testing
Package trace contains utility functions to deal with traces.
Package trace contains utility functions to deal with traces.

Jump to

Keyboard shortcuts

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