Version: v0.4.1 Latest Latest

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

Go to latest
Published: Mar 9, 2015 License: Apache-2.0 Imports: 12 Imported by: 0



Package pod provides Registry interface and it's RESTStorage implementation for storing Pod api objects.



This section is empty.


View Source
var Strategy = podStrategy{api.Scheme, api.SimpleNameGenerator}

Strategy is the default logic that applies when creating and updating Pod objects via the REST API. TODO: Create other strategies for updating status, bindings, etc


func MatchPod added in v0.4.1

func MatchPod(label, field labels.Selector) generic.Matcher

MatchPod returns a generic matcher for a given label and field selector.

func PodStatusDecorator added in v0.4.1

func PodStatusDecorator(cache PodStatusGetter) rest.ObjectFunc

PodStatusDecorator returns a function that updates pod.Status based on the provided pod cache.

func PodStatusReset added in v0.4.1

func PodStatusReset(cache PodStatusGetter) rest.ObjectFunc

PodStatusReset returns a function that clears the pod cache when the object is deleted.

func PodToSelectableFields added in v0.2.1

func PodToSelectableFields(pod *api.Pod) labels.Set

PodToSelectableFields returns a label set that represents the object TODO: fields are not labels, and the validation rules for them do not apply.

func ResourceLocation added in v0.4.1

func ResourceLocation(getter ResourceGetter, ctx api.Context, id string) (string, error)

ResourceLocation returns a URL to which one can send traffic for the specified pod.


type BasicBoundPodFactory

type BasicBoundPodFactory struct{}

func (*BasicBoundPodFactory) MakeBoundPod

func (b *BasicBoundPodFactory) MakeBoundPod(machine string, pod *api.Pod) (*api.BoundPod, error)

type BoundPodFactory

type BoundPodFactory interface {
	// Make a container object for a given pod, given the machine that the pod is running on.
	MakeBoundPod(machine string, pod *api.Pod) (*api.BoundPod, error)

type PodStatusGetter added in v0.2.1

type PodStatusGetter interface {
	GetPodStatus(namespace, name string) (*api.PodStatus, error)
	ClearPodStatus(namespace, name string)

PodStatusGetter is an interface used by Pods to fetch and retrieve status info.

type Registry

type Registry interface {
	// ListPods obtains a list of pods having labels which match selector.
	ListPods(ctx api.Context, selector labels.Selector) (*api.PodList, error)
	// Watch for new/changed/deleted pods
	WatchPods(ctx api.Context, label, field labels.Selector, resourceVersion string) (watch.Interface, error)
	// Get a specific pod
	GetPod(ctx api.Context, podID string) (*api.Pod, error)
	// Create a pod based on a specification.
	CreatePod(ctx api.Context, pod *api.Pod) error
	// Update an existing pod
	UpdatePod(ctx api.Context, pod *api.Pod) error
	// Delete an existing pod
	DeletePod(ctx api.Context, podID string) error

Registry is an interface implemented by things that know how to store Pod objects.

func NewRegistry added in v0.4.1

func NewRegistry(s Storage) Registry

NewRegistry returns a new Registry interface for the given Storage. Any mismatched types will panic.

type ResourceGetter added in v0.4.1

type ResourceGetter interface {
	Get(api.Context, string) (runtime.Object, error)

ResourceGetter is an interface for retrieving resources by ResourceLocation.

type Storage added in v0.4.1

Storage is an interface for a standard REST Storage backend TODO: move me somewhere common


Path Synopsis

Jump to

Keyboard shortcuts

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