Documentation ¶
Index ¶
- Constants
- Variables
- func GetGVK(gvr runtime.RawExtension) (*schema.GroupVersionKind, error)
- func GetIdxName(idxName string) (string, int)
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- type Block
- type ConditionExpression
- type ControllerConfig
- func (in *ControllerConfig) DeepCopy() *ControllerConfig
- func (in *ControllerConfig) DeepCopyInto(out *ControllerConfig)
- func (in *ControllerConfig) DeepCopyObject() runtime.Object
- func (r *ControllerConfig) GetForGvk() ([]*schema.GroupVersionKind, error)
- func (r *ControllerConfig) GetOwnGvks() ([]*schema.GroupVersionKind, error)
- func (r *ControllerConfig) GetPipeline(s string) *Pipeline
- func (r *ControllerConfig) GetRootVertexName() string
- func (r *ControllerConfig) GetWatchGvks() ([]*schema.GroupVersionKind, error)
- type ControllerConfigList
- type Executor
- type Function
- type FunctionElement
- type FunctionType
- type GvkObject
- type Input
- type Output
- type Pipeline
- type Properties
- type RangeValue
- type Spec
- type Status
Constants ¶
const ( // Group in the kubernetes api Group = "lcnc.yndd.io" // Version in the kubernetes api Version = "v1" )
const ( ControllerConfigKind = "ControllerConfig" ControllerConfigListKind = "ControllerConfigList" ControllerConfigSingular = "controllerconfig" ControllerConfigPlural = "controllerconfigs" ControllerConfigShortName = "ccfg" )
Variables ¶
var ( GroupVersion = schema.GroupVersion{Group: Group, Version: Version} ResourceContextGroupKind = schema.GroupKind{Group: Group, Kind: ControllerConfigKind}.String() ResourceContextKindAPIVersion = ControllerConfigKind + "." + GroupVersion.String() ResourceContextGroupVersionKind = GroupVersion.WithKind(ControllerConfigKind) ControllerPkgRevLabelKey = strings.ToLower(ControllerConfigKind) + "/" + "PackageRevision" )
var AddToScheme = schemeBuilder.AddToScheme
Registers this API group and version to a scheme Note: Generator *requires* it to be called "AddToScheme"
var SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version}
Functions ¶
func GetGVK ¶ added in v0.0.4
func GetGVK(gvr runtime.RawExtension) (*schema.GroupVersionKind, error)
func GetIdxName ¶ added in v0.0.4
func Kind ¶ added in v0.0.4
Takes an unqualified kind and returns a group-qualified GroupKind Note: Generator *requires* it to be called "Kind"
func Resource ¶ added in v0.0.4
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group-qualified GroupResource.
Types ¶
type Block ¶ added in v0.0.4
type Block struct { Range *RangeValue `json:"range,omitempty" yaml:"range,omitempty"` Condition *ConditionExpression `json:"condition,omitempty" yaml:"condition,omitempty"` }
func (*Block) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Block.
func (*Block) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConditionExpression ¶ added in v0.0.4
type ConditionExpression struct { Expression string `json:"expression" yaml:"expression"` Block `json:",inline" yaml:",inline"` }
func (*ConditionExpression) DeepCopy ¶ added in v0.0.4
func (in *ConditionExpression) DeepCopy() *ConditionExpression
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionExpression.
func (*ConditionExpression) DeepCopyInto ¶ added in v0.0.4
func (in *ConditionExpression) DeepCopyInto(out *ConditionExpression)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerConfig ¶
type ControllerConfig struct { metav1.TypeMeta `json:",inline" yaml:",inline"` metav1.ObjectMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"` Spec Spec `json:"spec,omitempty" yaml:"spec,omitempty"` Status Status `json:"status,omitempty" yaml:"status,omitempty"` }
ControllerConfig is the Schema for the ControllerConfig controller API +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*ControllerConfig) DeepCopy ¶ added in v0.0.4
func (in *ControllerConfig) DeepCopy() *ControllerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerConfig.
func (*ControllerConfig) DeepCopyInto ¶ added in v0.0.4
func (in *ControllerConfig) DeepCopyInto(out *ControllerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControllerConfig) DeepCopyObject ¶ added in v0.0.4
func (in *ControllerConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ControllerConfig) GetForGvk ¶ added in v0.0.4
func (r *ControllerConfig) GetForGvk() ([]*schema.GroupVersionKind, error)
func (*ControllerConfig) GetOwnGvks ¶ added in v0.0.4
func (r *ControllerConfig) GetOwnGvks() ([]*schema.GroupVersionKind, error)
func (*ControllerConfig) GetPipeline ¶ added in v0.0.4
func (r *ControllerConfig) GetPipeline(s string) *Pipeline
func (*ControllerConfig) GetRootVertexName ¶ added in v0.0.4
func (r *ControllerConfig) GetRootVertexName() string
this function is assumed to be executed after validation validate check if the for is present
func (*ControllerConfig) GetWatchGvks ¶ added in v0.0.4
func (r *ControllerConfig) GetWatchGvks() ([]*schema.GroupVersionKind, error)
type ControllerConfigList ¶ added in v0.0.4
type ControllerConfigList struct { metav1.TypeMeta `json:",inline" yaml:",inline"` metav1.ListMeta `json:"metadata,omitempty" yaml:"metadata,omitempty"` Items []ControllerConfig `json:"items" yaml:"items"` }
ControllerConfigList +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true
func (*ControllerConfigList) DeepCopy ¶ added in v0.0.4
func (in *ControllerConfigList) DeepCopy() *ControllerConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerConfigList.
func (*ControllerConfigList) DeepCopyInto ¶ added in v0.0.4
func (in *ControllerConfigList) DeepCopyInto(out *ControllerConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControllerConfigList) DeepCopyObject ¶ added in v0.0.4
func (in *ControllerConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type Executor ¶ added in v0.0.4
type Executor struct { Image *string `json:"image,omitempty" yaml:"image,omitempty"` Exec *string `json:"exec,omitempty" yaml:"exec,omitempty"` }
func (*Executor) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Executor.
func (*Executor) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Function ¶
type Function struct { Block `json:",inline" yaml:",inline"` Executor `json:",inline" yaml:",inline"` // Vars define the local variables in the function // The Key respresents the local variable name // The Value represents the jq expression Vars map[string]string `json:"vars,omitempty" yaml:"vars,omitempty"` Type FunctionType `json:"type,omitempty" yaml:"type,omitempty"` Config string `json:"config,omitempty" yaml:"config,omitempty"` // input is always a GVK of some sort Input *Input `json:"input,omitempty" yaml:"input,omitempty"` // key = variableName, value is gvr format or not -> gvr format is needed for external resources Output map[string]*Output `json:"output,omitempty" yaml:"output,omitempty"` DependsOn []string `json:"dependsOn,omitempty" yaml:"dependsOn,omitempty"` }
func (*Function) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Function.
func (*Function) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FunctionElement ¶ added in v0.0.4
type FunctionElement struct { Function `json:",inline" yaml:",inline"` FunctionBlock map[string]*FunctionElement `json:"block,omitempty" yaml:"block,omitempty"` }
func (*FunctionElement) DeepCopy ¶ added in v0.0.4
func (in *FunctionElement) DeepCopy() *FunctionElement
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionElement.
func (*FunctionElement) DeepCopyInto ¶ added in v0.0.4
func (in *FunctionElement) DeepCopyInto(out *FunctionElement)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FunctionType ¶ added in v0.0.4
type FunctionType string
const ( RootType FunctionType = "root" QueryType FunctionType = "query" SliceType FunctionType = "slice" MapType FunctionType = "map" JQType FunctionType = "jq" ContainerType FunctionType = "container" WasmType FunctionType = "wasm" GoTemplateType FunctionType = "gotemplate" BlockType FunctionType = "block" )
type GvkObject ¶ added in v0.0.4
type GvkObject struct { Resource runtime.RawExtension `json:"resource,omitempty" yaml:"resource,omitempty"` ApplyPipelineRef string `json:"applyPipelineRef,omitempty" yaml:"applyPipelineRef,omitempty"` DeletePipelineRef string `json:"deletePipelineRef,omitempty" yaml:"deletePipelineRef,omitempty"` }
func (*GvkObject) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GvkObject.
func (*GvkObject) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Input ¶ added in v0.0.4
type Input struct { Selector *metav1.LabelSelector `json:"selector,omitempty" yaml:"selector,omitempty"` Key string `json:"key,omitempty" yaml:"key,omitempty"` Value string `json:"value,omitempty" yaml:"value,omitempty"` GenericInput map[string]string `json:",inline" yaml:",inline"` Expression string `json:"expression,omitempty" yaml:"expression,omitempty"` Resource runtime.RawExtension `json:"resource,omitempty" yaml:"resource,omitempty"` Template string `json:"template,omitempty" yaml:"template,omitempty"` }
func (*Input) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Input.
func (*Input) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Output ¶ added in v0.0.4
type Output struct { Internal bool `json:"internal" yaml:"internal"` Resource runtime.RawExtension `json:"resource" yaml:"resource"` }
func (*Output) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Output.
func (*Output) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Pipeline ¶ added in v0.0.4
type Pipeline struct { Name string `json:"name" yaml:"name"` Vars map[string]*FunctionElement `json:"vars,omitempty" yaml:"vars,omitempty"` Tasks map[string]*FunctionElement `json:"tasks,omitempty" yaml:"tasks,omitempty"` }
func (*Pipeline) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pipeline.
func (*Pipeline) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Properties ¶ added in v0.0.4
type Properties struct { // key represents the variable For map[string]*GvkObject `json:"for" yaml:"for"` // key represents the variable Own map[string]*GvkObject `json:"own,omitempty" yaml:"own,omitempty"` // key represents the variable Watch map[string]*GvkObject `json:"watch,omitempty" yaml:"watch,omitempty"` // key respresents the variable //Functions map[string]ControllerConfigFunctionBlock `json:",inline" yaml:",inline"` Pipelines []*Pipeline `json:"pipelines,omitempty" yaml:"pipelines,omitempty"` }
func (*Properties) DeepCopy ¶ added in v0.0.4
func (in *Properties) DeepCopy() *Properties
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Properties.
func (*Properties) DeepCopyInto ¶ added in v0.0.4
func (in *Properties) DeepCopyInto(out *Properties)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RangeValue ¶ added in v0.0.4
type RangeValue struct { Value string `json:"value" yaml:"value"` Block `json:",inline" yaml:",inline"` }
func (*RangeValue) DeepCopy ¶ added in v0.0.4
func (in *RangeValue) DeepCopy() *RangeValue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RangeValue.
func (*RangeValue) DeepCopyInto ¶ added in v0.0.4
func (in *RangeValue) DeepCopyInto(out *RangeValue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Spec ¶ added in v0.0.4
type Spec struct {
Properties *Properties `json:"properties,omitempty" yaml:"properties,omitempty"`
}
func (*Spec) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Spec.
func (*Spec) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Status ¶ added in v0.0.4
type Status struct { }
ResourceContextSpec defines the context of the resource of the controller
func (*Status) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Status.
func (*Status) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.