v1

package
v0.2.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FromPodHandlerToHandler

func FromPodHandlerToHandler(sync PodHandler) generic.Handler

func RegisterPodGeneratingHandler

func RegisterPodGeneratingHandler(ctx context.Context, controller PodController, apply apply.Apply,
	condition condition.Cond, name string, handler PodGeneratingHandler, opts *generic.GeneratingHandlerOptions)

func RegisterPodStatusHandler

func RegisterPodStatusHandler(ctx context.Context, controller PodController, condition condition.Cond, name string, handler PodStatusHandler)

func UpdatePodDeepCopyOnChange

func UpdatePodDeepCopyOnChange(client PodClient, obj *v1.Pod, handler func(obj *v1.Pod) (*v1.Pod, error)) (*v1.Pod, error)

Types

type Interface

type Interface interface {
	Pod() PodController
}

func New

func New(controllerFactory controller.SharedControllerFactory) Interface

type PodCache

type PodCache interface {
	Get(namespace, name string) (*v1.Pod, error)
	List(namespace string, selector labels.Selector) ([]*v1.Pod, error)

	AddIndexer(indexName string, indexer PodIndexer)
	GetByIndex(indexName, key string) ([]*v1.Pod, error)
}

type PodClient

type PodClient interface {
	Create(*v1.Pod) (*v1.Pod, error)
	Update(*v1.Pod) (*v1.Pod, error)
	UpdateStatus(*v1.Pod) (*v1.Pod, error)
	Delete(namespace, name string, options *metav1.DeleteOptions) error
	Get(namespace, name string, options metav1.GetOptions) (*v1.Pod, error)
	List(namespace string, opts metav1.ListOptions) (*v1.PodList, error)
	Watch(namespace string, opts metav1.ListOptions) (watch.Interface, error)
	Patch(namespace, name string, pt types.PatchType, data []byte, subresources ...string) (result *v1.Pod, err error)
}

type PodController

type PodController interface {
	generic.ControllerMeta
	PodClient

	OnChange(ctx context.Context, name string, sync PodHandler)
	OnRemove(ctx context.Context, name string, sync PodHandler)
	Enqueue(namespace, name string)
	EnqueueAfter(namespace, name string, duration time.Duration)

	Cache() PodCache
}

func NewPodController

func NewPodController(gvk schema.GroupVersionKind, resource string, namespaced bool, controller controller.SharedControllerFactory) PodController

type PodGeneratingHandler

type PodGeneratingHandler func(obj *v1.Pod, status v1.PodStatus) ([]runtime.Object, v1.PodStatus, error)

type PodHandler

type PodHandler func(string, *v1.Pod) (*v1.Pod, error)

type PodIndexer

type PodIndexer func(obj *v1.Pod) ([]string, error)

type PodStatusHandler

type PodStatusHandler func(obj *v1.Pod, status v1.PodStatus) (v1.PodStatus, error)

Jump to

Keyboard shortcuts

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