workloadinterface

package
v0.0.79 Latest Latest
Warning

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

Go to latest
Published: Jul 11, 2022 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BytesToMap added in v0.0.42

func BytesToMap(b []byte) map[string]interface{}

BytesToMap convert []byte to map[string]interface{} while ignoring errors. will return nil if failed to convert

func InspectMap

func InspectMap(mapobject interface{}, scopes ...string) (val interface{}, k bool)

InspectMap -

func InspectWorkload

func InspectWorkload(workload interface{}, scopes ...string) (val interface{}, k bool)

InspectWorkload - // DEPRECATED

func IsBaseObject added in v0.0.64

func IsBaseObject(b map[string]interface{}) bool

===================== UTILS =======================

func ListMetaIDs

func ListMetaIDs(meta []IMetadata) []string

func ListMetaToMap

func ListMetaToMap(meta []IMetadata) []map[string]interface{}

func MapToBytes added in v0.0.42

func MapToBytes(m map[string]interface{}) []byte

MapToBytes convert map[string]interface{} to []byte while ignoring errors. will return nil if failed to convert

func PodMetadata

func PodMetadata(kind string) []string

func PodSpec

func PodSpec(kind string) []string

func RemoveFromMap

func RemoveFromMap(workload map[string]interface{}, scope ...string)

func SetInMap

func SetInMap(workload map[string]interface{}, scope []string, key string, val interface{})

func ToUnique

func ToUnique(resources []IMetadata)

ToUnique removes the resource duplication based on resource ID

Types

type BaseObject added in v0.0.64

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

func NewBaseObjBytes added in v0.0.64

func NewBaseObjBytes(b []byte) (*BaseObject, error)

func NewBaseObject added in v0.0.64

func NewBaseObject(b map[string]interface{}) *BaseObject

func (*BaseObject) GetApiVersion added in v0.0.64

func (b *BaseObject) GetApiVersion() string

func (*BaseObject) GetGroup added in v0.0.64

func (b *BaseObject) GetGroup() string

func (*BaseObject) GetID added in v0.0.64

func (b *BaseObject) GetID() string

func (*BaseObject) GetKind added in v0.0.64

func (b *BaseObject) GetKind() string

func (*BaseObject) GetName added in v0.0.64

func (b *BaseObject) GetName() string

func (*BaseObject) GetNamespace added in v0.0.64

func (b *BaseObject) GetNamespace() string

func (*BaseObject) GetObject added in v0.0.64

func (b *BaseObject) GetObject() map[string]interface{}

func (*BaseObject) GetObjectType added in v0.0.64

func (b *BaseObject) GetObjectType() ObjectType

func (*BaseObject) GetVersion added in v0.0.64

func (b *BaseObject) GetVersion() string

func (*BaseObject) GetWorkload added in v0.0.64

func (b *BaseObject) GetWorkload() map[string]interface{}

========================================= GET =========================================

func (*BaseObject) Json added in v0.0.64

func (b *BaseObject) Json() string

func (*BaseObject) SetApiVersion added in v0.0.78

func (b *BaseObject) SetApiVersion(apiVersion string)

func (*BaseObject) SetKind added in v0.0.64

func (b *BaseObject) SetKind(kind string)

func (*BaseObject) SetName added in v0.0.64

func (b *BaseObject) SetName(name string)

func (*BaseObject) SetNamespace added in v0.0.64

func (b *BaseObject) SetNamespace(namespace string)

func (*BaseObject) SetObject added in v0.0.64

func (b *BaseObject) SetObject(workload map[string]interface{})

func (*BaseObject) SetWorkload added in v0.0.64

func (b *BaseObject) SetWorkload(workload map[string]interface{})

func (*BaseObject) ToString added in v0.0.64

func (b *BaseObject) ToString() string

type IBasicWorkload

