Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the cluster.open-cluster-management.io v1alpha1 API group +kubebuilder:object:generate=true +groupName=cluster.open-cluster-management.io
Index ¶
- Constants
- Variables
- type AWSCredentials
- type AWSPlatform
- type AzurePlatform
- type ConditionType
- type CredentialARNs
- type CurrentPhase
- type HypershiftDeployment
- type HypershiftDeploymentList
- type HypershiftDeploymentSpec
- type HypershiftDeploymentStatus
- type HypershiftNodePools
- type InfraOverride
- type InfraSpec
- type Platforms
Constants ¶
const ( ConfiguredAsExpectedReason = "ConfiguredAsExpected" PlatfromDestroyReason = "Destroying" MisConfiguredReason = "MisConfigured" BeingConfiguredReason = "BeingConfigured" NotApplicableReason = "NA" RemovingReason = "Removing" AsExpectedReason = "AsExpected" NodePoolProvision = "NodePoolsProvisioned" // PlatformConfigured indicates (if status is true) that the // platform configuration specified for the platform provider has been applied PlatformConfigured ConditionType = "PlatformInfrastructureConfigured" // PlatformIAMConfigured indicates (if status is true) that the IAM is configured PlatformIAMConfigured ConditionType = "PlatformIAMConfigured" // ProviderSecretConfigured indicates the state of the secret reference ProviderSecretConfigured ConditionType = "ProviderSecretConfigured" // HostedCluster indicates the state of the hostedcluster HostedClusterAvailable ConditionType = "HostedClusterAvailable" // HostedCluster indicates the state of the hostedcluster HostedClusterProgress ConditionType = "HostedClusterProgress" // Nodepool indicates the state of the nodepools Nodepool ConditionType = "NodePool" // this mirror open-cluster-management.io/api/work/v1/types.go#L266-L279 // WorkProgressing represents that the work is in the progress to be // applied on the managed cluster. WorkProgressing ConditionType = "Progressing" // WorkApplied represents that the workload defined in work is // succesfully applied on the managed cluster. WorkApplied ConditionType = "Applied" // WorkAvailable represents that all resources of the work exists on // the managed cluster. WorkAvailable ConditionType = "Available" // WorkDegraded represents that the current state of work does not match // the desired state for a certain period. WorkDegraded ConditionType = "Degraded" // WorkConfigured indicates the status of applying the ManifestWork WorkConfigured ConditionType = "ManifestWorkConfigured" InfraOverrideDestroy = "ORPHAN" InfraConfigureOnly = "INFRA-ONLY" DeleteHostingNamespace = "DELETE-HOSTING-NAMESPACE" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "cluster.open-cluster-management.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 AWSCredentials ¶
type AWSCredentials struct {
ControlPlaneOperatorARN string `json:"controlPlaneOperatorARN"`
KubeCloudControllerARN string `json:"kubeCloudControllerARN"`
NodePoolManagementARN string `json:"nodePoolManagementARN"`
}
func (*AWSCredentials) DeepCopy ¶
func (in *AWSCredentials) DeepCopy() *AWSCredentials
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSCredentials.
func (*AWSCredentials) DeepCopyInto ¶
func (in *AWSCredentials) DeepCopyInto(out *AWSCredentials)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AWSPlatform ¶
type AWSPlatform struct {
// Region is the AWS region in which the cluster resides. This configures the
// OCP control plane cloud integrations, and is used by NodePool to resolve
// the correct boot AMI for a given release.
//
// +immutable
Region string `json:"region"`
// Zones are availability zones in the AWS region.
// NodePool resource is created in each zone and the NodePool
// name is suffixed by the zone name.
//
// +optional
Zones []string `json:"zones,omitempty"`
}
func (*AWSPlatform) DeepCopy ¶
func (in *AWSPlatform) DeepCopy() *AWSPlatform
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSPlatform.
func (*AWSPlatform) DeepCopyInto ¶
func (in *AWSPlatform) DeepCopyInto(out *AWSPlatform)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzurePlatform ¶
type AzurePlatform struct {
// Region is the Azure region(location) in which the cluster resides. This configures the
// OCP control plane cloud integrations, and is used by NodePool to resolve
// the correct boot image for a given release.
//
// +immutable
Location string `json:"location"`
}
func (*AzurePlatform) DeepCopy ¶
func (in *AzurePlatform) DeepCopy() *AzurePlatform
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzurePlatform.
func (*AzurePlatform) DeepCopyInto ¶
func (in *AzurePlatform) DeepCopyInto(out *AzurePlatform)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConditionType ¶
type ConditionType string
type CredentialARNs ¶
type CredentialARNs struct {
AWS *AWSCredentials `json:"aws,omitempty"`
}
func (*CredentialARNs) DeepCopy ¶
func (in *CredentialARNs) DeepCopy() *CredentialARNs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialARNs.
func (*CredentialARNs) DeepCopyInto ¶
func (in *CredentialARNs) DeepCopyInto(out *CredentialARNs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CurrentPhase ¶
type CurrentPhase string
type HypershiftDeployment ¶
type HypershiftDeployment struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec HypershiftDeploymentSpec `json:"spec,omitempty"`
Status HypershiftDeploymentStatus `json:"status,omitempty"`
}
HypershiftDeployment is the Schema for the hypershiftDeployments API
func (*HypershiftDeployment) DeepCopy ¶
func (in *HypershiftDeployment) DeepCopy() *HypershiftDeployment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HypershiftDeployment.
func (*HypershiftDeployment) DeepCopyInto ¶
func (in *HypershiftDeployment) DeepCopyInto(out *HypershiftDeployment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HypershiftDeployment) DeepCopyObject ¶
func (in *HypershiftDeployment) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type HypershiftDeploymentList ¶
type HypershiftDeploymentList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []HypershiftDeployment `json:"items"`
}
HypershiftDeploymentList contains a list of HypershiftDeployment
func (*HypershiftDeploymentList) DeepCopy ¶
func (in *HypershiftDeploymentList) DeepCopy() *HypershiftDeploymentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HypershiftDeploymentList.
func (*HypershiftDeploymentList) DeepCopyInto ¶
func (in *HypershiftDeploymentList) DeepCopyInto(out *HypershiftDeploymentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HypershiftDeploymentList) DeepCopyObject ¶
func (in *HypershiftDeploymentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type HypershiftDeploymentSpec ¶
type HypershiftDeploymentSpec struct {
// Infrastructure instructions and pointers so either ClusterDeployment generates what is needed or
// skips it when the user provides the infrastructure values
// +immutable
Infrastructure InfraSpec `json:"infrastructure"`
// Infrastructure ID, this is used to tag resources in the Cloud Provider, it will be generated
// if not provided
// +immutable
// +optional
InfraID string `json:"infra-id,omitempty"`
// InfrastructureOverride allows support for special cases
// OverrideDestroy = "ORPHAN"
// InfraConfigureOnly = "INFRA-ONLY"
// DeleteHostingNamespace = "DELETE-HOSTING-NAMESPACE"
// +kubebuilder:validation:Enum=ORPHAN;INFRA-ONLY;DELETE-HOSTING-NAMESPACE
Override InfraOverride `json:"override,omitempty"`
//HostingNamespace specify the where the children resouces(hostedcluster, nodepool)
//to sit in
//if not provided, the default is "clusters"
// +optional
HostingNamespace string `json:"hostingNamespace"`
//HostingCluster only applies to ManifestWork, and specifies which managedCluster's namespace the manifestwork will be applied to.
//If not specified, the controller will flag an error condition.
//The HostingCluster would be the management cluster of the hostedcluster and nodepool generated
//by the hypershiftDeployment
HostingCluster string `json:"hostingCluster"`
// HostedCluster that will be applied to the ManagementCluster by ACM, if omitted, it will be generated
// +optional
HostedClusterSpec *hypv1alpha1.HostedClusterSpec `json:"hostedClusterSpec,omitempty"`
// Reference to a HostedCluster on the HyperShift deployment namespace that will be applied to the
// ManagementCluster by ACM, if omitted, it will be generated
// required if InfraSpec.Configure is false
// +optional
HostedClusterRef corev1.LocalObjectReference `json:"hostedClusterReference,omitempty"`
// NodePools is an array of NodePool resources that will be applied to the ManagementCluster by ACM,
// if omitted, a default NodePool will be generated
// +optional
NodePools []*HypershiftNodePools `json:"nodePools,omitempty"`
// HostedManagedClusterSet is the ManagedClusterSet the hosted cluster should belong to.
// If omitted, the default is the hosting cluster's cluster set
// +optional
HostedManagedClusterSet string `json:"hostedManagedClusterSet,omitempty"`
// Reference to an array of NodePool resources on the HyperShift deployment namespace that will be applied
// to the ManagementCluster by ACM,
// required if InfraSpec.Configure is false
// +optional
NodePoolsRef []corev1.LocalObjectReference `json:"nodePoolReferences,omitempty"`
// Credentials are ARN's that are used for standing up the resources in the cluster.
Credentials *CredentialARNs `json:"credentials,omitempty"`
}
HypershiftDeploymentSpec defines the desired state of HypershiftDeployment
func (*HypershiftDeploymentSpec) DeepCopy ¶
func (in *HypershiftDeploymentSpec) DeepCopy() *HypershiftDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HypershiftDeploymentSpec.
func (*HypershiftDeploymentSpec) DeepCopyInto ¶
func (in *HypershiftDeploymentSpec) DeepCopyInto(out *HypershiftDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HypershiftDeploymentStatus ¶
type HypershiftDeploymentStatus struct {
// Track the conditions for each step in the desired curation that is being
// executed as a job
Conditions []metav1.Condition `json:"conditions,omitempty"`
//Show which phase of curation is currently being processed
Phase CurrentPhase `json:"phase,omitempty"`
}
HypershiftDeploymentStatus defines the observed state of HypershiftDeployment
func (*HypershiftDeploymentStatus) DeepCopy ¶
func (in *HypershiftDeploymentStatus) DeepCopy() *HypershiftDeploymentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HypershiftDeploymentStatus.
func (*HypershiftDeploymentStatus) DeepCopyInto ¶
func (in *HypershiftDeploymentStatus) DeepCopyInto(out *HypershiftDeploymentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HypershiftNodePools ¶
type HypershiftNodePools struct {
// Name is the name to give this NodePool
Name string `json:"name"`
// Spec stores the NodePoolSpec you wan to use. If omitted, it will be generated
Spec hypv1alpha1.NodePoolSpec `json:"spec"`
}
func (*HypershiftNodePools) DeepCopy ¶
func (in *HypershiftNodePools) DeepCopy() *HypershiftNodePools
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HypershiftNodePools.
func (*HypershiftNodePools) DeepCopyInto ¶
func (in *HypershiftNodePools) DeepCopyInto(out *HypershiftNodePools)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InfraOverride ¶
type InfraOverride string
type InfraSpec ¶
type InfraSpec struct {
// Configure the infrastructure using the provided CloudProvider, or user provided
// +immutable
Configure bool `json:"configure"`
// Region is the AWS region in which the cluster resides. This configures the
// OCP control plane cloud integrations, and is used by NodePool to resolve
// the correct boot AMI for a given release.
//
// +optional
// +immutable
Platform *Platforms `json:"platform,omitempty"`
// CloudProvider secret, contains the Cloud credenetial, Pull Secret and Base Domain
CloudProvider corev1.LocalObjectReference `json:"cloudProvider,omitempty"`
}
func (*InfraSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfraSpec.
func (*InfraSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Platforms ¶
type Platforms struct {
Azure *AzurePlatform `json:"azure,omitempty"`
AWS *AWSPlatform `json:"aws,omitempty"`
}
func (*Platforms) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Platforms.
func (*Platforms) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.