Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the gitops v1 API group +kubebuilder:object:generate=true +groupName=gitops.kanod.io
Index ¶
- Variables
- type ClusterDef
- func (in *ClusterDef) DeepCopy() *ClusterDef
- func (in *ClusterDef) DeepCopyInto(out *ClusterDef)
- func (in *ClusterDef) DeepCopyObject() runtime.Object
- func (r *ClusterDef) Default()
- func (r *ClusterDef) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *ClusterDef) ValidateCreate() error
- func (r *ClusterDef) ValidateDelete() error
- func (r *ClusterDef) ValidateUpdate(old runtime.Object) error
- type ClusterDefList
- type ClusterDefSpec
- type ClusterDefState
- type ClusterDefStatus
- type GitLocation
- type PivotInformation
- type PivotState
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "gitops.kanod.io", 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 ClusterDef ¶
type ClusterDef struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterDefSpec `json:"spec,omitempty"` Status ClusterDefStatus `json:"status,omitempty"` }
func (*ClusterDef) DeepCopy ¶
func (in *ClusterDef) DeepCopy() *ClusterDef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterDef.
func (*ClusterDef) DeepCopyInto ¶
func (in *ClusterDef) DeepCopyInto(out *ClusterDef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterDef) DeepCopyObject ¶
func (in *ClusterDef) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterDef) Default ¶ added in v0.8.0
func (r *ClusterDef) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*ClusterDef) SetupWebhookWithManager ¶ added in v0.8.0
func (r *ClusterDef) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*ClusterDef) ValidateCreate ¶ added in v0.8.0
func (r *ClusterDef) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*ClusterDef) ValidateDelete ¶ added in v0.8.0
func (r *ClusterDef) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*ClusterDef) ValidateUpdate ¶ added in v0.8.0
func (r *ClusterDef) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type ClusterDefList ¶
type ClusterDefList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ClusterDef `json:"items"` }
ClusterDefList contains a list of ClusterDef +kubebuilder:object:root=true
func (*ClusterDefList) DeepCopy ¶
func (in *ClusterDefList) DeepCopy() *ClusterDefList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterDefList.
func (*ClusterDefList) DeepCopyInto ¶
func (in *ClusterDefList) DeepCopyInto(out *ClusterDefList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterDefList) DeepCopyObject ¶
func (in *ClusterDefList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterDefSpec ¶
type ClusterDefSpec struct { // Source is the location of the cluster definition. Source GitLocation `json:"source"` // CredentialName is the user credentials for accessing git repository // It must be in a secret in the same namespace CredentialName string `json:"credentialName"` // ConfigurationName is the configuration supplied by the infrastructure // administrator to render the specification of the cluster definition // It is a configmap in the same namespace ConfigurationName string `json:"configurationName"` // CidataName is the name of the configmap that customize the cluster // cloud-init datas. This has precedence over all other sources of // cloud-init data. CidataName string `json:"cidataName,omitempty"` // PivotInfo indicates if the argocd application of the targer cluster . // must be deployed on the target cluster PivotInfo PivotInformation `json:"pivotInfo,omitempty"` }
ClusterDefSpec defines the desired state of ClusterDef
func (*ClusterDefSpec) DeepCopy ¶
func (in *ClusterDefSpec) DeepCopy() *ClusterDefSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterDefSpec.
func (*ClusterDefSpec) DeepCopyInto ¶
func (in *ClusterDefSpec) DeepCopyInto(out *ClusterDefSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterDefState ¶
type ClusterDefState string
ClusterDefState describes the possible phase of the cluster definition +kubebuilder:validation:Enum=ApplicationCreated;ApplicationSynced;ClusterProvisionned;Ready;Failed
const ( // ApplicationCreated means the resources have been created ApplicationCreated ClusterDefState = "ApplicationCreated" // ApplicationSynced means the application is synced ApplicationSynced ClusterDefState = "ApplicationSynced" // ClusterProvisionned means that it is possible to connect to the cluster ClusterProvisionned ClusterDefState = "ClusterProvisionned" // Ready means that nodes are ready. Ready ClusterDefState = "Ready" // Failed means that the application failed to deploy Failed ClusterDefState = "Failed" )
type ClusterDefStatus ¶
type ClusterDefStatus struct { // Status of pivot // +optional PivotStatus PivotState `json:"pivotstatus"` // Status of deployment // +optional Phase ClusterDefState `json:"phase"` // ControlPlaneVersion is the version supported by control plane // +optional ControlPlaneVersion string `json:"controlPlaneVersion"` // +optional // MachineVersions is a sorted array of different versions of the kubelet // deployed on machines MachineVersions []string `json:"machineVersions"` }
ClusterDefStatus defines the observed state of ClusterDef
func (*ClusterDefStatus) DeepCopy ¶
func (in *ClusterDefStatus) DeepCopy() *ClusterDefStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterDefStatus.
func (*ClusterDefStatus) DeepCopyInto ¶
func (in *ClusterDefStatus) DeepCopyInto(out *ClusterDefStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitLocation ¶
type GitLocation struct { // Repository is the URL of the project hosting the files Repository string `json:"repository"` // Branch is the git branch followed by ClusterDef Branch string `json:"branch,omitempty"` // Path is the subpath of the folder hosting the configuration file. Path string `json:"path,omitempty"` }
GitLocation defines a complete path to a version of a folder on a git repository
func (*GitLocation) DeepCopy ¶
func (in *GitLocation) DeepCopy() *GitLocation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitLocation.
func (*GitLocation) DeepCopyInto ¶
func (in *GitLocation) DeepCopyInto(out *GitLocation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PivotInformation ¶ added in v0.8.0
type PivotInformation struct { // Pivot indicates if the cluster pivoting process should be launched Pivot bool `json:"pivot"` // BaremetalpoolList contains the list of Baremetalpool // to be moved on the target cluster BaremetalpoolList []string `json:"baremetalpoolList,omitempty"` // NetworkList contains the list of Network // to be moved on the target cluster NetworkList []string `json:"networkList,omitempty"` // kanod custom resource name KanodName string `json:"kanodName"` // namespace of the kanod custom resource KanodNamespace string `json:"kanodNamespace"` }
Pivot defines informations nedded for pivoting
func (*PivotInformation) DeepCopy ¶ added in v0.8.0
func (in *PivotInformation) DeepCopy() *PivotInformation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PivotInformation.
func (*PivotInformation) DeepCopyInto ¶ added in v0.8.0
func (in *PivotInformation) DeepCopyInto(out *PivotInformation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PivotState ¶ added in v0.8.0
type PivotState string
PivotState describes the possible phase of the cluster pivoting process +kubebuilder:validation:Enum=NotPivoted;TargetClusterInfoStored;KanodOperatorInstalled;KanodOperatorReady;KanodResourcesMoved;StackDeployed;ArgoAppDeleted;ResourcesLabeled;BaremetalpoolPaused;NetworkPaused;ResourcesPivoted;ResourcesUnlabeled;BmpResourcesPivoted;NetworkResourcesPivoted;BaremetalpoolUnPaused;NetworkUnPaused;IronicOnLocalClusterScaledToZero;IronicOnLocalClusterUndeployed;IronicOnLocalClusterScaledToOne;IronicOnLocalClusterRedeployed;ClusterPivoted
const ( // NotPivoted NotPivoted PivotState = "NotPivoted" // TargetClusterInfoStored TargetClusterInfoStored PivotState = "TargetClusterInfoStored" // KanodOperatorInstalled KanodOperatorInstalled PivotState = "KanodOperatorInstalled" // KanodOperatorReady KanodOperatorReady PivotState = "KanodOperatorReady" // KanodResourcesMoved KanodResourcesMoved PivotState = "KanodResourcesMoved" // StackDeployed StackDeployed PivotState = "StackDeployed" // ArgoAppDeleted ArgoAppDeleted PivotState = "ArgoAppDeleted" // ResourcesLabeled ResourcesLabeled PivotState = "ResourcesLabeled" // BaremetalpoolPaused BaremetalpoolPaused PivotState = "BaremetalpoolPaused" // BaremetalpoolPaused NetworkPaused PivotState = "NetworkPaused" // ResourcesPivoted ResourcesPivoted PivotState = "ResourcesPivoted" // ResourcesUnlabeled ResourcesUnlabeled PivotState = "ResourcesUnlabeled" // BmpResourcesPivoted BmpResourcesPivoted PivotState = "BmpResourcesPivoted" // NetworkResourcesPivoted NetworkResourcesPivoted PivotState = "NetworkResourcesPivoted" // BaremetalpoolUnPaused BaremetalpoolUnPaused PivotState = "BaremetalpoolUnPaused" // BaremetalpoolUnPaused NetworkUnPaused PivotState = "NetworkUnPaused" // IronicOnLocalClusterScaledToZero IronicOnLocalClusterScaledToZero PivotState = "IronicOnLocalClusterScaledToZero" // IronicOnLocalClusterUndeployed IronicOnLocalClusterUndeployed PivotState = "IronicOnLocalClusterUndeployed" // IronicOnLocalClusterScaledToOne IronicOnLocalClusterScaledToOne PivotState = "IronicOnLocalClusterScaledToOne" // IronicOnLocalClusterRedeployed IronicOnLocalClusterRedeployed PivotState = "IronicOnLocalClusterRedeployed" // ClusterPivoted ClusterPivoted PivotState = "ClusterPivoted" )