type IBasicWorkload interface {
	IMetadata

	// Set
	SetLabel(key, value string)
	SetAnnotation(key, value string)

	GetVersion() string
	GetGroup() string
	GetGenerateName() string
	GetInnerAnnotation(string) (string, bool)
	GetPodAnnotation(string) (string, bool)
	GetAnnotation(string) (string, bool)
	GetLabel(string) (string, bool)
	GetAnnotations() map[string]string
	GetInnerAnnotations() map[string]string
	GetPodAnnotations() map[string]string
	GetLabels() map[string]string
	GetInnerLabels() map[string]string
	GetPodLabels() map[string]string
	GetVolumes() ([]corev1.Volume, error)
	GetReplicas() int
	GetContainers() ([]corev1.Container, error)
	GetInitContainers() ([]corev1.Container, error)
	GetOwnerReferences() ([]metav1.OwnerReference, error)
	GetImagePullSecret() ([]corev1.LocalObjectReference, error)
	GetServiceAccountName() string
	GetSelector() (*metav1.LabelSelector, error)
	GetResourceVersion() string
	GetUID() string
	GetPodSpec() (*corev1.PodSpec, error)
	GetData() map[string]interface{}

	// REMOVE
	RemoveLabel(string)
	RemoveAnnotation(string)
	RemovePodStatus()
	RemoveResourceVersion()
}

type IMetadata

type IMetadata interface {
	// Set
	SetNamespace(string)
	SetName(string)
	SetKind(string)
	SetWorkload(map[string]interface{}) // DEPRECATED
	SetObject(map[string]interface{})
	SetApiVersion(string)

	// Get
	GetNamespace() string
	GetName() string
	GetKind() string
	GetApiVersion() string
	GetWorkload() map[string]interface{} // DEPRECATED
	GetObject() map[string]interface{}
	GetID() string // Get object unique ID

	GetObjectType() ObjectType // Get struct type

}

type IWorkload

type IWorkload interface {
	IBasicWorkload

	// Convert
	ToUnstructured() (*unstructured.Unstructured, error)
	ToString() string // Return workload in string representation
	Json() string     // DEPRECATED, use ToString

	// GET
	GetWlid() string // Get ARMO workload ID -> wlid://cluster-<cluster-name>/namespace-<namespace>/<kind>-<name>
	GetJobID() *apis.JobTracking
	GenerateWlid(string) string

	// SET
	SetWlid(string)
	SetInject()
	SetIgnore()
	SetUpdateTime()
	SetJobID(apis.JobTracking)
	SetCompatible()
	SetIncompatible()
	SetReplaceheaders()

	// EXIST
	IsIgnore() bool
	IsInject() bool
	IsAttached() bool
	IsCompatible() bool
	IsIncompatible() bool
	IsReplaceheaders() bool

	// REMOVE
	RemoveWlid()
	RemoveSecretData()
	RemoveInject()
	RemoveIgnore()
	RemoveUpdateTime()
	RemoveJobID()
	RemoveCompatible()
	RemoveArmoMetadata()
	RemoveArmoLabels()
	RemoveArmoAnnotations()
}

type ObjectType

type ObjectType string
const TypeBaseObject ObjectType = "base"
const (
	TypeUnknown ObjectType = "unknown"
)
const TypeWorkloadObject ObjectType = "workload"
const TypeWorkloadObjectMock ObjectType = "workloadMock"

type Workload

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

func NewWorkload

func NewWorkload(bWorkload []byte) (*Workload, error)

func NewWorkloadObj

func NewWorkloadObj(workload map[string]interface{}) *Workload

func (*Workload) DeepCopy

func (workload *Workload) DeepCopy(w map[string]interface{})

func (*Workload) GenerateWlid

func (w *Workload) GenerateWlid(clusterName string) string

func (*Workload) GetAnnotation

func (w *Workload) GetAnnotation(annotation string) (string, bool)

func (*Workload) GetAnnotations

func (w *Workload) GetAnnotations() map[string]string

func (*Workload) GetApiVersion

func (w *Workload) GetApiVersion() string

func (*Workload) GetContainers

func (w *Workload) GetContainers() ([]corev1.Container, error)

GetContainers -

func (*Workload) GetData added in v0.0.77

func (w *Workload) GetData() map[string]interface{}

func (*Workload) GetGenerateName

func (w *Workload) GetGenerateName() string

func (*Workload) GetGroup

func (w *Workload) GetGroup() string

func (*Workload) GetID

func (w *Workload) GetID() string

