apicall

package
v2.1.0-beta.3 Latest Latest
Warning

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

Go to latest
Published: Apr 24, 2026 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Overview

Package apicall defines many useful functions to fetch data by kubernetes api

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetClientTLSConfig

func GetClientTLSConfig(ctx context.Context, c client.Client, cluster *v1alpha1.Cluster) (*tls.Config, error)

func GetClientTLSConfigByGroup

func GetClientTLSConfigByGroup[
	S scope.Object[F, T],
	F client.Object,
	T runtime.Object,
](ctx context.Context, c client.Client, obj F) (*tls.Config, error)

func GetCluster

func GetCluster[
	S scope.Object[F, T],
	F client.Object,
	T runtime.Object,
](ctx context.Context, c client.Client, obj F) (*v1alpha1.Cluster, error)

func GetClusterByKey

func GetClusterByKey(ctx context.Context, c client.Client, ns, name string) (*v1alpha1.Cluster, error)

func GetPod

func GetPod[
	S scope.Instance[F, T],
	F client.Object,
	T runtime.Instance,
](ctx context.Context, c client.Client, obj F) (*corev1.Pod, error)

func GetPodIfExists

func GetPodIfExists[
	S scope.Instance[F, T],
	F client.Object,
	T runtime.Instance,
](ctx context.Context, c client.Client, obj F) (*corev1.Pod, error)

func ListClusterInstances

func ListClusterInstances[
	S scope.InstanceList[F, T, L],
	F client.Object,
	T runtime.Instance,
	L client.ObjectList,
](ctx context.Context, c client.Client, ns, cluster string) ([]F, error)

func ListGroups

func ListGroups[
	S scope.GroupList[F, T, L],
	F client.Object,
	T runtime.Group,
	L client.ObjectList,
](ctx context.Context, c client.Client, ns, cluster string) ([]F, error)

func ListInstances

func ListInstances[
	GS scope.GroupInstance[GF, GT, IS],
	IS scope.List[IL, I],
	GF client.Object,
	GT runtime.Group,
	IL client.ObjectList,
	I client.Object,
](ctx context.Context, c client.Client, g GF) ([]I, error)

ListInstances returns instances managed by a specified group

func ListPeerInstances

func ListPeerInstances[
	S scope.InstanceList[F, T, L],
	F client.Object,
	T runtime.Instance,
	L client.ObjectList,
](ctx context.Context, c client.Client, in F) ([]F, error)

ListPeerInstances returns peers of an instance in a same cluster NOTE: - All peers in the same cluster will be returned - Input instance will also be returned

func NewInstanceListerWatcher

func NewInstanceListerWatcher[
	GS scope.GroupInstance[GF, GT, IS],
	IS scope.List[IL, I],
	GF client.Object,
	GT runtime.Group,
	IL client.ObjectList,
	I client.Object,
](ctx context.Context, c client.Client, g GF) cache.ListerWatcher

NewInstanceListerWatcher returns a cache.ListerWatcher for a group

func SetOffline added in v2.0.1

func SetOffline[
	S scope.Instance[F, T],
	F client.Object,
	T runtime.Instance,
](ctx context.Context, c client.Client, obj F) error

SetOffline set spec.offline for the store

Types

type OfflineMetadata added in v2.0.1

type OfflineMetadata struct {
	ResourceVersion string             `json:"resourceVersion"`
	Annotations     map[string]*string `json:"annotations,omitempty"`
}

type OfflinePatch added in v2.0.1

type OfflinePatch struct {
	Metadata OfflineMetadata `json:"metadata"`
	Spec     *OfflineSpec    `json:"spec,omitempty"`
}

type OfflineSpec added in v2.0.1

type OfflineSpec struct {
	Offline bool `json:"offline"`
}

Jump to

Keyboard shortcuts

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