Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetKeyLong ¶ added in v0.2.0
GetKeyLong return a unique key for a given object in the pattern of <apiversion>/<namespace>/<name> namespace can be null
func GetKeyShort ¶ added in v0.2.0
GetKeyShort return a unique key for a given object in the pattern of <apiversion>/<namespace>/<name> namespace can be null
Types ¶
type ConditionsStatusAware ¶ added in v0.2.0
type ConditionsStatusAware interface { GetReconcileStatus() status.Conditions SetReconcileStatus(conditions status.Conditions) }
ReconcileStatusAware represnt a CRD type that has been enabled with ReconcileStatus, it can then benefit of a series of utility methods.
type EnforcingReconcileStatus ¶ added in v0.2.0
type EnforcingReconcileStatus struct { // ReconcileStatus this is the general status of the main reconciler // +kubebuilder:validation:Optional Conditions status.Conditions `json:"conditions,omitempty"` //LockedResourceStatuses contains the reconcile status for each of the managed resources // +kubebuilder:validation:Optional LockedResourceStatuses map[string]status.Conditions `json:"lockedResourceStatuses,omitempty"` //LockedResourceStatuses contains the reconcile status for each of the managed resources // +kubebuilder:validation:Optional LockedPatchStatuses map[string]status.Conditions `json:"lockedPatchStatuses,omitempty"` }
EnforcingReconcileStatus represents the status of the last reconcile cycle. It's used to communicate success or failure and the error message
func (*EnforcingReconcileStatus) DeepCopy ¶ added in v0.2.0
func (in *EnforcingReconcileStatus) DeepCopy() *EnforcingReconcileStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnforcingReconcileStatus.
func (*EnforcingReconcileStatus) DeepCopyInto ¶ added in v0.2.0
func (in *EnforcingReconcileStatus) DeepCopyInto(out *EnforcingReconcileStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnforcingReconcileStatusAware ¶ added in v0.2.0
type EnforcingReconcileStatusAware interface { GetEnforcingReconcileStatus() EnforcingReconcileStatus SetEnforcingReconcileStatus(enforcingReconcileStatus EnforcingReconcileStatus) }
EnforcingReconcileStatusAware represnt a CRD type that has been enabled with ReconcileStatus, it can then benefit of a series of utility methods.
type LockedResource ¶ added in v0.2.0
type LockedResource struct { // Object is a yaml representation of an API resource // +kubebuilder:validation:Required Object runtime.RawExtension `json:"object"` // ExludedPaths are a set of json paths that need not be considered by the LockedResourceReconciler // +kubebuilder:validation:Optional // +listType=set ExcludedPaths []string `json:"excludedPaths,omitempty"` }
LockedResource represents a resource to be enforced in a LockedResourceController and can be used in a API specification +k8s:openapi-gen=true
func (*LockedResource) DeepCopy ¶ added in v0.2.0
func (in *LockedResource) DeepCopy() *LockedResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReconcileStatus.
func (*LockedResource) DeepCopyInto ¶ added in v0.2.0
func (in *LockedResource) DeepCopyInto(out *LockedResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LockedResourceTemplate ¶ added in v0.2.0
type LockedResourceTemplate struct { // ObjectTemplate is a goland template. Whne processed, it must resolve to a yaml representation of an API resource // +kubebuilder:validation:Required ObjectTemplate string `json:"objectTemplate"` // ExludedPaths are a set of json paths that need not be considered by the LockedResourceReconciler // +kubebuilder:validation:Optional // +listType=set ExcludedPaths []string `json:"excludedPaths,omitempty"` }
LockedResourceTemplate represents a resource template in go language to be enforced in a LockedResourceController and can be used in a API specification +k8s:openapi-gen=true
func (*LockedResourceTemplate) DeepCopy ¶ added in v0.2.0
func (in *LockedResourceTemplate) DeepCopy() *LockedResourceTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReconcileStatus.
func (*LockedResourceTemplate) DeepCopyInto ¶ added in v0.2.0
func (in *LockedResourceTemplate) DeepCopyInto(out *LockedResourceTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Patch ¶ added in v0.2.5
type Patch struct { //ID represents a unique Identifier for this patch // +kubebuilder:validation:Optional ID string `json:"id"` // SourceObject refs is an arrays of refereces to source objects that will be used as input for the template processing // +kubebuilder:validation:Optional // +listType=atomic SourceObjectRefs []corev1.ObjectReference `json:"sourceObjectRefs,omitempty"` // TargetObjectRef is a reference to the object to which the pacth should be applied. // +kubebuilder:validation:Required TargetObjectRef corev1.ObjectReference `json:"targetObjectRef"` // PatchType is the type of patch to be applied, one of "application/json-patch+json"'"application/merge-patch+json","application/strategic-merge-patch+json","application/apply-patch+yaml" // +kubebuilder:validation:Optional // +kubebuilder:validation:Enum="application/json-patch+json";"application/merge-patch+json";"application/strategic-merge-patch+json";"application/apply-patch+yaml" // default:="application/strategic-merge-patch+json" PatchType types.PatchType `json:"patchType,omitempty"` // PatchTemplate is a go template that will be resolved using the SourceObjectRefs as parameters. The result must be a valid patch based on the pacth type and the target object. // +kubebuilder:validation:Required PatchTemplate string `json:"patchTemplate"` }
Patch describes a patch to be enforced at runtime +k8s:openapi-gen=true
func (*Patch) DeepCopy ¶ added in v0.2.5
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Patch.
func (*Patch) DeepCopyInto ¶ added in v0.2.5
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.