func (*Workload) GetImagePullSecret

func (w *Workload) GetImagePullSecret() ([]corev1.LocalObjectReference, error)

func (*Workload) GetInitContainers

func (w *Workload) GetInitContainers() ([]corev1.Container, error)

GetInitContainers -

func (*Workload) GetInnerAnnotation

func (w *Workload) GetInnerAnnotation(annotation string) (string, bool)

GetInnerAnnotation DEPRECATED

func (*Workload) GetInnerAnnotations

func (w *Workload) GetInnerAnnotations() map[string]string

GetInnerAnnotations - DEPRECATED

func (*Workload) GetInnerLabels

func (w *Workload) GetInnerLabels() map[string]string

GetInnerLabels - DEPRECATED

func (*Workload) GetJobID

func (w *Workload) GetJobID() *apis.JobTracking

func (*Workload) GetKind

func (w *Workload) GetKind() string

func (*Workload) GetLabel

func (w *Workload) GetLabel(label string) (string, bool)

func (*Workload) GetLabels

func (w *Workload) GetLabels() map[string]string

func (*Workload) GetName

func (w *Workload) GetName() string

func (*Workload) GetNamespace

func (w *Workload) GetNamespace() string

func (*Workload) GetObject

func (w *Workload) GetObject() map[string]interface{}

func (*Workload) GetObjectType added in v0.0.37

func (w *Workload) GetObjectType() ObjectType

func (*Workload) GetOwnerReferences

func (w *Workload) GetOwnerReferences() ([]metav1.OwnerReference, error)

GetOwnerReferences -

func (*Workload) GetPodAnnotation

func (w *Workload) GetPodAnnotation(annotation string) (string, bool)

func (*Workload) GetPodAnnotations

func (w *Workload) GetPodAnnotations() map[string]string

GetPodAnnotations

func (*Workload) GetPodLabel

func (w *Workload) GetPodLabel(label string) (string, bool)

func (*Workload) GetPodLabels

func (w *Workload) GetPodLabels() map[string]string

func (*Workload) GetPodSpec

func (w *Workload) GetPodSpec() (*corev1.PodSpec, error)

func (*Workload) GetReplicas

func (w *Workload) GetReplicas() int

func (*Workload) GetResourceVersion

func (w *Workload) GetResourceVersion() string

func (*Workload) GetSelector

func (w *Workload) GetSelector() (*metav1.LabelSelector, error)

func (*Workload) GetServiceAccountName

func (w *Workload) GetServiceAccountName() string

func (*Workload) GetUID

func (w *Workload) GetUID() string

func (*Workload) GetVersion

func (w *Workload) GetVersion() string

func (*Workload) GetVolumes

func (w *Workload) GetVolumes() ([]corev1.Volume, error)

GetVolumes -

func (*Workload) GetWlid

func (w *Workload) GetWlid() string

func (*Workload) GetWorkload

func (w *Workload) GetWorkload() map[string]interface{}

========================================= GET =========================================

func (*Workload) IsAttached

func (w *Workload) IsAttached() bool

func (*Workload) IsCompatible

func (w *Workload) IsCompatible() bool

func (*Workload) IsIgnore

func (w *Workload) IsIgnore() bool

func (*Workload) IsIncompatible

func (w *Workload) IsIncompatible() bool

func (*Workload) IsInject

func (w *Workload) IsInject() bool

func (*Workload) IsReplaceheaders

func (w *Workload) IsReplaceheaders() bool

func (*Workload) Json

func (w *Workload) Json() string

func (*Workload) RemoveAnnotation

func (w *Workload) RemoveAnnotation(key string)

func (*Workload) RemoveArmoAnnotations

func (w *Workload) RemoveArmoAnnotations()

func (*Workload) RemoveArmoLabels

func (w *Workload) RemoveArmoLabels()

func (*Workload) RemoveArmoMetadata

func (w *Workload) RemoveArmoMetadata()

func (*Workload) RemoveCompatible

func (w *Workload) RemoveCompatible()

func (*Workload) RemoveIgnore

func (w *Workload) RemoveIgnore()

func (*Workload) RemoveInject

func (w *Workload) RemoveInject()

