watcher

package
v1.3.0 Latest Latest
Warning

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

Go to latest
Published: Dec 13, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FakeK8sWatcher

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

FakeK8sWatcher is used as an "empty" K8sResourceWatcher when --enable-k8s-api flag is not set. It is also used for testing, allowing users to specify a static list of pods.

func NewFakeK8sWatcher

func NewFakeK8sWatcher(pods []interface{}) *FakeK8sWatcher

NewK8sWatcher returns a pointer to an initialized FakeK8sWatcher struct.

func NewFakeK8sWatcherWithPodsAndServices added in v0.11.0

func NewFakeK8sWatcherWithPodsAndServices(pods []interface{}, services []interface{}) *FakeK8sWatcher

NewFakeK8sWatcherWithPodsAndServices returns a pointer to an initialized FakeK8sWatcher struct

func (*FakeK8sWatcher) AddInformers added in v1.0.3

func (watcher *FakeK8sWatcher) AddInformers(_ InternalSharedInformerFactory, _ ...*InternalInformer)

func (*FakeK8sWatcher) AddPod added in v0.9.0

func (watcher *FakeK8sWatcher) AddPod(pod *corev1.Pod)

AddPod adds a pod to the fake k8s watcher. This is intended for testing.

func (*FakeK8sWatcher) AddService added in v0.11.0

func (watcher *FakeK8sWatcher) AddService(service *corev1.Service)

AddService adds a service to the fake k8s watcher.

func (*FakeK8sWatcher) ClearAllPods added in v0.9.0

func (watcher *FakeK8sWatcher) ClearAllPods()

ClearPods() removes all pods from the fake watcher. This is intended for testing.

func (*FakeK8sWatcher) ClearAllServices added in v0.11.0

func (watcher *FakeK8sWatcher) ClearAllServices()

ClearAllServices removes all services from the fake watcher.

func (*FakeK8sWatcher) FindContainer added in v0.9.0

func (watcher *FakeK8sWatcher) FindContainer(containerID string) (*corev1.Pod, *corev1.ContainerStatus, bool)

FindContainer implements K8sResourceWatcher.FindContainer

func (*FakeK8sWatcher) FindMirrorPod added in v1.2.0

func (watcher *FakeK8sWatcher) FindMirrorPod(_ string) (*corev1.Pod, error)

func (*FakeK8sWatcher) FindPod

func (watcher *FakeK8sWatcher) FindPod(podID string) (*corev1.Pod, error)

func (*FakeK8sWatcher) GetInformer added in v1.0.3

func (watcher *FakeK8sWatcher) GetInformer(_ string) cache.SharedIndexInformer

func (*FakeK8sWatcher) Start added in v1.0.3

func (watcher *FakeK8sWatcher) Start()

type InternalInformer added in v1.0.3

type InternalInformer struct {
	Name     string
	Informer cache.SharedIndexInformer
	Indexers cache.Indexers
}

type InternalSharedInformerFactory added in v1.0.3

type InternalSharedInformerFactory interface {
	Start(stopCh <-chan struct{})
	WaitForCacheSync(stopCh <-chan struct{}) map[reflect.Type]bool
}

type K8sResourceWatcher

type K8sResourceWatcher interface {
	AddInformers(factory InternalSharedInformerFactory, infs ...*InternalInformer)
	GetInformer(name string) cache.SharedIndexInformer
	Start()

	// Find a pod/container pair for the given container ID.
	FindContainer(containerID string) (*corev1.Pod, *corev1.ContainerStatus, bool)

	// Find a pod given the podID
	FindPod(podID string) (*corev1.Pod, error)
	// Find a mirror pod for a static pod
	FindMirrorPod(hash string) (*corev1.Pod, error)
}

K8sResourceWatcher defines an interface for accessing various resources from Kubernetes API.

type K8sWatcher

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

K8sWatcher maintains a local cache of k8s resources.

func NewK8sWatcher

func NewK8sWatcher(k8sClient kubernetes.Interface, stateSyncIntervalSec time.Duration) (*K8sWatcher, error)

NewK8sWatcher returns a pointer to an initialized K8sWatcher struct.

func (*K8sWatcher) AddInformers added in v1.0.3

func (watcher *K8sWatcher) AddInformers(factory InternalSharedInformerFactory, infs ...*InternalInformer)

func (*K8sWatcher) FindContainer added in v0.9.0

func (watcher *K8sWatcher) FindContainer(containerID string) (*corev1.Pod, *corev1.ContainerStatus, bool)

FindContainer implements K8sResourceWatcher.FindContainer.

func (*K8sWatcher) FindPod

func (watcher *K8sWatcher) FindPod(podID string) (*corev1.Pod, error)

func (*K8sWatcher) GetInformer added in v1.0.3

func (watcher *K8sWatcher) GetInformer(name string) cache.SharedIndexInformer

func (*K8sWatcher) Start added in v1.0.3

func (watcher *K8sWatcher) Start()

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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