Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the releases v1alpha1 API group. +kubebuilder:object:generate=true +groupName=releases.opmodel.dev
Index ¶
- Variables
- type BundleRelease
- type BundleReleaseList
- type BundleReleaseSpec
- type BundleReleaseStatus
- type FailureCounters
- type HistoryEntry
- type Inventory
- type InventoryEntry
- type ModuleReference
- type ModuleRelease
- type ModuleReleaseList
- type ModuleReleaseSpec
- type ModuleReleaseStatus
- type ModuleStatusSummary
- type RawValues
- type Release
- type ReleaseList
- type ReleaseSpec
- type ReleaseStatus
- type RolloutSpec
- type SourceReference
- type SourceStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "releases.opmodel.dev", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type BundleRelease ¶
type BundleRelease struct {
metav1.TypeMeta `json:",inline"`
// metadata is a standard object metadata
// +optional
metav1.ObjectMeta `json:"metadata,omitzero"`
// spec defines the desired state of BundleRelease
// +required
Spec BundleReleaseSpec `json:"spec"`
// status defines the observed state of BundleRelease
// +optional
Status BundleReleaseStatus `json:"status,omitzero"`
}
BundleRelease is the Schema for the bundlereleases API
func (*BundleRelease) DeepCopy ¶
func (in *BundleRelease) DeepCopy() *BundleRelease
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleRelease.
func (*BundleRelease) DeepCopyInto ¶
func (in *BundleRelease) DeepCopyInto(out *BundleRelease)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BundleRelease) DeepCopyObject ¶
func (in *BundleRelease) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BundleReleaseList ¶
type BundleReleaseList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitzero"`
Items []BundleRelease `json:"items"`
}
BundleReleaseList contains a list of BundleRelease
func (*BundleReleaseList) DeepCopy ¶
func (in *BundleReleaseList) DeepCopy() *BundleReleaseList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleReleaseList.
func (*BundleReleaseList) DeepCopyInto ¶
func (in *BundleReleaseList) DeepCopyInto(out *BundleReleaseList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BundleReleaseList) DeepCopyObject ¶
func (in *BundleReleaseList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BundleReleaseSpec ¶
type BundleReleaseSpec struct {
// +optional
Suspend bool `json:"suspend,omitempty"`
SourceRef SourceReference `json:"sourceRef"`
// +optional
Values *RawValues `json:"values,omitempty"`
// +optional
Prune bool `json:"prune,omitempty"`
// +optional
ServiceAccountName string `json:"serviceAccountName,omitempty"`
}
BundleReleaseSpec defines the desired state of BundleRelease
func (*BundleReleaseSpec) DeepCopy ¶
func (in *BundleReleaseSpec) DeepCopy() *BundleReleaseSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleReleaseSpec.
func (*BundleReleaseSpec) DeepCopyInto ¶
func (in *BundleReleaseSpec) DeepCopyInto(out *BundleReleaseSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleReleaseStatus ¶
type BundleReleaseStatus struct {
// +optional
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// conditions represent the current state of the BundleRelease resource.
// Each condition has a unique type and reflects the status of a specific aspect of the resource.
//
// Standard condition types include:
// - "Available": the resource is fully functional
// - "Progressing": the resource is being created or updated
// - "Degraded": the resource failed to reach or maintain its desired state
//
// The status of each condition is one of True, False, or Unknown.
// +listType=map
// +listMapKey=type
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
// +optional
Source *SourceStatus `json:"source,omitempty"`
// +optional
LastAttemptedAction string `json:"lastAttemptedAction,omitempty"`
// +optional
LastAttemptedAt *metav1.Time `json:"lastAttemptedAt,omitempty"`
// +optional
LastAttemptedSourceDigest string `json:"lastAttemptedSourceDigest,omitempty"`
// +optional
LastAttemptedConfigDigest string `json:"lastAttemptedConfigDigest,omitempty"`
// +optional
LastAttemptedRenderDigest string `json:"lastAttemptedRenderDigest,omitempty"`
// +optional
LastAppliedAt *metav1.Time `json:"lastAppliedAt,omitempty"`
// +optional
LastAppliedSourceDigest string `json:"lastAppliedSourceDigest,omitempty"`
// +optional
LastAppliedConfigDigest string `json:"lastAppliedConfigDigest,omitempty"`
// +optional
LastAppliedRenderDigest string `json:"lastAppliedRenderDigest,omitempty"`
// +optional
Inventory *Inventory `json:"inventory,omitempty"`
// +optional
Modules []ModuleStatusSummary `json:"modules,omitempty"`
// +optional
History []HistoryEntry `json:"history,omitempty"`
}
BundleReleaseStatus defines the observed state of BundleRelease.
func (*BundleReleaseStatus) DeepCopy ¶
func (in *BundleReleaseStatus) DeepCopy() *BundleReleaseStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleReleaseStatus.
func (*BundleReleaseStatus) DeepCopyInto ¶
func (in *BundleReleaseStatus) DeepCopyInto(out *BundleReleaseStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FailureCounters ¶
type FailureCounters struct {
// +optional
Reconcile int64 `json:"reconcile,omitempty"`
// +optional
Apply int64 `json:"apply,omitempty"`
// +optional
Prune int64 `json:"prune,omitempty"`
// +optional
Drift int64 `json:"drift,omitempty"`
}
FailureCounters tracks bounded reconcile failure counts by action.
func (*FailureCounters) DeepCopy ¶
func (in *FailureCounters) DeepCopy() *FailureCounters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FailureCounters.
func (*FailureCounters) DeepCopyInto ¶
func (in *FailureCounters) DeepCopyInto(out *FailureCounters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HistoryEntry ¶
type HistoryEntry struct {
// +optional
Sequence int64 `json:"sequence,omitempty"`
// +optional
Action string `json:"action,omitempty"`
// +optional
Phase string `json:"phase,omitempty"`
// +optional
StartedAt *metav1.Time `json:"startedAt,omitempty"`
// +optional
FinishedAt *metav1.Time `json:"finishedAt,omitempty"`
// +optional
SourceDigest string `json:"sourceDigest,omitempty"`
// +optional
ConfigDigest string `json:"configDigest,omitempty"`
// +optional
RenderDigest string `json:"renderDigest,omitempty"`
// +optional
InventoryDigest string `json:"inventoryDigest,omitempty"`
// +optional
InventoryCount int64 `json:"inventoryCount,omitempty"`
// +optional
Message string `json:"message,omitempty"`
}
HistoryEntry captures a compact reconcile history record.
func (*HistoryEntry) DeepCopy ¶
func (in *HistoryEntry) DeepCopy() *HistoryEntry
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HistoryEntry.
func (*HistoryEntry) DeepCopyInto ¶
func (in *HistoryEntry) DeepCopyInto(out *HistoryEntry)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Inventory ¶
type Inventory struct {
// +optional
Revision int64 `json:"revision,omitempty"`
// +optional
Digest string `json:"digest,omitempty"`
// +optional
Count int64 `json:"count,omitempty"`
// +optional
Entries []InventoryEntry `json:"entries,omitempty"`
}
Inventory stores the current set of owned resources.
func (*Inventory) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Inventory.
func (*Inventory) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InventoryEntry ¶
type InventoryEntry struct {
// +optional
Group string `json:"group,omitempty"`
Kind string `json:"kind"`
// +optional
Namespace string `json:"namespace,omitempty"`
Name string `json:"name"`
// +optional
Version string `json:"v,omitempty"`
// +optional
Component string `json:"component,omitempty"`
}
InventoryEntry identifies one owned Kubernetes resource.
func (*InventoryEntry) DeepCopy ¶
func (in *InventoryEntry) DeepCopy() *InventoryEntry
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InventoryEntry.
func (*InventoryEntry) DeepCopyInto ¶
func (in *InventoryEntry) DeepCopyInto(out *InventoryEntry)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModuleReference ¶
type ModuleReference struct {
// Path is the CUE module import path.
// Example: "opmodel.dev/modules/cert_manager@v0"
// +kubebuilder:validation:MinLength=1
Path string `json:"path"`
// Version is the pinned module version to resolve from the registry.
// Example: "v0.2.1"
// +kubebuilder:validation:MinLength=1
Version string `json:"version"`
}
ModuleReference identifies the CUE module to evaluate from an OCI registry.
func (*ModuleReference) DeepCopy ¶
func (in *ModuleReference) DeepCopy() *ModuleReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleReference.
func (*ModuleReference) DeepCopyInto ¶
func (in *ModuleReference) DeepCopyInto(out *ModuleReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModuleRelease ¶
type ModuleRelease struct {
metav1.TypeMeta `json:",inline"`
// metadata is a standard object metadata
// +optional
metav1.ObjectMeta `json:"metadata,omitzero"`
// spec defines the desired state of ModuleRelease
// +required
Spec ModuleReleaseSpec `json:"spec"`
// status defines the observed state of ModuleRelease
// +optional
Status ModuleReleaseStatus `json:"status,omitzero"`
}
ModuleRelease is the Schema for the modulereleases API
func (*ModuleRelease) DeepCopy ¶
func (in *ModuleRelease) DeepCopy() *ModuleRelease
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleRelease.
func (*ModuleRelease) DeepCopyInto ¶
func (in *ModuleRelease) DeepCopyInto(out *ModuleRelease)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ModuleRelease) DeepCopyObject ¶
func (in *ModuleRelease) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ModuleRelease) GetConditions ¶
func (in *ModuleRelease) GetConditions() []metav1.Condition
GetConditions returns the status conditions of the ModuleRelease.
func (*ModuleRelease) SetConditions ¶
func (in *ModuleRelease) SetConditions(conditions []metav1.Condition)
SetConditions sets the status conditions on the ModuleRelease.
type ModuleReleaseList ¶
type ModuleReleaseList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitzero"`
Items []ModuleRelease `json:"items"`
}
ModuleReleaseList contains a list of ModuleRelease
func (*ModuleReleaseList) DeepCopy ¶
func (in *ModuleReleaseList) DeepCopy() *ModuleReleaseList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleReleaseList.
func (*ModuleReleaseList) DeepCopyInto ¶
func (in *ModuleReleaseList) DeepCopyInto(out *ModuleReleaseList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ModuleReleaseList) DeepCopyObject ¶
func (in *ModuleReleaseList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ModuleReleaseSpec ¶
type ModuleReleaseSpec struct {
// +optional
Suspend bool `json:"suspend,omitempty"`
// Module identifies the CUE module to evaluate from the OCI registry.
Module ModuleReference `json:"module"`
// Values contains arbitrary release input values.
// +optional
Values *RawValues `json:"values,omitempty"`
// +optional
Prune bool `json:"prune,omitempty"`
// +optional
ServiceAccountName string `json:"serviceAccountName,omitempty"`
// +optional
Rollout *RolloutSpec `json:"rollout,omitempty"`
}
ModuleReleaseSpec defines the desired state of ModuleRelease
func (*ModuleReleaseSpec) DeepCopy ¶
func (in *ModuleReleaseSpec) DeepCopy() *ModuleReleaseSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleReleaseSpec.
func (*ModuleReleaseSpec) DeepCopyInto ¶
func (in *ModuleReleaseSpec) DeepCopyInto(out *ModuleReleaseSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModuleReleaseStatus ¶
type ModuleReleaseStatus struct {
// +optional
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// ReleaseUUID is the globally-unique identity of the rendered ModuleRelease,
// read from the `module-release.opmodel.dev/uuid` label on rendered resources.
// Populated on the first successful render; consumed by the prune ownership
// guard (including the deletion path where a fresh render is not available).
// +optional
ReleaseUUID string `json:"releaseUUID,omitempty"`
// conditions represent the current state of the ModuleRelease resource.
// Each condition has a unique type and reflects the status of a specific aspect of the resource.
//
// Standard condition types include:
// - "Available": the resource is fully functional
// - "Progressing": the resource is being created or updated
// - "Degraded": the resource failed to reach or maintain its desired state
//
// The status of each condition is one of True, False, or Unknown.
// +listType=map
// +listMapKey=type
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
// +optional
LastAttemptedAction string `json:"lastAttemptedAction,omitempty"`
// +optional
LastAttemptedAt *metav1.Time `json:"lastAttemptedAt,omitempty"`
// +optional
LastAttemptedDuration *metav1.Duration `json:"lastAttemptedDuration,omitempty"`
// +optional
LastAttemptedSourceDigest string `json:"lastAttemptedSourceDigest,omitempty"`
// +optional
LastAttemptedConfigDigest string `json:"lastAttemptedConfigDigest,omitempty"`
// +optional
LastAttemptedRenderDigest string `json:"lastAttemptedRenderDigest,omitempty"`
// +optional
LastAppliedAt *metav1.Time `json:"lastAppliedAt,omitempty"`
// +optional
LastAppliedSourceDigest string `json:"lastAppliedSourceDigest,omitempty"`
// +optional
LastAppliedConfigDigest string `json:"lastAppliedConfigDigest,omitempty"`
// +optional
LastAppliedRenderDigest string `json:"lastAppliedRenderDigest,omitempty"`
// +optional
FailureCounters *FailureCounters `json:"failureCounters,omitempty"`
// +optional
Inventory *Inventory `json:"inventory,omitempty"`
// +optional
History []HistoryEntry `json:"history,omitempty"`
// NextRetryAt indicates when the controller will next attempt reconciliation
// after a transient or stalled failure. Nil when the resource is healthy or no-op.
// +optional
NextRetryAt *metav1.Time `json:"nextRetryAt,omitempty"`
}
ModuleReleaseStatus defines the observed state of ModuleRelease.
func (*ModuleReleaseStatus) DeepCopy ¶
func (in *ModuleReleaseStatus) DeepCopy() *ModuleReleaseStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleReleaseStatus.
func (*ModuleReleaseStatus) DeepCopyInto ¶
func (in *ModuleReleaseStatus) DeepCopyInto(out *ModuleReleaseStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModuleStatusSummary ¶
type ModuleStatusSummary struct {
Name string `json:"name"`
ReleaseRef fluxmeta.NamespacedObjectReference `json:"releaseRef"`
// +optional
Ready bool `json:"ready,omitempty"`
// +optional
SourceDigest string `json:"sourceDigest,omitempty"`
// +optional
ConfigDigest string `json:"configDigest,omitempty"`
// +optional
RenderDigest string `json:"renderDigest,omitempty"`
// +optional
InventoryCount int64 `json:"inventoryCount,omitempty"`
}
ModuleStatusSummary reports a child module status summary for bundles.
func (*ModuleStatusSummary) DeepCopy ¶
func (in *ModuleStatusSummary) DeepCopy() *ModuleStatusSummary
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleStatusSummary.
func (*ModuleStatusSummary) DeepCopyInto ¶
func (in *ModuleStatusSummary) DeepCopyInto(out *ModuleStatusSummary)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RawValues ¶
type RawValues struct {
apiextensionsv1.JSON `json:",inline"`
}
RawValues stores arbitrary CUE/JSON-compatible values.
func (*RawValues) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RawValues.
func (*RawValues) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Release ¶
type Release struct {
metav1.TypeMeta `json:",inline"`
// metadata is a standard object metadata
// +optional
metav1.ObjectMeta `json:"metadata,omitzero"`
// spec defines the desired state of Release
// +required
Spec ReleaseSpec `json:"spec"`
// status defines the observed state of Release
// +optional
Status ReleaseStatus `json:"status,omitzero"`
}
Release is the Schema for the releases API.
func (*Release) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Release.
func (*Release) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Release) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Release) GetConditions ¶
GetConditions returns the status conditions of the Release.
func (*Release) SetConditions ¶
SetConditions sets the status conditions on the Release.
type ReleaseList ¶
type ReleaseList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitzero"`
Items []Release `json:"items"`
}
ReleaseList contains a list of Release.
func (*ReleaseList) DeepCopy ¶
func (in *ReleaseList) DeepCopy() *ReleaseList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseList.
func (*ReleaseList) DeepCopyInto ¶
func (in *ReleaseList) DeepCopyInto(out *ReleaseList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ReleaseList) DeepCopyObject ¶
func (in *ReleaseList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ReleaseSpec ¶
type ReleaseSpec struct {
// SourceRef references a Flux source (OCIRepository, GitRepository, or Bucket)
// that provides the artifact containing the CUE release package.
SourceRef SourceReference `json:"sourceRef"`
// Path is the directory within the artifact containing release.cue.
// Example: "releases/prod/minecraft".
// +kubebuilder:validation:MinLength=1
Path string `json:"path"`
// Interval at which the reconciler re-evaluates the release to detect drift
// and re-apply. Also the requeue interval after transient failures.
// +optional
Interval metav1.Duration `json:"interval,omitempty"`
// DependsOn references other Release CRs that must be Ready=True before
// this Release is reconciled. References are same-namespace only.
// +optional
DependsOn []fluxmeta.NamespacedObjectReference `json:"dependsOn,omitempty"`
// Prune enables deletion of stale resources on reconcile and of all owned
// resources on Release deletion.
// +optional
Prune bool `json:"prune,omitempty"`
// Suspend halts reconciliation when true.
// +optional
Suspend bool `json:"suspend,omitempty"`
// ServiceAccountName is the name of the ServiceAccount used to impersonate
// during apply and prune. Empty means use the controller's identity.
// +optional
ServiceAccountName string `json:"serviceAccountName,omitempty"`
// Rollout configures apply behavior.
// +optional
Rollout *RolloutSpec `json:"rollout,omitempty"`
}
ReleaseSpec defines the desired state of Release. A Release points to a Flux source artifact containing a CUE release package. The controller fetches the artifact, navigates to spec.path, loads release.cue, detects whether it evaluates to #ModuleRelease or #BundleRelease, and dispatches to the appropriate render pipeline.
func (*ReleaseSpec) DeepCopy ¶
func (in *ReleaseSpec) DeepCopy() *ReleaseSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseSpec.
func (*ReleaseSpec) DeepCopyInto ¶
func (in *ReleaseSpec) DeepCopyInto(out *ReleaseSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseStatus ¶
type ReleaseStatus struct {
// +optional
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// conditions represent the current state of the Release resource.
// +listType=map
// +listMapKey=type
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
// Source is the resolved Flux source artifact metadata.
// +optional
Source *SourceStatus `json:"source,omitempty"`
// +optional
LastAttemptedAction string `json:"lastAttemptedAction,omitempty"`
// +optional
LastAttemptedAt *metav1.Time `json:"lastAttemptedAt,omitempty"`
// +optional
LastAttemptedDuration *metav1.Duration `json:"lastAttemptedDuration,omitempty"`
// +optional
LastAttemptedSourceDigest string `json:"lastAttemptedSourceDigest,omitempty"`
// +optional
LastAttemptedConfigDigest string `json:"lastAttemptedConfigDigest,omitempty"`
// +optional
LastAttemptedRenderDigest string `json:"lastAttemptedRenderDigest,omitempty"`
// +optional
LastAppliedAt *metav1.Time `json:"lastAppliedAt,omitempty"`
// +optional
LastAppliedSourceDigest string `json:"lastAppliedSourceDigest,omitempty"`
// +optional
LastAppliedConfigDigest string `json:"lastAppliedConfigDigest,omitempty"`
// +optional
LastAppliedRenderDigest string `json:"lastAppliedRenderDigest,omitempty"`
// +optional
FailureCounters *FailureCounters `json:"failureCounters,omitempty"`
// +optional
Inventory *Inventory `json:"inventory,omitempty"`
// +optional
History []HistoryEntry `json:"history,omitempty"`
// NextRetryAt indicates when the controller will next attempt reconciliation
// after a transient or stalled failure.
// +optional
NextRetryAt *metav1.Time `json:"nextRetryAt,omitempty"`
}
ReleaseStatus defines the observed state of Release.
func (*ReleaseStatus) DeepCopy ¶
func (in *ReleaseStatus) DeepCopy() *ReleaseStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseStatus.
func (*ReleaseStatus) DeepCopyInto ¶
func (in *ReleaseStatus) DeepCopyInto(out *ReleaseStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RolloutSpec ¶
type RolloutSpec struct {
// Strategy controls how apply operations are performed.
// +kubebuilder:validation:Enum=Apply
// +optional
Strategy string `json:"strategy,omitempty"`
// ForceConflicts enables SSA force ownership when desired.
// +optional
ForceConflicts bool `json:"forceConflicts,omitempty"`
}
RolloutSpec configures apply behavior for a release.
func (*RolloutSpec) DeepCopy ¶
func (in *RolloutSpec) DeepCopy() *RolloutSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolloutSpec.
func (*RolloutSpec) DeepCopyInto ¶
func (in *RolloutSpec) DeepCopyInto(out *RolloutSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SourceReference ¶
type SourceReference = fluxmeta.NamespacedObjectKindReference
SourceReference points to a Flux source object. Used by BundleRelease; ModuleRelease uses CUE-native module resolution instead.
type SourceStatus ¶
type SourceStatus struct {
// Ref is the resolved source reference.
// +optional
Ref *SourceReference `json:"ref,omitempty"`
// ArtifactRevision is the revision reported by the source artifact.
// +optional
ArtifactRevision string `json:"artifactRevision,omitempty"`
// ArtifactDigest is the digest reported by the source artifact.
// +optional
ArtifactDigest string `json:"artifactDigest,omitempty"`
// ArtifactURL is the fetch URL reported by the source artifact.
// +optional
ArtifactURL string `json:"artifactURL,omitempty"`
}
SourceStatus describes the resolved source artifact used by a reconcile.
func (*SourceStatus) DeepCopy ¶
func (in *SourceStatus) DeepCopy() *SourceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceStatus.
func (*SourceStatus) DeepCopyInto ¶
func (in *SourceStatus) DeepCopyInto(out *SourceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.