util

package
v1.9.2 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, BSD-2-Clause, BSD-3-Clause, + 8 more Imports: 30 Imported by: 76

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func APIServerLocation

func APIServerLocation(ctx context.Context, platformClient platforminternalclient.PlatformInterface) (*url.URL, http.RoundTripper, string, error)

APIServerLocation returns a URL and transport which one can use to send traffic for the specified kube api server.

func APIServerLocationByCluster

func APIServerLocationByCluster(ctx context.Context, cluster *platformv1.Cluster) (*url.URL, http.RoundTripper, string, error)

APIServerLocationByCluster returns a URL and transport which one can use to send traffic for the specified cluster api server.

func BuildExternalClientSet

func BuildExternalClientSet(ctx context.Context, cluster *platformv1.Cluster, client platformversionedclient.PlatformV1Interface) (*kubernetes.Clientset, error)

BuildExternalClientSet creates the clientset of kubernetes by given cluster object and returns it.

func BuildExternalClientSetWithName

func BuildExternalClientSetWithName(ctx context.Context, platformClient platformversionedclient.PlatformV1Interface, name string) (*kubernetes.Clientset, error)

BuildExternalClientSetWithName creates the clientset of kubernetes by given cluster name and returns it.

func BuildVersionedClientSet

func BuildVersionedClientSet(cluster *platformv1.Cluster, cc *platformv1.ClusterCredential) (*kubernetes.Clientset, error)

BuildVersionedClientSet creates the clientset of kubernetes by given cluster object and returns it.

func ClientSetByCluster

func ClientSetByCluster(ctx context.Context, cluster *platform.Cluster, platformClient platforminternalclient.PlatformInterface) (*kubernetes.Clientset, error)

ClientSetByCluster returns the backend kubernetes clientSet by given cluster object

func DynamicClientByCluster

func DynamicClientByCluster(ctx context.Context, cluster *platform.Cluster, platformClient platforminternalclient.PlatformInterface) (dynamic.Interface, error)

func FilterCSIOperator

func FilterCSIOperator(ctx context.Context, csiOperator *platform.CSIOperator) error

FilterCSIOperator is used to filter csi operator that do not belong to the tenant.

func FilterCluster

func FilterCluster(ctx context.Context, cluster *platform.Cluster) error

FilterCluster is used to filter clusters that do not belong to the tenant.

func FilterClusterCredential

func FilterClusterCredential(ctx context.Context, obj *platform.ClusterCredential) error

FilterClusterCredential is used to filter ClusterCredential that do not belong to the tenant.

func FilterCronHPA

func FilterCronHPA(ctx context.Context, cronHPA *platform.CronHPA) error

FilterCronHPA is used to filter CronHPA that do not belong to the tenant.

func FilterMachine

func FilterMachine(ctx context.Context, machine *platform.Machine) error

FilterMachine is used to filter machine that do not belong to the tenant.

func FilterPersistentEvent

func FilterPersistentEvent(ctx context.Context, pe *platform.PersistentEvent) error

FilterPersistentEvent is used to filter persistent event that do not belong to the tenant.

func FilterRegistry

func FilterRegistry(ctx context.Context, registry *platform.Registry) error

FilterRegistry is used to filter registry that do not belong to the tenant.

func FilterTappController

func FilterTappController(ctx context.Context, tappController *platform.TappController) error

FilterTappController is used to filter tapp controller that do not belong to the tenant.

func GetEvents

func GetEvents(ctx context.Context, client *kubernetes.Clientset, uid, namespace, name, kind string) (*corev1.EventList, error)

GetEvents list the resource events by resource namespace and name.

func GetInvolvedObjectUIDMap added in v1.9.1

func GetInvolvedObjectUIDMap(events EventSlice) map[string][]corev1.Event

GetInvolvedObjectUIDMap Get uid events map

func GetPlatformVersionsFromClusterInfo added in v1.6.0

func GetPlatformVersionsFromClusterInfo(ctx context.Context, client kubernetes.Interface) (tkeVersion string, k8sValidVersions []string, err error)

func PrepareClusterScale added in v1.9.0

func PrepareClusterScale(cluster *platform.Cluster, oldCluster *platform.Cluster) ([]platform.ClusterMachine, error)

func ResourceFromKind

func ResourceFromKind(kind string) string

ResourceFromKind returns the resource name by kind.

Types

type CustomResource

type CustomResource struct {
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec defines the desired identities of pods in this crd.
	Spec CustomResourceSpec `json:"spec,omitempty"`
}

CustomResource is simple version of struct crd, it is used for unmarshall.

type CustomResourceSpec

type CustomResourceSpec struct {
	Selector *metav1.LabelSelector `json:"selector,omitempty"`
}

CustomResourceSpec is spec for CustomResource.

type EventSlice

type EventSlice []corev1.Event

EventSlice implements sort.Interface for []Event based on the EventTime field.

func GetResourcesEvents added in v1.9.1

func GetResourcesEvents(ctx context.Context, client *kubernetes.Clientset, namespace string, listOptions []metav1.ListOptions) (EventSlice, []error)

GetResourcesEvents list the resources events by resource namespace.

func (EventSlice) Len

func (e EventSlice) Len() int

func (EventSlice) Less

func (e EventSlice) Less(i, j int) bool

func (EventSlice) Swap

func (e EventSlice) Swap(i, j int)

type Pods added in v1.9.1

type Pods struct {
	// contains filtered or unexported fields
}

func NewPods added in v1.9.1

func NewPods(pods []corev1.Pod) Pods

func (Pods) GetPods added in v1.9.1

func (p Pods) GetPods() []corev1.Pod

func (Pods) Len added in v1.9.1

func (p Pods) Len() int

func (Pods) Less added in v1.9.1

func (p Pods) Less(i, j int) bool

func (Pods) Swap added in v1.9.1

func (p Pods) Swap(i, j int)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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