Documentation ¶
Index ¶
- type ApplicationStatus
- func (in *ApplicationStatus) DeepCopy() *ApplicationStatus
- func (in *ApplicationStatus) DeepCopyInto(out *ApplicationStatus)
- func (s *ApplicationStatus) Equal(other *ApplicationStatus) bool
- func (s *ApplicationStatus) GetCondition(ct ConditionType) Condition
- func (app *ApplicationStatus) GetResources() *Resources
- func (s *ApplicationStatus) SetConditions(c ...Condition)
- type ComponentStatus
- type Condition
- type ConditionReason
- type ConditionType
- type ObjectStatus
- type ObjectWithStatus
- type Resources
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ApplicationStatus ¶
type ApplicationStatus struct { Version string `json:"version,omitempty"` // Phase Phase `json:"phase,omitempty"` // ObservedGeneration is the most recent generation observed. It corresponds to the // Object's generation, which is updated on mutation by the API Server. ObservedGeneration int64 `json:"observedGeneration,omitempty" protobuf:"varint,1,opt,name=observedGeneration"` // Conditions represents the latest state of the object Conditions []Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,10,rep,name=conditions"` // Components is a list of object ComponentStatus Components map[string]ComponentStatus `json:"components,omitempty"` Settings map[string]ComponentStatus `json:"settings,omitempty"` // ComponentsReady: status of the components in the format ready/total ComponentsReady string `json:"componentsReady,omitempty"` }
ApplicationStatus defines controller's the observed state of Application +kubebuilder:object:generate=true
func NewConditionedStatus ¶
func NewConditionedStatus(c ...Condition) *ApplicationStatus
NewConditionedStatus returns a stat with the supplied conditions set.
func (*ApplicationStatus) DeepCopy ¶
func (in *ApplicationStatus) DeepCopy() *ApplicationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationStatus.
func (*ApplicationStatus) DeepCopyInto ¶
func (in *ApplicationStatus) DeepCopyInto(out *ApplicationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ApplicationStatus) Equal ¶
func (s *ApplicationStatus) Equal(other *ApplicationStatus) bool
Equal returns true if the status is identical to the supplied status, ignoring the LastTransitionTimes and order of statuses.
func (*ApplicationStatus) GetCondition ¶
func (s *ApplicationStatus) GetCondition(ct ConditionType) Condition
GetCondition returns the condition for the given ConditionType if exists, otherwise returns nil
func (*ApplicationStatus) GetResources ¶
func (app *ApplicationStatus) GetResources() *Resources
func (*ApplicationStatus) SetConditions ¶
func (s *ApplicationStatus) SetConditions(c ...Condition)
SetConditions sets the supplied conditions, replacing any existing conditions of the same type. This is a no-op if all supplied conditions are identical, ignoring the last transition time, to those already set.
type ComponentStatus ¶
type ComponentStatus struct { Name string `json:"name,omitempty"` // Resources embeds a list of object statuses Resources `json:",inline,omitempty"` // ComponentsReady: status of the components in the format ready/total ComponentsReady string `json:"componentsReady,omitempty"` }
ApplicationStatus defines controller's the observed state of Application +kubebuilder:object:generate=true
func (*ComponentStatus) DeepCopy ¶
func (in *ComponentStatus) DeepCopy() *ComponentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentStatus.
func (*ComponentStatus) DeepCopyInto ¶
func (in *ComponentStatus) DeepCopyInto(out *ComponentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Condition ¶
type Condition struct { // Type of condition. Type ConditionType `json:"type" protobuf:"bytes,1,opt,name=type,casttype=StatefulSetConditionType"` // Status of the condition, one of True, False, Unknown. Status corev1.ConditionStatus `json:"status" protobuf:"bytes,2,opt,name=status,casttype=k8s.io/api/core/v1.ConditionStatus"` // The reason for the condition's last transition. Reason ConditionReason `json:"reason,omitempty" protobuf:"bytes,4,opt,name=reason"` // A human readable message indicating details about the transition. Message string `json:"message,omitempty" protobuf:"bytes,5,opt,name=message"` // Last time the condition was probed // LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty" protobuf:"bytes,3,opt,name=lastProbeTime"` // Last time the condition transitioned from one status to another. LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" protobuf:"bytes,3,opt,name=lastTransitionTime"` }
Condition describes the state of an object at a certain point. +kubebuilder:object:generate=true
func Available ¶
func Available() Condition
Available returns a condition that indicates the resource is currently observed to be available for use.
func Creating ¶
func Creating() Condition
Creating returns a condition that indicates the resource is currently being created.
func Deleting ¶
func Deleting() Condition
Deleting returns a condition that indicates the resource is currently being deleted.
func ReconcileError ¶
ReconcileError returns a condition indicating that Crossplane encountered an error while reconciling the resource. This could mean Crossplane was unable to update the resource to reflect its desired state, or that Crossplane was unable to determine the current actual state of the resource.
func ReconcileSuccess ¶
func ReconcileSuccess() Condition
ReconcileSuccess returns a condition indicating that Crossplane successfully completed the most recent reconciliation of the resource.
func Unavailable ¶
func Unavailable() Condition
Unavailable returns a condition that indicates the resource is not currently available for use. Unavailable should be set only when Crossplane expects the resource to be available but knows it is not, for example because its API reports it is unhealthy.
func (*Condition) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Condition.
func (*Condition) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (Condition) Equal ¶
Equal returns true if the condition is identical to the supplied condition, ignoring the LastTransitionTime.
func (Condition) WithMessage ¶
WithMessage returns a condition by adding the provided message to existing condition.
type ConditionReason ¶
type ConditionReason string
A ConditionReason represents the reason a resource is in a condition.
const ( ReasonAvailable ConditionReason = "Resource is available for use" ReasonCreating ConditionReason = "Resource is being created" ReasonDeleting ConditionReason = "Resource is being deleted" )
Reasons a resource is or is not ready.
const ( ReasonReconcileSuccess ConditionReason = "Successfully reconciled resource" ReasonReconcileError ConditionReason = "Encountered an error during resource reconciliation" )
Reasons a resource is or is not synced.
type ConditionType ¶
type ConditionType string
ConditionType encodes information on the condition +kubebuilder:object:generate=true
const ( ConditionNone ConditionType = "" ConditionPlanning ConditionType = "Planning" ConditionRunning ConditionType = "Running" ConditionCreating ConditionType = "Creating" ConditionInstalling ConditionType = "Installing" ConditionUpgrading ConditionType = "Upgrading" ConditionComplete ConditionType = "Complete" ConditionFailed ConditionType = "Failed" )
const ( // TypeReady resources are believed to be ready to handle work. TypeReady ConditionType = "Ready" // TypeSynced resources are believed to be in sync with the // Kubernetes resources that manage their lifecycle. TypeSynced ConditionType = "Synced" )
Condition types.
type ObjectStatus ¶
type ObjectStatus struct { // Link to object Link string `json:"link,omitempty"` // Name of object Name string `json:"name,omitempty"` // Kind of object Version string `json:"version,omitempty"` // Kind of object Kind string `json:"kind,omitempty"` // Object group Group string `json:"group,omitempty"` // Status. Values: InProgress, Ready, Unknown Status string `json:"status,omitempty"` }
ObjectStatus is a generic status holder for objects +kubebuilder:object:generate=true
func ObjectToStatus ¶
func ObjectToStatus(obj interfaces.Object) ObjectStatus
func (*ObjectStatus) DeepCopy ¶
func (in *ObjectStatus) DeepCopy() *ObjectStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStatus.
func (*ObjectStatus) DeepCopyInto ¶
func (in *ObjectStatus) DeepCopyInto(out *ObjectStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ObjectStatus) GVK ¶
func (ost *ObjectStatus) GVK() schema.GroupVersionKind
type ObjectWithStatus ¶
type ObjectWithStatus interface { interfaces.Object GetApplicationStatus() ApplicationStatus SetApplicationStatus(conditions ApplicationStatus) }
Object interface must be supported by all types that want to sync an object. The object interface provides a mutate function and a runtime.Object that can be used in controller-runtime CreateOrUpdate
type Resources ¶
type Resources struct { // Object status array for all matching objects Objects []ObjectStatus `json:"objects,omitempty"` }
ComponentList is a generic status holder for the top level resource +kubebuilder:object:generate=true
func Difference ¶
func (*Resources) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resources.
func (*Resources) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Resources) GetObjects ¶
func (res *Resources) GetObjects() []ObjectStatus