cache

package
v1.50.0-snapshot.1 Latest Latest
Warning

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

Go to latest
Published: Apr 22, 2022 License: Apache-2.0 Imports: 23 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type IstioCache

type IstioCache interface {
	CheckIstioResource(resourceType string) bool

	GetDestinationRule(namespace, name string) (*networking_v1beta1.DestinationRule, error)
	GetDestinationRules(namespace, labelSelector string) ([]networking_v1beta1.DestinationRule, error)
	GetEnvoyFilter(namespace, name string) (*networking_v1alpha3.EnvoyFilter, error)
	GetEnvoyFilters(namespace, labelSelector string) ([]networking_v1alpha3.EnvoyFilter, error)
	GetGateway(namespace, name string) (*networking_v1beta1.Gateway, error)
	GetGateways(namespace, labelSelector string) ([]networking_v1beta1.Gateway, error)
	GetServiceEntry(namespace, name string) (*networking_v1beta1.ServiceEntry, error)
	GetServiceEntries(namespace, labelSelector string) ([]networking_v1beta1.ServiceEntry, error)
	GetSidecar(namespace, name string) (*networking_v1beta1.Sidecar, error)
	GetSidecars(namespace, labelSelector string) ([]networking_v1beta1.Sidecar, error)
	GetVirtualService(namespace, name string) (*networking_v1beta1.VirtualService, error)
	GetVirtualServices(namespace, labelSelector string) ([]networking_v1beta1.VirtualService, error)
	GetWorkloadEntry(namespace, name string) (*networking_v1beta1.WorkloadEntry, error)
	GetWorkloadEntries(namespace, labelSelector string) ([]networking_v1beta1.WorkloadEntry, error)
	GetWorkloadGroup(namespace, name string) (*networking_v1beta1.WorkloadGroup, error)
	GetWorkloadGroups(namespace, labelSelector string) ([]networking_v1beta1.WorkloadGroup, error)

	GetAuthorizationPolicy(namespace, name string) (*security_v1beta1.AuthorizationPolicy, error)
	GetAuthorizationPolicies(namespace, labelSelector string) ([]security_v1beta1.AuthorizationPolicy, error)
	GetPeerAuthentication(namespace, name string) (*security_v1beta1.PeerAuthentication, error)
	GetPeerAuthentications(namespace, labelSelector string) ([]security_v1beta1.PeerAuthentication, error)
	GetRequestAuthentication(namespace, name string) (*security_v1beta1.RequestAuthentication, error)
	GetRequestAuthentications(namespace, labelSelector string) ([]security_v1beta1.RequestAuthentication, error)
}

type KialiCache

type KialiCache interface {
	// Control methods
	// Check if a namespace is listed to be cached; if yes, creates a cache for that namespace
	CheckNamespace(namespace string) bool

	// Clear a namespace's cache
	RefreshNamespace(namespace string)
	// Stop all caches
	Stop()

	// Kubernetes Client used for cache
	GetClient() *kubernetes.K8SClient

	KubernetesCache
	IstioCache
	NamespacesCache
	ProxyStatusCache
	RegistryStatusCache
}

func FakeGatewaysKialiCache added in v1.45.0

func FakeGatewaysKialiCache(gws []networking_v1beta1.Gateway) KialiCache

Fake KialiCache used for Gateway Scenarios It populates the Namespaces, Informers and Gateway information needed

func FakeServicesKialiCache added in v1.46.0

Fake KialiCache used for RegistryServices and All IstioConfigs Scenarios It populates the Namespaces, Informers and Registry information needed

func FakeTlsKialiCache added in v1.45.0

func FakeTlsKialiCache(token string, namespaces []string, pa []security_v1beta1.PeerAuthentication, dr []networking_v1beta1.DestinationRule) KialiCache

Fake KialiCache used for TLS Scenarios It populates the Namespaces, Informers and Registry information needed

func NewKialiCache

func NewKialiCache() (KialiCache, error)

type KubernetesCache

type KubernetesCache interface {
	GetConfigMap(namespace, name string) (*core_v1.ConfigMap, error)
	GetDaemonSets(namespace string) ([]apps_v1.DaemonSet, error)
	GetDaemonSet(namespace, name string) (*apps_v1.DaemonSet, error)
	GetDeployments(namespace string) ([]apps_v1.Deployment, error)
	GetDeployment(namespace, name string) (*apps_v1.Deployment, error)
	GetEndpoints(namespace, name string) (*core_v1.Endpoints, error)
	GetStatefulSets(namespace string) ([]apps_v1.StatefulSet, error)
	GetStatefulSet(namespace, name string) (*apps_v1.StatefulSet, error)
	GetServices(namespace string, selectorLabels map[string]string) ([]core_v1.Service, error)
	GetService(namespace string, name string) (*core_v1.Service, error)
	GetPods(namespace, labelSelector string) ([]core_v1.Pod, error)
	GetReplicaSets(namespace string) ([]apps_v1.ReplicaSet, error)
}

type NamespacesCache

type NamespacesCache interface {
	SetNamespaces(token string, namespaces []models.Namespace)
	GetNamespaces(token string) []models.Namespace
	GetNamespace(token string, namespace string) *models.Namespace
	RefreshTokenNamespaces()
}

type ProxyStatusCache added in v1.25.0

type ProxyStatusCache interface {
	CheckProxyStatus() bool
	GetPodProxyStatus(namespace, pod string) *kubernetes.ProxyStatus
	SetProxyStatus(proxyStatus []*kubernetes.ProxyStatus)
	RefreshProxyStatus()
}

type RegistryRefreshHandler added in v1.44.0

type RegistryRefreshHandler struct {
	Cache     KialiCache
	Namespace string
	cache.ResourceEventHandler
}

func NewRegistryHandler added in v1.44.0

func NewRegistryHandler(cache KialiCache, namespace string) RegistryRefreshHandler

func (RegistryRefreshHandler) OnAdd added in v1.44.0

func (sh RegistryRefreshHandler) OnAdd(obj interface{})

func (RegistryRefreshHandler) OnDelete added in v1.44.0

func (sh RegistryRefreshHandler) OnDelete(obj interface{})

func (RegistryRefreshHandler) OnUpdate added in v1.44.0

func (sh RegistryRefreshHandler) OnUpdate(oldObj, newObj interface{})

type RegistryStatusCache added in v1.35.0

type RegistryStatusCache interface {
	CheckRegistryStatus() bool
	GetRegistryStatus() *kubernetes.RegistryStatus
	SetRegistryStatus(registryStatus *kubernetes.RegistryStatus)
	RefreshRegistryStatus()
}

Jump to

Keyboard shortcuts

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