Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the flux v1alpha1 API group +kubebuilder:object:generate=true +groupName=flux.gitops.pro
Index ¶
- Constants
- Variables
- type GatesStatus
- type HealthCheck
- type KustomizationAutoDeployer
- func (in *KustomizationAutoDeployer) DeepCopy() *KustomizationAutoDeployer
- func (in *KustomizationAutoDeployer) DeepCopyInto(out *KustomizationAutoDeployer)
- func (in *KustomizationAutoDeployer) DeepCopyObject() runtime.Object
- func (in *KustomizationAutoDeployer) SetConditions(conditions []metav1.Condition)
- type KustomizationAutoDeployerList
- type KustomizationAutoDeployerSpec
- type KustomizationAutoDeployerStatus
- type KustomizationGate
- type ScheduledCheck
Constants ¶
const ( // GatesClosedReason is set when no commits will be applied because // the gates are currently closed. GatesClosedReason string = "GatesClosed" // FailedToLoadKustomizationReason indicates that the referenced // Kustomization could not be loaded. FailedToLoadKustomizationReason string = "FailedToLoadKustomization" // GitRepositoryNotPopulatedReason indicates that the GitRepository // associated with the Kustomization has not updated successfully. GitRepositoryNotPopulatedReason string = "GitRepositoryNotLoaded" // RevisionsErrorReason is set when we couldn't list the revisions in the // upstream repository. RevisionsErrorReason string = "RevisionsError" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "flux.gitops.pro", 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 GatesStatus ¶
GatesStatus contains a per-Gate, per check state of the configured gates in the auto deployer.
func (GatesStatus) DeepCopy ¶
func (in GatesStatus) DeepCopy() GatesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatesStatus.
func (GatesStatus) DeepCopyInto ¶
func (in GatesStatus) DeepCopyInto(out *GatesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HealthCheck ¶
type HealthCheck struct { // URL is a generic catch-all, query the configured URL and if returns // anything other than a 200 response, the check fails. // +required URL string `json:"url"` // Interval at which to check the URL for updates. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m|h))+$" // +required Interval metav1.Duration `json:"interval"` }
HealthCheck is a Gate that fetches a URL and is open if the requests are successful.
func (*HealthCheck) DeepCopy ¶
func (in *HealthCheck) DeepCopy() *HealthCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheck.
func (*HealthCheck) DeepCopyInto ¶
func (in *HealthCheck) DeepCopyInto(out *HealthCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KustomizationAutoDeployer ¶
type KustomizationAutoDeployer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KustomizationAutoDeployerSpec `json:"spec,omitempty"` Status KustomizationAutoDeployerStatus `json:"status,omitempty"` }
KustomizationAutoDeployer is the Schema for the kustomizationautodeployers API
func (*KustomizationAutoDeployer) DeepCopy ¶
func (in *KustomizationAutoDeployer) DeepCopy() *KustomizationAutoDeployer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KustomizationAutoDeployer.
func (*KustomizationAutoDeployer) DeepCopyInto ¶
func (in *KustomizationAutoDeployer) DeepCopyInto(out *KustomizationAutoDeployer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KustomizationAutoDeployer) DeepCopyObject ¶
func (in *KustomizationAutoDeployer) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KustomizationAutoDeployer) SetConditions ¶
func (in *KustomizationAutoDeployer) SetConditions(conditions []metav1.Condition)
SetConditions sets the status conditions on the object.
type KustomizationAutoDeployerList ¶
type KustomizationAutoDeployerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KustomizationAutoDeployer `json:"items"` }
KustomizationAutoDeployerList contains a list of KustomizationAutoDeployer
func (*KustomizationAutoDeployerList) DeepCopy ¶
func (in *KustomizationAutoDeployerList) DeepCopy() *KustomizationAutoDeployerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KustomizationAutoDeployerList.
func (*KustomizationAutoDeployerList) DeepCopyInto ¶
func (in *KustomizationAutoDeployerList) DeepCopyInto(out *KustomizationAutoDeployerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KustomizationAutoDeployerList) DeepCopyObject ¶
func (in *KustomizationAutoDeployerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KustomizationAutoDeployerSpec ¶
type KustomizationAutoDeployerSpec struct { // The Kustomization resource to track and wait for new commits to be // available. // // This will access the GitRepository that is used by the Kustomization. // +required KustomizationRef meta.LocalObjectReference `json:"kustomizationRef"` // Interval at which to check the GitRepository for updates. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m|h))+$" // +required Interval metav1.Duration `json:"interval"` // CloneDepth limits the number of commits to get from the GitRepository. // // This is an optimisation for fetching commits. // // +kubebuilder:default=100 // +kubebuilder:validation:Minimum:=5 // +kubebuilder:validation:Maximum:=100 CommitLimit int `json:"commitLimit,omitempty"` // Gates are the checks applied before advancing the commit in the // GitRepository for the referenced Kustomization. // +optional Gates []KustomizationGate `json:"gates,omitempty"` }
KustomizationAutoDeployerSpec defines the desired state of KustomizationAutoDeployer
func (*KustomizationAutoDeployerSpec) DeepCopy ¶
func (in *KustomizationAutoDeployerSpec) DeepCopy() *KustomizationAutoDeployerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KustomizationAutoDeployerSpec.
func (*KustomizationAutoDeployerSpec) DeepCopyInto ¶
func (in *KustomizationAutoDeployerSpec) DeepCopyInto(out *KustomizationAutoDeployerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KustomizationAutoDeployerStatus ¶
type KustomizationAutoDeployerStatus struct { // LatestCommit is the latest commit processed by the Kustomization. // +optional LatestCommit string `json:"latestCommit,omitempty"` // ObservedGeneration reflects the generation of the most recently observed // KustomizationAutoDeployer. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions holds the conditions for the KustomizationAutoDeployer. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` // Gates contains the state of the configured gates. Gates GatesStatus `json:"gates,omitempty"` }
KustomizationAutoDeployerStatus defines the observed state of KustomizationAutoDeployer
func (*KustomizationAutoDeployerStatus) DeepCopy ¶
func (in *KustomizationAutoDeployerStatus) DeepCopy() *KustomizationAutoDeployerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KustomizationAutoDeployerStatus.
func (*KustomizationAutoDeployerStatus) DeepCopyInto ¶
func (in *KustomizationAutoDeployerStatus) DeepCopyInto(out *KustomizationAutoDeployerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KustomizationGate ¶
type KustomizationGate struct { // Name is a string used to identify the gate. // +required Name string `json:"name"` // HealthCheck is a generic URL checker. // +optional HealthCheck *HealthCheck `json:"healthCheck,omitempty"` // ScheduledCheck is a time-based gate. // +optional Scheduled *ScheduledCheck `json:"scheduled,omitempty"` }
KustomizationGate describes a gate to be checked before updating to the latest commit.
func (*KustomizationGate) DeepCopy ¶
func (in *KustomizationGate) DeepCopy() *KustomizationGate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KustomizationGate.
func (*KustomizationGate) DeepCopyInto ¶
func (in *KustomizationGate) DeepCopyInto(out *KustomizationGate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScheduledCheck ¶
type ScheduledCheck struct { // TODO: These need validation! // hh:mm for the time to "open" the gate at. // +required Open string `json:"open"` // hh:mm for the time to "close" the gate at. // +required Close string `json:"close"` }
ScheduledCheck is a Gate that is open if the current time is between the open and close times.
func (*ScheduledCheck) DeepCopy ¶
func (in *ScheduledCheck) DeepCopy() *ScheduledCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduledCheck.
func (*ScheduledCheck) DeepCopyInto ¶
func (in *ScheduledCheck) DeepCopyInto(out *ScheduledCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.