runtime

package
v0.0.3 Latest Latest
Warning

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

Go to latest
Published: Aug 21, 2020 License: Apache-2.0 Imports: 4 Imported by: 11

Documentation

Overview

+k8s:deepcopy-gen=package

Index

Constants

View Source
const DefaultNamespace = "default"

DefaultNamespace describes the default namespace name used for the system.

Variables

This section is empty.

Functions

This section is empty.

Types

type IdentifierFactory added in v0.0.3

type IdentifierFactory interface {
	Identify(o interface{}) (id Identifyable, ok bool)
}
var (
	// Metav1Identifier identifies an object using its metav1.ObjectMeta Name and Namespace
	Metav1NameIdentifier IdentifierFactory = Metav1NameIdentifierFactory{}
	// ObjectUIDIdentifier identifies an object using its libgitops/pkg/runtime.ObjectMeta UID field
	ObjectUIDIdentifier IdentifierFactory = ObjectUIDIdentifierFactory{}
)

type Identifyable added in v0.0.3

type Identifyable interface {
	// GetIdentifier can return e.g. a "namespace/name" combination, which is not guaranteed
	// to be unique world-wide, or alternatively a random SHA for instance
	GetIdentifier() string
}

Identifyable is an object which can be identified

func NewIdentifier added in v0.0.3

func NewIdentifier(str string) Identifyable

type Metav1NameIdentifierFactory added in v0.0.3

type Metav1NameIdentifierFactory struct{}

func (*Metav1NameIdentifierFactory) DeepCopy added in v0.0.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Metav1NameIdentifierFactory.

func (*Metav1NameIdentifierFactory) DeepCopyInto added in v0.0.3

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (Metav1NameIdentifierFactory) Identify added in v0.0.3

func (id Metav1NameIdentifierFactory) Identify(o interface{}) (Identifyable, bool)

type Object

type Object interface {
	runtime.Object
	metav1.ObjectMetaAccessor
	metav1.Object
}

Object is an union of the Object interfaces that are accessible for a type that embeds both metav1.TypeMeta and metav1.ObjectMeta.

type ObjectUIDIdentifierFactory added in v0.0.3

type ObjectUIDIdentifierFactory struct{}

func (*ObjectUIDIdentifierFactory) DeepCopy added in v0.0.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectUIDIdentifierFactory.

func (*ObjectUIDIdentifierFactory) DeepCopyInto added in v0.0.3

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ObjectUIDIdentifierFactory) Identify added in v0.0.3

func (id ObjectUIDIdentifierFactory) Identify(o interface{}) (Identifyable, bool)

type PartialObject added in v0.0.3

type PartialObject interface {
	Object

	// IsPartialObject is a dummy function for signalling that this is a partially-loaded object
	// i.e. only TypeMeta and ObjectMeta are stored in memory.
	IsPartialObject()
}

PartialObject is a partially-decoded object, where only metadata has been loaded.

func NewPartialObject added in v0.0.3

func NewPartialObject(frame []byte) (PartialObject, error)

This constructor ensures the PartialObjectImpl fields are not nil. TODO: Make this multi-document-aware?

type PartialObjectImpl added in v0.0.3

type PartialObjectImpl struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`
}

PartialObjectImpl is a struct implementing PartialObject, used for unmarshalling unknown objects into this intermediate type where .Name, .UID, .Kind and .APIVersion become easily available +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*PartialObjectImpl) DeepCopy added in v0.0.3

func (in *PartialObjectImpl) DeepCopy() *PartialObjectImpl

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PartialObjectImpl.

func (*PartialObjectImpl) DeepCopyInto added in v0.0.3

func (in *PartialObjectImpl) DeepCopyInto(out *PartialObjectImpl)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PartialObjectImpl) DeepCopyObject added in v0.0.3

func (in *PartialObjectImpl) DeepCopyObject() pkgruntime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new pkgruntime.Object.

func (*PartialObjectImpl) IsPartialObject added in v0.0.3

func (po *PartialObjectImpl) IsPartialObject()

Jump to

Keyboard shortcuts

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