func (*Workload) RemoveJobID

func (w *Workload) RemoveJobID()

func (*Workload) RemoveLabel

func (w *Workload) RemoveLabel(key string)

func (*Workload) RemoveMetadata

func (w *Workload) RemoveMetadata(scope []string, metadata, key string)

func (*Workload) RemovePodAnnotation

func (w *Workload) RemovePodAnnotation(key string)

func (*Workload) RemovePodLabel

func (w *Workload) RemovePodLabel(key string)

func (*Workload) RemovePodStatus

func (w *Workload) RemovePodStatus()

func (*Workload) RemoveResourceVersion

func (w *Workload) RemoveResourceVersion()

func (*Workload) RemoveSecretData

func (w *Workload) RemoveSecretData()

func (*Workload) RemoveUpdateTime

func (w *Workload) RemoveUpdateTime()

func (*Workload) RemoveWlid

func (w *Workload) RemoveWlid()

func (*Workload) SetAnnotation

func (w *Workload) SetAnnotation(key, value string)

func (*Workload) SetApiVersion added in v0.0.78

func (w *Workload) SetApiVersion(apiVersion string)

func (*Workload) SetCompatible

func (w *Workload) SetCompatible()

func (*Workload) SetIgnore

func (w *Workload) SetIgnore()

func (*Workload) SetIncompatible

func (w *Workload) SetIncompatible()

func (*Workload) SetInject

func (w *Workload) SetInject()

func (*Workload) SetJobID

func (w *Workload) SetJobID(jobTracking apis.JobTracking)

func (*Workload) SetKind

func (w *Workload) SetKind(kind string)

func (*Workload) SetLabel

func (w *Workload) SetLabel(key, value string)

func (*Workload) SetName

func (w *Workload) SetName(name string)

func (*Workload) SetNamespace

func (w *Workload) SetNamespace(namespace string)

func (*Workload) SetObject

func (w *Workload) SetObject(workload map[string]interface{})

func (*Workload) SetPodAnnotation

func (w *Workload) SetPodAnnotation(key, value string)

func (*Workload) SetPodLabel

func (w *Workload) SetPodLabel(key, value string)

func (*Workload) SetReplaceheaders

func (w *Workload) SetReplaceheaders()

func (*Workload) SetUpdateTime

func (w *Workload) SetUpdateTime()

func (*Workload) SetWlid

func (w *Workload) SetWlid(wlid string)

func (*Workload) SetWorkload

func (w *Workload) SetWorkload(workload map[string]interface{})

func (*Workload) ToString

func (w *Workload) ToString() string

func (*Workload) ToUnstructured

func (w *Workload) ToUnstructured() (*unstructured.Unstructured, error)

type WorkloadMock

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

func NewWorkloadMock

func NewWorkloadMock(ww interface{}) *WorkloadMock

func (*WorkloadMock) DeepCopy

func (wm *WorkloadMock) DeepCopy(w map[string]interface{})

func (*WorkloadMock) GenerateWlid

func (wm *WorkloadMock) GenerateWlid(clusterName string) string

func (*WorkloadMock) GetAnnotation

func (wm *WorkloadMock) GetAnnotation(annotation string) (string, bool)

func (*WorkloadMock) GetAnnotations

func (wm *WorkloadMock) GetAnnotations() map[string]string

func (*WorkloadMock) GetApiVersion

func (wm *WorkloadMock) GetApiVersion() string

func (*WorkloadMock) GetContainers

func (wm *WorkloadMock) GetContainers() ([]corev1.Container, error)

GetContainers -

func (*WorkloadMock) GetData added in v0.0.77

func (wm *WorkloadMock) GetData() map[string]interface{}

func (*WorkloadMock) GetGenerateName

func (wm *WorkloadMock) GetGenerateName() string

func (*WorkloadMock) GetGroup

func (wm *WorkloadMock) GetGroup() string

func (*WorkloadMock) GetID

func (wm *WorkloadMock) GetID() string

func (*WorkloadMock) GetImagePullSecret

func (wm *WorkloadMock) GetImagePullSecret() ([]corev1.LocalObjectReference, error)

func (*WorkloadMock) GetInitContainers

func (wm *WorkloadMock) GetInitContainers() ([]corev1.Container, error)

GetInitContainers -

func (*WorkloadMock) GetInnerAnnotation

func (wm *WorkloadMock) GetInnerAnnotation(annotation string) (string, bool)

GetInnerAnnotation DEPRECATED

func (*WorkloadMock) GetInnerAnnotations

func (wm *WorkloadMock) GetInnerAnnotations() map[string]string

GetInnerAnnotations - DEPRECATED

func (*WorkloadMock) GetInnerLabels

func (wm *WorkloadMock) GetInnerLabels() map[string]string

GetInnerLabels - DEPRECATED

func (*WorkloadMock) GetJobID

func (wm *WorkloadMock) GetJobID() *apis.JobTracking

func (*WorkloadMock) GetKind

func (wm *WorkloadMock) GetKind() string

func (*WorkloadMock) GetLabel

func (wm *WorkloadMock) GetLabel(label string) (string, bool)

func (*WorkloadMock) GetLabels

func (wm *WorkloadMock) GetLabels() map[string]string

func (*WorkloadMock) GetName

func (wm *WorkloadMock) GetName() string

func (*WorkloadMock) GetNamespace

func (wm *WorkloadMock) GetNamespace() string

func (*WorkloadMock) GetObject

func (wm *WorkloadMock) GetObject() map[string]interface{}

func (*WorkloadMock) GetObjectType added in v0.0.37

func (wm *WorkloadMock) GetObjectType() ObjectType

func (*WorkloadMock) GetOwnerReferences

func (wm *WorkloadMock) GetOwnerReferences() ([]metav1.OwnerReference, error)

GetOwnerReferences -

func (*WorkloadMock) GetPodAnnotation

func (wm *WorkloadMock) GetPodAnnotation(annotation string) (string, bool)

func (*WorkloadMock) GetPodAnnotations

func (wm *WorkloadMock) GetPodAnnotations() map[string]string

GetPodAnnotations

func (*WorkloadMock) GetPodLabel

func (wm *WorkloadMock) GetPodLabel(label string) (string, bool)

func (*WorkloadMock) GetPodLabels

func (wm *WorkloadMock) GetPodLabels() map[string]string

func (*WorkloadMock) GetPodSpec

func (wm *WorkloadMock) GetPodSpec() (*corev1.PodSpec, error)

func (*WorkloadMock) GetReplicas

func (wm *WorkloadMock) GetReplicas() int

func (*WorkloadMock) GetResourceVersion

func (wm *WorkloadMock) GetResourceVersion() string

func (*WorkloadMock) GetSelector

func (wm *WorkloadMock) GetSelector() (*metav1.LabelSelector, error)

func (*WorkloadMock) GetServiceAccountName

func (wm *WorkloadMock) GetServiceAccountName() string

func (*WorkloadMock) GetUID

func (wm *WorkloadMock) GetUID() string

func (*WorkloadMock) GetVersion

func (wm *WorkloadMock) GetVersion() string

func (*WorkloadMock) GetVolumes

func (wm *WorkloadMock) GetVolumes() ([]corev1.Volume, error)

GetVolumes -

func (*WorkloadMock) GetWlid

func (wm *WorkloadMock) GetWlid() string

func (*WorkloadMock) GetWorkload

func (wm *WorkloadMock) GetWorkload() map[string]interface{}

func (*WorkloadMock) IsAttached

func (wm *WorkloadMock) IsAttached() bool

func (*WorkloadMock) IsCompatible

func (wm *WorkloadMock) IsCompatible() bool

func (*WorkloadMock) IsIgnore

func (wm *WorkloadMock) IsIgnore() bool

func (*WorkloadMock) IsIncompatible

func (wm *WorkloadMock) IsIncompatible() bool

func (*WorkloadMock) IsInject

func (wm *WorkloadMock) IsInject() bool

func (*WorkloadMock) IsReplaceheaders

func (wm *WorkloadMock) IsReplaceheaders() bool

func (*WorkloadMock) Json

func (wm *WorkloadMock) Json() string

func (*WorkloadMock) RemoveAnnotation

func (wm *WorkloadMock) RemoveAnnotation(key string)

func (*WorkloadMock) RemoveArmoAnnotations

func (wm *WorkloadMock) RemoveArmoAnnotations()

func (*WorkloadMock) RemoveArmoLabels

func (wm *WorkloadMock) RemoveArmoLabels()

func (*WorkloadMock) RemoveArmoMetadata

func (wm *WorkloadMock) RemoveArmoMetadata()

func (*WorkloadMock) RemoveCompatible

func (wm *WorkloadMock) RemoveCompatible()

func (*WorkloadMock) RemoveIgnore

func (wm *WorkloadMock) RemoveIgnore()

func (*WorkloadMock) RemoveInject

func (wm *WorkloadMock) RemoveInject()

func (*WorkloadMock) RemoveJobID

func (wm *WorkloadMock) RemoveJobID()

func (*WorkloadMock) RemoveLabel

func (wm *WorkloadMock) RemoveLabel(key string)

func (*WorkloadMock) RemoveMetadata

func (wm *WorkloadMock) RemoveMetadata(scope []string, metadata, key string)

func (*WorkloadMock) RemovePodAnnotation

func (wm *WorkloadMock) RemovePodAnnotation(key string)

func (*WorkloadMock) RemovePodLabel

func (wm *WorkloadMock) RemovePodLabel(key string)

func (*WorkloadMock) RemovePodStatus

func (wm *WorkloadMock) RemovePodStatus()

func (*WorkloadMock) RemoveResourceVersion

func (wm *WorkloadMock) RemoveResourceVersion()

func (*WorkloadMock) RemoveSecretData

func (wm *WorkloadMock) RemoveSecretData()

func (*WorkloadMock) RemoveUpdateTime

func (wm *WorkloadMock) RemoveUpdateTime()

func (*WorkloadMock) RemoveWlid

func (wm *WorkloadMock) RemoveWlid()

func (*WorkloadMock) SetAnnotation

func (wm *WorkloadMock) SetAnnotation(key, value string)

func (*WorkloadMock) SetApiVersion added in v0.0.78

func (wm *WorkloadMock) SetApiVersion(apiVersion string)

func (*WorkloadMock) SetCompatible

func (wm *WorkloadMock) SetCompatible()

func (*WorkloadMock) SetIgnore

func (wm *WorkloadMock) SetIgnore()

func (*WorkloadMock) SetIncompatible

func (wm *WorkloadMock) SetIncompatible()

func (*WorkloadMock) SetInject

func (wm *WorkloadMock) SetInject()

func (*WorkloadMock) SetJobID

func (wm *WorkloadMock) SetJobID(jobTracking apis.JobTracking)

func (*WorkloadMock) SetKind

func (wm *WorkloadMock) SetKind(kind string)

func (*WorkloadMock) SetLabel

func (wm *WorkloadMock) SetLabel(key, value string)

func (*WorkloadMock) SetName

func (wm *WorkloadMock) SetName(name string)

func (*WorkloadMock) SetNamespace

func (wm *WorkloadMock) SetNamespace(namespace string)

func (*WorkloadMock) SetObject

func (wm *WorkloadMock) SetObject(workload map[string]interface{})

func (*WorkloadMock) SetPodAnnotation

func (wm *WorkloadMock) SetPodAnnotation(key, value string)

func (*WorkloadMock) SetPodLabel

func (wm *WorkloadMock) SetPodLabel(key, value string)

func (*WorkloadMock) SetReplaceheaders

func (wm *WorkloadMock) SetReplaceheaders()

func (*WorkloadMock) SetUpdateTime

func (wm *WorkloadMock) SetUpdateTime()

func (*WorkloadMock) SetWlid

func (wm *WorkloadMock) SetWlid(wlid string)

func (*WorkloadMock) SetWorkload

func (wm *WorkloadMock) SetWorkload(workload map[string]interface{})

func (*WorkloadMock) ToString

func (wm *WorkloadMock) ToString() string

func (*WorkloadMock) ToUnstructured

func (wm *WorkloadMock) ToUnstructured() (*unstructured.Unstructured, error)

Jump to

Keyboard shortcuts

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