Documentation
¶
Overview ¶
Package v1beta2 contains API Schema definitions for experimental v1beta2 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- func RegisterDefaults(scheme *runtime.Scheme) error
- type ASGStatus
- type AWSFargateProfile
- func (in *AWSFargateProfile) DeepCopy() *AWSFargateProfile
- func (in *AWSFargateProfile) DeepCopyInto(out *AWSFargateProfile)
- func (in *AWSFargateProfile) DeepCopyObject() runtime.Object
- func (r *AWSFargateProfile) GetConditions() clusterv1.Conditions
- func (*AWSFargateProfile) Hub()
- func (r *AWSFargateProfile) SetConditions(conditions clusterv1.Conditions)
- func (r *AWSFargateProfile) SetupWebhookWithManager(mgr ctrl.Manager) error
- type AWSFargateProfileList
- type AWSLaunchTemplate
- type AWSLifecycleHook
- type AWSMachinePool
- func (in *AWSMachinePool) DeepCopy() *AWSMachinePool
- func (in *AWSMachinePool) DeepCopyInto(out *AWSMachinePool)
- func (in *AWSMachinePool) DeepCopyObject() runtime.Object
- func (r *AWSMachinePool) GetConditions() clusterv1.Conditions
- func (r *AWSMachinePool) GetObjectKind() schema.ObjectKind
- func (*AWSMachinePool) Hub()
- func (r *AWSMachinePool) SetConditions(conditions clusterv1.Conditions)
- func (r *AWSMachinePool) SetupWebhookWithManager(mgr ctrl.Manager) error
- type AWSMachinePoolInstanceStatus
- type AWSMachinePoolList
- type AWSMachinePoolSpec
- type AWSMachinePoolStatus
- type AWSMachinePoolWebhook
- func (in *AWSMachinePoolWebhook) DeepCopy() *AWSMachinePoolWebhook
- func (in *AWSMachinePoolWebhook) DeepCopyInto(out *AWSMachinePoolWebhook)
- func (*AWSMachinePoolWebhook) Default(ctx context.Context, obj runtime.Object) error
- func (*AWSMachinePoolWebhook) ValidateCreate(_ context.Context, obj runtime.Object) (admission.Warnings, error)
- func (*AWSMachinePoolWebhook) ValidateDelete(_ context.Context, _ runtime.Object) (admission.Warnings, error)
- func (*AWSMachinePoolWebhook) ValidateUpdate(_ context.Context, oldObj, newObj runtime.Object) (admission.Warnings, error)
- type AWSManagedMachinePool
- func (in *AWSManagedMachinePool) DeepCopy() *AWSManagedMachinePool
- func (in *AWSManagedMachinePool) DeepCopyInto(out *AWSManagedMachinePool)
- func (in *AWSManagedMachinePool) DeepCopyObject() runtime.Object
- func (r *AWSManagedMachinePool) GetConditions() clusterv1.Conditions
- func (*AWSManagedMachinePool) Hub()
- func (r *AWSManagedMachinePool) SetConditions(conditions clusterv1.Conditions)
- func (r *AWSManagedMachinePool) SetupWebhookWithManager(mgr ctrl.Manager) error
- type AWSManagedMachinePoolList
- type AWSManagedMachinePoolSpec
- type AWSManagedMachinePoolStatus
- type AZSubnetType
- type AccountRoleConfig
- type AccountRolesRef
- type AutoScalingGroup
- type BlockDeviceMapping
- type CFResource
- type EBS
- type FargateProfileSpec
- type FargateProfileStatus
- type FargateSelector
- type InstancesDistribution
- type LifecycleHookDefaultResult
- type LifecycleTransition
- type ManagedMachineAMIType
- type ManagedMachinePoolCapacityType
- type ManagedMachinePoolScaling
- type ManagedRemoteAccess
- type MixedInstancesPolicy
- type OidcProviderType
- type OnDemandAllocationStrategy
- type OperatorRoleConfig
- type Overrides
- type Processes
- type ROSACluster
- type ROSAClusterList
- type ROSAClusterSpec
- type ROSAClusterStatus
- type ROSAMachinePool
- func (in *ROSAMachinePool) DeepCopy() *ROSAMachinePool
- func (in *ROSAMachinePool) DeepCopyInto(out *ROSAMachinePool)
- func (in *ROSAMachinePool) DeepCopyObject() runtime.Object
- func (r *ROSAMachinePool) Default()
- func (r *ROSAMachinePool) GetConditions() clusterv1.Conditions
- func (r *ROSAMachinePool) SetConditions(conditions clusterv1.Conditions)
- func (r *ROSAMachinePool) SetupWebhookWithManager(mgr ctrl.Manager) error
- type ROSAMachinePoolList
- type ROSANetwork
- type ROSANetworkList
- type ROSANetworkSpec
- type ROSANetworkStatus
- type ROSANetworkSubnet
- type ROSARoleConfig
- func (in *ROSARoleConfig) DeepCopy() *ROSARoleConfig
- func (in *ROSARoleConfig) DeepCopyInto(out *ROSARoleConfig)
- func (in *ROSARoleConfig) DeepCopyObject() runtime.Object
- func (r *ROSARoleConfig) GetConditions() clusterv1.Conditions
- func (r *ROSARoleConfig) SetConditions(conditions clusterv1.Conditions)
- func (r *ROSARoleConfig) SetupWebhookWithManager(mgr ctrl.Manager) error
- type ROSARoleConfigList
- type ROSARoleConfigSpec
- type ROSARoleConfigStatus
- type RefreshPreferences
- type RollingUpdate
- type RosaMachinePoolSpec
- type RosaMachinePoolStatus
- type RosaTaint
- type RosaUpdateConfig
- type SharedVPCConfig
- type SpotAllocationStrategy
- type SuspendProcessesTypes
- type Tags
- type Taint
- type TaintEffect
- type Taints
- type UpdateConfig
Constants ¶
const ( // ASGReadyCondition reports on current status of the autoscaling group. Ready indicates the group is provisioned. ASGReadyCondition clusterv1.ConditionType = "ASGReady" // ASGNotFoundReason used when the autoscaling group couldn't be retrieved. ASGNotFoundReason = "ASGNotFound" // ASGProvisionFailedReason used for failures during autoscaling group provisioning. ASGProvisionFailedReason = "ASGProvisionFailed" // ASGDeletionInProgress ASG is in a deletion in progress state. ASGDeletionInProgress = "ASGDeletionInProgress" // LaunchTemplateReadyCondition represents the status of an AWSMachinePool's associated Launch Template. LaunchTemplateReadyCondition clusterv1.ConditionType = "LaunchTemplateReady" // LaunchTemplateNotFoundReason is used when an associated Launch Template can't be found. LaunchTemplateNotFoundReason = "LaunchTemplateNotFound" // LaunchTemplateCreateFailedReason used for failures during Launch Template creation. LaunchTemplateCreateFailedReason = "LaunchTemplateCreateFailed" // LaunchTemplateReconcileFailedReason used for failures during Launch Template reconciliation. LaunchTemplateReconcileFailedReason = "LaunchTemplateReconcileFailed" // PreLaunchTemplateUpdateCheckCondition reports if all prerequisite are met for launch template update. PreLaunchTemplateUpdateCheckCondition clusterv1.ConditionType = "PreLaunchTemplateUpdateCheckSuccess" // PostLaunchTemplateUpdateOperationCondition reports on successfully completes post launch template update operation. PostLaunchTemplateUpdateOperationCondition clusterv1.ConditionType = "PostLaunchTemplateUpdateOperationSuccess" // PreLaunchTemplateUpdateCheckFailedReason used to report when not all prerequisite are met for launch template update. PreLaunchTemplateUpdateCheckFailedReason = "PreLaunchTemplateUpdateCheckFailed" // PostLaunchTemplateUpdateOperationFailedReason used to report when post launch template update operation failed. PostLaunchTemplateUpdateOperationFailedReason = "PostLaunchTemplateUpdateOperationFailed" // InstanceRefreshStartedCondition reports on successfully starting instance refresh. InstanceRefreshStartedCondition clusterv1.ConditionType = "InstanceRefreshStarted" // InstanceRefreshNotReadyReason used to report instance refresh is not initiated. // If there are instance refreshes that are in progress, then a new instance refresh request will fail. InstanceRefreshNotReadyReason = "InstanceRefreshNotReady" // InstanceRefreshFailedReason used to report when there instance refresh is not initiated. InstanceRefreshFailedReason = "InstanceRefreshFailed" // AWSMachineCreationFailed reports if creating AWSMachines to represent ASG (machine pool) machines failed. AWSMachineCreationFailed = "AWSMachineCreationFailed" // AWSMachineDeletionFailed reports if deleting AWSMachines failed. AWSMachineDeletionFailed = "AWSMachineDeletionFailed" // LifecycleHookReadyCondition reports on the status of the lifecycle hook. LifecycleHookReadyCondition clusterv1.ConditionType = "LifecycleHookReady" // LifecycleHookCreationFailedReason used for failures during lifecycle hook creation. LifecycleHookCreationFailedReason = "LifecycleHookCreationFailed" // LifecycleHookUpdateFailedReason used for failures during lifecycle hook update. LifecycleHookUpdateFailedReason = "LifecycleHookUpdateFailed" // LifecycleHookDeletionFailedReason used for failures during lifecycle hook deletion. LifecycleHookDeletionFailedReason = "LifecycleHookDeletionFailed" )
const ( // EKSNodegroupReadyCondition condition reports on the successful reconciliation of eks control plane. EKSNodegroupReadyCondition clusterv1.ConditionType = "EKSNodegroupReady" // EKSNodegroupReconciliationFailedReason used to report failures while reconciling EKS control plane. EKSNodegroupReconciliationFailedReason = "EKSNodegroupReconciliationFailed" // WaitingForEKSControlPlaneReason used when the machine pool is waiting for // EKS control plane infrastructure to be ready before proceeding. WaitingForEKSControlPlaneReason = "WaitingForEKSControlPlane" )
const ( // EKSFargateProfileReadyCondition condition reports on the successful reconciliation of eks control plane. EKSFargateProfileReadyCondition clusterv1.ConditionType = "EKSFargateProfileReady" // EKSFargateCreatingCondition condition reports on whether the fargate // profile is creating. EKSFargateCreatingCondition clusterv1.ConditionType = "EKSFargateCreating" // EKSFargateDeletingCondition used to report that the profile is deleting. EKSFargateDeletingCondition = "EKSFargateDeleting" // EKSFargateReconciliationFailedReason used to report failures while reconciling EKS control plane. EKSFargateReconciliationFailedReason = "EKSFargateReconciliationFailed" // EKSFargateDeletingReason used when the profile is deleting. EKSFargateDeletingReason = "Deleting" // EKSFargateCreatingReason used when the profile is creating. EKSFargateCreatingReason = "Creating" // EKSFargateCreatedReason used when the profile is created. EKSFargateCreatedReason = "Created" // EKSFargateDeletedReason used when the profile is deleted. EKSFargateDeletedReason = "Deleted" // EKSFargateFailedReason used when the profile failed. EKSFargateFailedReason = "Failed" )
const ( // IAMNodegroupRolesReadyCondition condition reports on the successful // reconciliation of EKS nodegroup iam roles. IAMNodegroupRolesReadyCondition clusterv1.ConditionType = "IAMNodegroupRolesReady" // IAMNodegroupRolesReconciliationFailedReason used to report failures while // reconciling EKS nodegroup iam roles. IAMNodegroupRolesReconciliationFailedReason = "IAMNodegroupRolesReconciliationFailed" // IAMFargateRolesReadyCondition condition reports on the successful // reconciliation of EKS nodegroup iam roles. IAMFargateRolesReadyCondition clusterv1.ConditionType = "IAMFargateRolesReady" // IAMFargateRolesReconciliationFailedReason used to report failures while // reconciling EKS nodegroup iam roles. IAMFargateRolesReconciliationFailedReason = "IAMFargateRolesReconciliationFailed" )
const ( // RosaMachinePoolReadyCondition condition reports on the successful reconciliation of rosa machinepool. RosaMachinePoolReadyCondition clusterv1.ConditionType = "RosaMachinePoolReady" // RosaMachinePoolUpgradingCondition condition reports whether ROSAMachinePool is upgrading or not. RosaMachinePoolUpgradingCondition clusterv1.ConditionType = "RosaMachinePoolUpgrading" // WaitingForRosaControlPlaneReason used when the machine pool is waiting for // ROSA control plane infrastructure to be ready before proceeding. WaitingForRosaControlPlaneReason = "WaitingForRosaControlPlane" // RosaMachinePoolReconciliationFailedReason used to report failures while reconciling ROSAMachinePool. RosaMachinePoolReconciliationFailedReason = "ReconciliationFailed" )
const ( // ROSANetworkReadyCondition condition reports on the successful reconciliation of ROSANetwork. ROSANetworkReadyCondition clusterv1.ConditionType = "ROSANetworkReady" // ROSANetworkCreatingReason used when ROSANetwork is being created. ROSANetworkCreatingReason = "Creating" // ROSANetworkCreatedReason used when ROSANetwork is created. ROSANetworkCreatedReason = "Created" // ROSANetworkFailedReason used when rosaNetwork creation failed. ROSANetworkFailedReason = "Failed" // ROSANetworkDeletingReason used when ROSANetwork is being deleted. ROSANetworkDeletingReason = "Deleting" // ROSANetworkDeletionFailedReason used to report failures while deleting ROSANetwork. ROSANetworkDeletionFailedReason = "DeletionFailed" )
const ( // FargateProfileFinalizer allows the controller to clean up resources on delete. FargateProfileFinalizer = "awsfargateprofile.infrastructure.cluster.x-k8s.io" // MachinePoolFinalizer is the finalizer for the machine pool. MachinePoolFinalizer = "awsmachinepool.infrastructure.cluster.x-k8s.io" // ManagedMachinePoolFinalizer allows the controller to clean up resources on delete. ManagedMachinePoolFinalizer = "awsmanagedmachinepools.infrastructure.cluster.x-k8s.io" // RosaMachinePoolFinalizer allows the controller to clean up resources on delete. RosaMachinePoolFinalizer = "rosamachinepools.infrastructure.cluster.x-k8s.io" // RosaRoleConfigFinalizer allows the controller to clean up resources on delete. RosaRoleConfigFinalizer = "rosaroleconfigs.infrastructure.cluster.x-k8s.io" )
const ( // IngressOperatorARNSuffix is the suffix for the ingress operator role. IngressOperatorARNSuffix = "-openshift-ingress-operator-cloud-credentials" // ImageRegistryARNSuffix is the suffix for the image registry operator role. ImageRegistryARNSuffix = "-openshift-image-registry-installer-cloud-credentials" // StorageARNSuffix is the suffix for the storage operator role. StorageARNSuffix = "-openshift-cluster-csi-drivers-ebs-cloud-credentials" // NetworkARNSuffix is the suffix for the network operator role. NetworkARNSuffix = "-openshift-cloud-network-config-controller-cloud-credentials" // KubeCloudControllerARNSuffix is the suffix for the kube cloud controller role. KubeCloudControllerARNSuffix = "-kube-system-kube-controller-manager" // NodePoolManagementARNSuffix is the suffix for the node pool management role. NodePoolManagementARNSuffix = "-kube-system-capa-controller-manager" // ControlPlaneOperatorARNSuffix is the suffix for the control plane operator role. ControlPlaneOperatorARNSuffix = "-kube-system-control-plane-operator" // KMSProviderARNSuffix is the suffix for the kms provider role. KMSProviderARNSuffix = "-kube-system-kms-provider" )
Operator Role const
const ( // HCPROSAInstallerRole is the suffix for installer account role HCPROSAInstallerRole = "-HCP-ROSA-Installer-Role" // HCPROSASupportRole is the suffix for support account role HCPROSASupportRole = "-HCP-ROSA-Support-Role" // HCPROSAWorkerRole is the suffix for worker account role HCPROSAWorkerRole = "-HCP-ROSA-Worker-Role" )
Account Role const
const ( // RosaRoleConfigReadyCondition condition reports on the successful reconciliation of RosaRoleConfig. RosaRoleConfigReadyCondition = "RosaRoleConfigReady" // RosaRoleConfigDeletionFailedReason used to report failures while deleting RosaRoleConfig. RosaRoleConfigDeletionFailedReason = "DeletionFailed" // RosaRoleConfigReconciliationFailedReason used to report reconciliation failures. RosaRoleConfigReconciliationFailedReason = "ReconciliationFailed" // RosaRoleConfigDeletionStarted used to indicate that the deletion of RosaRoleConfig has started. RosaRoleConfigDeletionStarted = "DeletionStarted" // RosaRoleConfigCreatedReason used to indicate that the RosaRoleConfig has been created. RosaRoleConfigCreatedReason = "Created" )
const ( // KindMachinePool is a MachinePool resource Kind KindMachinePool string = "MachinePool" )
const (
// LaunchTemplateLatestVersion defines the launching of the latest version of the template.
LaunchTemplateLatestVersion = "$Latest"
)
Constants block.
const ROSANetworkFinalizer = "rosanetwork.infrastructure.cluster.x-k8s.io"
ROSANetworkFinalizer allows the controller to clean up resources on delete.
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1beta2"} // 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 )
var ( // OnDemandAllocationStrategyPrioritized uses the order of instance type overrides // for the LaunchTemplate to define the launch priority of each instance type. OnDemandAllocationStrategyPrioritized = OnDemandAllocationStrategy("prioritized") // OnDemandAllocationStrategyLowestPrice will make the Auto Scaling group launch // instances using the On-Demand pools with the lowest price, and evenly allocates // your instances across the On-Demand pools that you specify. OnDemandAllocationStrategyLowestPrice = OnDemandAllocationStrategy("lowest-price") )
var ( // SpotAllocationStrategyLowestPrice will make the Auto Scaling group launch // instances using the Spot pools with the lowest price, and evenly allocates // your instances across the number of Spot pools that you specify. SpotAllocationStrategyLowestPrice = SpotAllocationStrategy("lowest-price") // SpotAllocationStrategyCapacityOptimized will make the Auto Scaling group launch // instances using Spot pools that are optimally chosen based on the available Spot capacity. SpotAllocationStrategyCapacityOptimized = SpotAllocationStrategy("capacity-optimized") // SpotAllocationStrategyCapacityOptimizedPrioritized will make the Auto Scaling group launch // instances using Spot pools that are optimally chosen based on the available Spot capacity // while also taking into account the priority order specified by the user for Instance Types. SpotAllocationStrategyCapacityOptimizedPrioritized = SpotAllocationStrategy("capacity-optimized-prioritized") // SpotAllocationStrategyPriceCapacityOptimized will make the Auto Scaling group launch // instances using Spot pools that consider both price and available Spot capacity to // provide a balance between cost savings and allocation reliability. SpotAllocationStrategyPriceCapacityOptimized = SpotAllocationStrategy("price-capacity-optimized") )
var ( // TaintEffectNoSchedule is a taint that indicates that a pod shouldn't be scheduled on a node // unless it can tolerate the taint. TaintEffectNoSchedule = TaintEffect("no-schedule") // TaintEffectNoExecute is a taint that indicates that a pod shouldn't be schedule on a node // unless it can tolerate it. And if its already running on the node it will be evicted. TaintEffectNoExecute = TaintEffect("no-execute") // TaintEffectPreferNoSchedule is a taint that indicates that there is a "preference" that pods shouldn't // be scheduled on a node unless it can tolerate the taint. the scheduler will try to avoid placing the pod // but it may still run on the node if there is no other option. TaintEffectPreferNoSchedule = TaintEffect("prefer-no-schedule") )
var ASGStatusDeleteInProgress = ASGStatus("Delete in progress")
ASGStatusDeleteInProgress is the string representing an ASG that is currently deleting.
var ( // DefaultEKSFargateRole is the name of the default IAM role to use for fargate // profiles if no other role is supplied in the spec and if iam role creation // is not enabled. The default can be created using clusterawsadm or created manually. DefaultEKSFargateRole = fmt.Sprintf("eks-fargate%s", iamv1.DefaultNameSuffix) )
var ( // DefaultEKSNodegroupRole is the name of the default IAM role to use for EKS nodegroups // if no other role is supplied in the spec and if iam role creation is not enabled. The default // can be created using clusterawsadm or created manually. DefaultEKSNodegroupRole = fmt.Sprintf("eks-nodegroup%s", iamv1.DefaultNameSuffix) )
Functions ¶
func RegisterDefaults ¶
RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.
Types ¶
type ASGStatus ¶
type ASGStatus string
ASGStatus is a status string returned by the autoscaling API.
type AWSFargateProfile ¶
type AWSFargateProfile struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec FargateProfileSpec `json:"spec,omitempty"`
Status FargateProfileStatus `json:"status,omitempty"`
}
AWSFargateProfile is the Schema for the awsfargateprofiles API.
func (*AWSFargateProfile) DeepCopy ¶
func (in *AWSFargateProfile) DeepCopy() *AWSFargateProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSFargateProfile.
func (*AWSFargateProfile) DeepCopyInto ¶
func (in *AWSFargateProfile) DeepCopyInto(out *AWSFargateProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AWSFargateProfile) DeepCopyObject ¶
func (in *AWSFargateProfile) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AWSFargateProfile) GetConditions ¶
func (r *AWSFargateProfile) GetConditions() clusterv1.Conditions
GetConditions returns the observations of the operational state of the AWSFargateProfile resource.
func (*AWSFargateProfile) Hub ¶
func (*AWSFargateProfile) Hub()
Hub marks AWSFargateProfile as a conversion hub.
func (*AWSFargateProfile) SetConditions ¶
func (r *AWSFargateProfile) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the underlying service state of the AWSFargateProfile to the predescribed clusterv1.Conditions.
func (*AWSFargateProfile) SetupWebhookWithManager ¶
func (r *AWSFargateProfile) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager will setup the webhooks for the AWSFargateProfile.
type AWSFargateProfileList ¶
type AWSFargateProfileList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AWSFargateProfile `json:"items"`
}
AWSFargateProfileList contains a list of FargateProfiles.
func (*AWSFargateProfileList) DeepCopy ¶
func (in *AWSFargateProfileList) DeepCopy() *AWSFargateProfileList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSFargateProfileList.
func (*AWSFargateProfileList) DeepCopyInto ¶
func (in *AWSFargateProfileList) DeepCopyInto(out *AWSFargateProfileList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AWSFargateProfileList) DeepCopyObject ¶
func (in *AWSFargateProfileList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AWSFargateProfileList) Hub ¶
func (*AWSFargateProfileList) Hub()
Hub marks AWSFargateProfileList as a conversion hub.
type AWSLaunchTemplate ¶
type AWSLaunchTemplate struct {
// The name of the launch template.
Name string `json:"name,omitempty"`
// The name or the Amazon Resource Name (ARN) of the instance profile associated
// with the IAM role for the instance. The instance profile contains the IAM
// role.
IamInstanceProfile string `json:"iamInstanceProfile,omitempty"`
// AMI is the reference to the AMI from which to create the machine instance.
// +optional
AMI infrav1.AMIReference `json:"ami,omitempty"`
// ImageLookupFormat is the AMI naming format to look up the image for this
// machine It will be ignored if an explicit AMI is set. Supports
// substitutions for {{.BaseOS}} and {{.K8sVersion}} with the base OS and
// kubernetes version, respectively. The BaseOS will be the value in
// ImageLookupBaseOS or ubuntu (the default), and the kubernetes version as
// defined by the packages produced by kubernetes/release without v as a
// prefix: 1.13.0, 1.12.5-mybuild.1, or 1.17.3. For example, the default
// image format of capa-ami-{{.BaseOS}}-?{{.K8sVersion}}-* will end up
// searching for AMIs that match the pattern capa-ami-ubuntu-?1.18.0-* for a
// Machine that is targeting kubernetes v1.18.0 and the ubuntu base OS. See
// also: https://golang.org/pkg/text/template/
// +optional
ImageLookupFormat string `json:"imageLookupFormat,omitempty"`
// ImageLookupOrg is the AWS Organization ID to use for image lookup if AMI is not set.
ImageLookupOrg string `json:"imageLookupOrg,omitempty"`
// ImageLookupBaseOS is the name of the base operating system to use for
// image lookup the AMI is not set.
ImageLookupBaseOS string `json:"imageLookupBaseOS,omitempty"`
// InstanceType is the type of instance to create. Example: m4.xlarge
InstanceType string `json:"instanceType,omitempty"`
// RootVolume encapsulates the configuration options for the root volume
// +optional
RootVolume *infrav1.Volume `json:"rootVolume,omitempty"`
// Configuration options for the non root storage volumes.
// +optional
NonRootVolumes []infrav1.Volume `json:"nonRootVolumes,omitempty"`
// SSHKeyName is the name of the ssh key to attach to the instance. Valid values are empty string
// (do not use SSH keys), a valid SSH key name, or omitted (use the default SSH key name)
// +optional
SSHKeyName *string `json:"sshKeyName,omitempty"`
// VersionNumber is the version of the launch template that is applied.
// Typically a new version is created when at least one of the following happens:
// 1) A new launch template spec is applied.
// 2) One or more parameters in an existing template is changed.
// 3) A new AMI is discovered.
VersionNumber *int64 `json:"versionNumber,omitempty"`
// AdditionalSecurityGroups is an array of references to security groups that should be applied to the
// instances. These security groups would be set in addition to any security groups defined
// at the cluster level or in the actuator.
// +optional
AdditionalSecurityGroups []infrav1.AWSResourceReference `json:"additionalSecurityGroups,omitempty"`
// SpotMarketOptions are options for configuring AWSMachinePool instances to be run using AWS Spot instances.
SpotMarketOptions *infrav1.SpotMarketOptions `json:"spotMarketOptions,omitempty"`
// InstanceMetadataOptions defines the behavior for applying metadata to instances.
// +optional
InstanceMetadataOptions *infrav1.InstanceMetadataOptions `json:"instanceMetadataOptions,omitempty"`
// PrivateDNSName is the options for the instance hostname.
// +optional
PrivateDNSName *infrav1.PrivateDNSName `json:"privateDnsName,omitempty"`
// CapacityReservationID specifies the target Capacity Reservation into which the instance should be launched.
// +optional
CapacityReservationID *string `json:"capacityReservationId,omitempty"`
// MarketType specifies the type of market for the EC2 instance. Valid values include:
// "OnDemand" (default): The instance runs as a standard OnDemand instance.
// "Spot": The instance runs as a Spot instance. When SpotMarketOptions is provided, the marketType defaults to "Spot".
// "CapacityBlock": The instance utilizes pre-purchased compute capacity (capacity blocks) with AWS Capacity Reservations.
// If this value is selected, CapacityReservationID must be specified to identify the target reservation.
// If marketType is not specified and spotMarketOptions is provided, the marketType defaults to "Spot".
// +optional
MarketType infrav1.MarketType `json:"marketType,omitempty"`
// CapacityReservationPreference specifies the preference for use of Capacity Reservations by the instance. Valid values include:
// "Open": The instance may make use of open Capacity Reservations that match its AZ and InstanceType
// "None": The instance may not make use of any Capacity Reservations. This is to conserve open reservations for desired workloads
// "CapacityReservationsOnly": The instance will only run if matched or targeted to a Capacity Reservation
// +kubebuilder:validation:Enum="";None;CapacityReservationsOnly;Open
// +optional
CapacityReservationPreference infrav1.CapacityReservationPreference `json:"capacityReservationPreference,omitempty"`
}
AWSLaunchTemplate defines the desired state of AWSLaunchTemplate.
func (*AWSLaunchTemplate) DeepCopy ¶
func (in *AWSLaunchTemplate) DeepCopy() *AWSLaunchTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSLaunchTemplate.
func (*AWSLaunchTemplate) DeepCopyInto ¶
func (in *AWSLaunchTemplate) DeepCopyInto(out *AWSLaunchTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AWSLifecycleHook ¶ added in v2.9.0
type AWSLifecycleHook struct {
// The name of the lifecycle hook.
Name string `json:"name"`
// The ARN of the notification target that Amazon EC2 Auto Scaling uses to
// notify you when an instance is in the transition state for the lifecycle hook.
// +optional
NotificationTargetARN *string `json:"notificationTargetARN,omitempty"`
// The ARN of the IAM role that allows the Auto Scaling group to publish to the
// specified notification target.
// +optional
RoleARN *string `json:"roleARN,omitempty"`
// The state of the EC2 instance to which to attach the lifecycle hook.
// +kubebuilder:validation:Enum="autoscaling:EC2_INSTANCE_LAUNCHING";"autoscaling:EC2_INSTANCE_TERMINATING"
LifecycleTransition LifecycleTransition `json:"lifecycleTransition"`
// The maximum time, in seconds, that an instance can remain in a Pending:Wait or
// Terminating:Wait state. The maximum is 172800 seconds (48 hours) or 100 times
// HeartbeatTimeout, whichever is smaller.
// +optional
// +kubebuilder:validation:Format=duration
HeartbeatTimeout *metav1.Duration `json:"heartbeatTimeout,omitempty"`
// The default result for the lifecycle hook. The possible values are CONTINUE and ABANDON.
// +optional
// +kubebuilder:validation:Enum=CONTINUE;ABANDON
// +kubebuilder:validation:default:=none
DefaultResult *LifecycleHookDefaultResult `json:"defaultResult,omitempty"`
// Contains additional metadata that will be passed to the notification target.
// +optional
NotificationMetadata *string `json:"notificationMetadata,omitempty"`
}
AWSLifecycleHook describes an AWS lifecycle hook
func (*AWSLifecycleHook) DeepCopy ¶ added in v2.9.0
func (in *AWSLifecycleHook) DeepCopy() *AWSLifecycleHook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSLifecycleHook.
func (*AWSLifecycleHook) DeepCopyInto ¶ added in v2.9.0
func (in *AWSLifecycleHook) DeepCopyInto(out *AWSLifecycleHook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AWSMachinePool ¶
type AWSMachinePool struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AWSMachinePoolSpec `json:"spec,omitempty"`
Status AWSMachinePoolStatus `json:"status,omitempty"`
}
AWSMachinePool is the Schema for the awsmachinepools API.
func (*AWSMachinePool) DeepCopy ¶
func (in *AWSMachinePool) DeepCopy() *AWSMachinePool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSMachinePool.
func (*AWSMachinePool) DeepCopyInto ¶
func (in *AWSMachinePool) DeepCopyInto(out *AWSMachinePool)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AWSMachinePool) DeepCopyObject ¶
func (in *AWSMachinePool) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AWSMachinePool) GetConditions ¶
func (r *AWSMachinePool) GetConditions() clusterv1.Conditions
GetConditions returns the observations of the operational state of the AWSMachinePool resource.
func (*AWSMachinePool) GetObjectKind ¶
func (r *AWSMachinePool) GetObjectKind() schema.ObjectKind
GetObjectKind will return the ObjectKind of an AWSMachinePool.
func (*AWSMachinePool) Hub ¶
func (*AWSMachinePool) Hub()
Hub marks AWSMachinePool as a conversion hub.
func (*AWSMachinePool) SetConditions ¶
func (r *AWSMachinePool) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the underlying service state of the AWSMachinePool to the predescribed clusterv1.Conditions.
func (*AWSMachinePool) SetupWebhookWithManager ¶
func (r *AWSMachinePool) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager will setup the webhooks for the AWSMachinePool.
type AWSMachinePoolInstanceStatus ¶
type AWSMachinePoolInstanceStatus struct {
// InstanceID is the identification of the Machine Instance within ASG
// +optional
InstanceID string `json:"instanceID,omitempty"`
// Version defines the Kubernetes version for the Machine Instance
// +optional
Version *string `json:"version,omitempty"`
}
AWSMachinePoolInstanceStatus defines the status of the AWSMachinePoolInstance.
func (*AWSMachinePoolInstanceStatus) DeepCopy ¶
func (in *AWSMachinePoolInstanceStatus) DeepCopy() *AWSMachinePoolInstanceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSMachinePoolInstanceStatus.
func (*AWSMachinePoolInstanceStatus) DeepCopyInto ¶
func (in *AWSMachinePoolInstanceStatus) DeepCopyInto(out *AWSMachinePoolInstanceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AWSMachinePoolList ¶
type AWSMachinePoolList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AWSMachinePool `json:"items"`
}
AWSMachinePoolList contains a list of AWSMachinePool.
func (*AWSMachinePoolList) DeepCopy ¶
func (in *AWSMachinePoolList) DeepCopy() *AWSMachinePoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSMachinePoolList.
func (*AWSMachinePoolList) DeepCopyInto ¶
func (in *AWSMachinePoolList) DeepCopyInto(out *AWSMachinePoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AWSMachinePoolList) DeepCopyObject ¶
func (in *AWSMachinePoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AWSMachinePoolList) GetObjectKind ¶
func (r *AWSMachinePoolList) GetObjectKind() schema.ObjectKind
GetObjectKind will return the ObjectKind of an AWSMachinePoolList.
func (*AWSMachinePoolList) Hub ¶
func (*AWSMachinePoolList) Hub()
Hub marks AWSMachinePoolList as a conversion hub.
type AWSMachinePoolSpec ¶
type AWSMachinePoolSpec struct {
// ProviderID is the ARN of the associated ASG
// +optional
ProviderID string `json:"providerID,omitempty"`
// MinSize defines the minimum size of the group.
// +kubebuilder:default=1
// +kubebuilder:validation:Minimum=0
MinSize int32 `json:"minSize"`
// MaxSize defines the maximum size of the group.
// +kubebuilder:default=1
// +kubebuilder:validation:Minimum=1
MaxSize int32 `json:"maxSize"`
// AvailabilityZones is an array of availability zones instances can run in
AvailabilityZones []string `json:"availabilityZones,omitempty"`
// AvailabilityZoneSubnetType specifies which type of subnets to use when an availability zone is specified.
// +kubebuilder:validation:Enum:=public;private;all
// +optional
AvailabilityZoneSubnetType *AZSubnetType `json:"availabilityZoneSubnetType,omitempty"`
// Subnets is an array of subnet configurations
// +optional
Subnets []infrav1.AWSResourceReference `json:"subnets,omitempty"`
// AdditionalTags is an optional set of tags to add to an instance, in addition to the ones added by default by the
// AWS provider.
// +optional
AdditionalTags infrav1.Tags `json:"additionalTags,omitempty"`
// AWSLaunchTemplate specifies the launch template and version to use when an instance is launched.
// +kubebuilder:validation:Required
AWSLaunchTemplate AWSLaunchTemplate `json:"awsLaunchTemplate"`
// MixedInstancesPolicy describes how multiple instance types will be used by the ASG.
MixedInstancesPolicy *MixedInstancesPolicy `json:"mixedInstancesPolicy,omitempty"`
// ProviderIDList are the identification IDs of machine instances provided by the provider.
// This field must match the provider IDs as seen on the node objects corresponding to a machine pool's machine instances.
// +optional
ProviderIDList []string `json:"providerIDList,omitempty"`
// The amount of time, in seconds, after a scaling activity completes before another scaling activity can start.
// If no value is supplied by user a default value of 300 seconds is set
// +optional
DefaultCoolDown metav1.Duration `json:"defaultCoolDown,omitempty"`
// The amount of time, in seconds, until a new instance is considered to
// have finished initializing and resource consumption to become stable
// after it enters the InService state.
// If no value is supplied by user a default value of 300 seconds is set
// +optional
DefaultInstanceWarmup metav1.Duration `json:"defaultInstanceWarmup,omitempty"`
// RefreshPreferences describes set of preferences associated with the instance refresh request.
// +optional
RefreshPreferences *RefreshPreferences `json:"refreshPreferences,omitempty"`
// Enable or disable the capacity rebalance autoscaling group feature
// +optional
CapacityRebalance bool `json:"capacityRebalance,omitempty"`
// SuspendProcesses defines a list of processes to suspend for the given ASG. This is constantly reconciled.
// If a process is removed from this list it will automatically be resumed.
SuspendProcesses *SuspendProcessesTypes `json:"suspendProcesses,omitempty"`
// Ignition defined options related to the bootstrapping systems where Ignition is used.
// +optional
Ignition *infrav1.Ignition `json:"ignition,omitempty"`
// AWSLifecycleHooks specifies lifecycle hooks for the autoscaling group.
// +optional
AWSLifecycleHooks []AWSLifecycleHook `json:"lifecycleHooks,omitempty"`
}
AWSMachinePoolSpec defines the desired state of AWSMachinePool.
func (*AWSMachinePoolSpec) DeepCopy ¶
func (in *AWSMachinePoolSpec) DeepCopy() *AWSMachinePoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSMachinePoolSpec.
func (*AWSMachinePoolSpec) DeepCopyInto ¶
func (in *AWSMachinePoolSpec) DeepCopyInto(out *AWSMachinePoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AWSMachinePoolStatus ¶
type AWSMachinePoolStatus struct {
// Ready is true when the provider resource is ready.
// +optional
Ready bool `json:"ready"`
// Replicas is the most recently observed number of replicas
// +optional
Replicas int32 `json:"replicas"`
// Conditions defines current service state of the AWSMachinePool.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
// Instances contains the status for each instance in the pool
// +optional
Instances []AWSMachinePoolInstanceStatus `json:"instances,omitempty"`
// The ID of the launch template
LaunchTemplateID string `json:"launchTemplateID,omitempty"`
// The version of the launch template
// +optional
LaunchTemplateVersion *string `json:"launchTemplateVersion,omitempty"`
// InfrastructureMachineKind is the kind of the infrastructure resources behind MachinePool Machines.
// +optional
InfrastructureMachineKind string `json:"infrastructureMachineKind,omitempty"`
// FailureReason will be set in the event that there is a terminal problem
// reconciling the Machine and will contain a succinct value suitable
// for machine interpretation.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the Machine's spec or the configuration of
// the controller, and that manual intervention is required. Examples
// of terminal errors would be invalid combinations of settings in the
// spec, values that are unsupported by the controller, or the
// responsible controller itself being critically misconfigured.
//
// Any transient errors that occur during the reconciliation of Machines
// can be added as events to the Machine object and/or logged in the
// controller's output.
// +optional
FailureReason *string `json:"failureReason,omitempty"`
// FailureMessage will be set in the event that there is a terminal problem
// reconciling the Machine and will contain a more verbose string suitable
// for logging and human consumption.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the Machine's spec or the configuration of
// the controller, and that manual intervention is required. Examples
// of terminal errors would be invalid combinations of settings in the
// spec, values that are unsupported by the controller, or the
// responsible controller itself being critically misconfigured.
//
// Any transient errors that occur during the reconciliation of Machines
// can be added as events to the Machine object and/or logged in the
// controller's output.
// +optional
FailureMessage *string `json:"failureMessage,omitempty"`
ASGStatus *ASGStatus `json:"asgStatus,omitempty"`
}
AWSMachinePoolStatus defines the observed state of AWSMachinePool.
func (*AWSMachinePoolStatus) DeepCopy ¶
func (in *AWSMachinePoolStatus) DeepCopy() *AWSMachinePoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSMachinePoolStatus.
func (*AWSMachinePoolStatus) DeepCopyInto ¶
func (in *AWSMachinePoolStatus) DeepCopyInto(out *AWSMachinePoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AWSMachinePoolWebhook ¶ added in v2.9.0
type AWSMachinePoolWebhook struct{}
AWSMachinePoolWebhook implements a custom validation webhook for AWSMachinePool.
func (*AWSMachinePoolWebhook) DeepCopy ¶ added in v2.9.0
func (in *AWSMachinePoolWebhook) DeepCopy() *AWSMachinePoolWebhook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSMachinePoolWebhook.
func (*AWSMachinePoolWebhook) DeepCopyInto ¶ added in v2.9.0
func (in *AWSMachinePoolWebhook) DeepCopyInto(out *AWSMachinePoolWebhook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AWSMachinePoolWebhook) Default ¶ added in v2.9.0
Default will set default values for the AWSMachinePool.
func (*AWSMachinePoolWebhook) ValidateCreate ¶ added in v2.9.0
func (*AWSMachinePoolWebhook) ValidateCreate(_ context.Context, obj runtime.Object) (admission.Warnings, error)
ValidateCreate will do any extra validation when creating a AWSMachinePool.
func (*AWSMachinePoolWebhook) ValidateDelete ¶ added in v2.9.0
func (*AWSMachinePoolWebhook) ValidateDelete(_ context.Context, _ runtime.Object) (admission.Warnings, error)
ValidateDelete allows you to add any extra validation when deleting.
func (*AWSMachinePoolWebhook) ValidateUpdate ¶ added in v2.9.0
func (*AWSMachinePoolWebhook) ValidateUpdate(_ context.Context, oldObj, newObj runtime.Object) (admission.Warnings, error)
ValidateUpdate will do any extra validation when updating a AWSMachinePool.
type AWSManagedMachinePool ¶
type AWSManagedMachinePool struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AWSManagedMachinePoolSpec `json:"spec,omitempty"`
Status AWSManagedMachinePoolStatus `json:"status,omitempty"`
}
AWSManagedMachinePool is the Schema for the awsmanagedmachinepools API.
func (*AWSManagedMachinePool) DeepCopy ¶
func (in *AWSManagedMachinePool) DeepCopy() *AWSManagedMachinePool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSManagedMachinePool.
func (*AWSManagedMachinePool) DeepCopyInto ¶
func (in *AWSManagedMachinePool) DeepCopyInto(out *AWSManagedMachinePool)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AWSManagedMachinePool) DeepCopyObject ¶
func (in *AWSManagedMachinePool) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AWSManagedMachinePool) GetConditions ¶
func (r *AWSManagedMachinePool) GetConditions() clusterv1.Conditions
GetConditions returns the observations of the operational state of the AWSManagedMachinePool resource.
func (*AWSManagedMachinePool) Hub ¶
func (*AWSManagedMachinePool) Hub()
Hub marks AWSManagedMachinePool as a conversion hub.
func (*AWSManagedMachinePool) SetConditions ¶
func (r *AWSManagedMachinePool) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the underlying service state of the AWSManagedMachinePool to the predescribed clusterv1.Conditions.
func (*AWSManagedMachinePool) SetupWebhookWithManager ¶
func (r *AWSManagedMachinePool) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager will setup the webhooks for the AWSManagedMachinePool.
type AWSManagedMachinePoolList ¶
type AWSManagedMachinePoolList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AWSManagedMachinePool `json:"items"`
}
AWSManagedMachinePoolList contains a list of AWSManagedMachinePools.
func (*AWSManagedMachinePoolList) DeepCopy ¶
func (in *AWSManagedMachinePoolList) DeepCopy() *AWSManagedMachinePoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSManagedMachinePoolList.
func (*AWSManagedMachinePoolList) DeepCopyInto ¶
func (in *AWSManagedMachinePoolList) DeepCopyInto(out *AWSManagedMachinePoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AWSManagedMachinePoolList) DeepCopyObject ¶
func (in *AWSManagedMachinePoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AWSManagedMachinePoolList) Hub ¶
func (*AWSManagedMachinePoolList) Hub()
Hub marks AWSManagedMachinePoolList as a conversion hub.
type AWSManagedMachinePoolSpec ¶
type AWSManagedMachinePoolSpec struct {
// EKSNodegroupName specifies the name of the nodegroup in AWS
// corresponding to this MachinePool. If you don't specify a name
// then a default name will be created based on the namespace and
// name of the managed machine pool.
// +optional
EKSNodegroupName string `json:"eksNodegroupName,omitempty"`
// AvailabilityZones is an array of availability zones instances can run in
AvailabilityZones []string `json:"availabilityZones,omitempty"`
// AvailabilityZoneSubnetType specifies which type of subnets to use when an availability zone is specified.
// +kubebuilder:validation:Enum:=public;private;all
// +optional
AvailabilityZoneSubnetType *AZSubnetType `json:"availabilityZoneSubnetType,omitempty"`
// SubnetIDs specifies which subnets are used for the
// auto scaling group of this nodegroup
// +optional
SubnetIDs []string `json:"subnetIDs,omitempty"`
// AdditionalTags is an optional set of tags to add to AWS resources managed by the AWS provider, in addition to the
// ones added by default.
// +optional
AdditionalTags infrav1.Tags `json:"additionalTags,omitempty"`
// RoleAdditionalPolicies allows you to attach additional polices to
// the node group role. You must enable the EKSAllowAddRoles
// feature flag to incorporate these into the created role.
// +optional
RoleAdditionalPolicies []string `json:"roleAdditionalPolicies,omitempty"`
// RoleName specifies the name of IAM role for the node group.
// If the role is pre-existing we will treat it as unmanaged
// and not delete it on deletion. If the EKSEnableIAM feature
// flag is true and no name is supplied then a role is created.
// +optional
RoleName string `json:"roleName,omitempty"`
// RolePath sets the path to the role. For more information about paths, see IAM Identifiers
// (https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
// in the IAM User Guide.
//
// This parameter is optional. If it is not included, it defaults to a slash
// (/).
RolePath string `json:"rolePath,omitempty"`
// RolePermissionsBoundary sets the ARN of the managed policy that is used
// to set the permissions boundary for the role.
//
// A permissions boundary policy defines the maximum permissions that identity-based
// policies can grant to an entity, but does not grant permissions. Permissions
// boundaries do not define the maximum permissions that a resource-based policy
// can grant to an entity. To learn more, see Permissions boundaries for IAM
// entities (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)
// in the IAM User Guide.
//
// For more information about policy types, see Policy types (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policy-types)
// in the IAM User Guide.
RolePermissionsBoundary string `json:"rolePermissionsBoundary,omitempty"`
// AMIVersion defines the desired AMI release version. If no version number
// is supplied then the latest version for the Kubernetes version
// will be used
// +kubebuilder:validation:MinLength:=2
// +optional
AMIVersion *string `json:"amiVersion,omitempty"`
// AMIType defines the AMI type
// +kubebuilder:validation:Enum:=AL2_x86_64;AL2_x86_64_GPU;AL2_ARM_64;CUSTOM;BOTTLEROCKET_ARM_64;BOTTLEROCKET_x86_64;BOTTLEROCKET_ARM_64_FIPS;BOTTLEROCKET_x86_64_FIPS;BOTTLEROCKET_ARM_64_NVIDIA;BOTTLEROCKET_x86_64_NVIDIA;WINDOWS_CORE_2019_x86_64;WINDOWS_FULL_2019_x86_64;WINDOWS_CORE_2022_x86_64;WINDOWS_FULL_2022_x86_64;AL2023_x86_64_STANDARD;AL2023_ARM_64_STANDARD;AL2023_x86_64_NEURON;AL2023_x86_64_NVIDIA;AL2023_ARM_64_NVIDIA
// +kubebuilder:default:=AL2_x86_64
// +optional
AMIType *ManagedMachineAMIType `json:"amiType,omitempty"`
// Labels specifies labels for the Kubernetes node objects
// +optional
Labels map[string]string `json:"labels,omitempty"`
// Taints specifies the taints to apply to the nodes of the machine pool
// +optional
Taints Taints `json:"taints,omitempty"`
// DiskSize specifies the root disk size
// +optional
DiskSize *int32 `json:"diskSize,omitempty"`
// InstanceType specifies the AWS instance type
// +optional
InstanceType *string `json:"instanceType,omitempty"`
// Scaling specifies scaling for the ASG behind this pool
// +optional
Scaling *ManagedMachinePoolScaling `json:"scaling,omitempty"`
// RemoteAccess specifies how machines can be accessed remotely
// +optional
RemoteAccess *ManagedRemoteAccess `json:"remoteAccess,omitempty"`
// ProviderIDList are the provider IDs of instances in the
// autoscaling group corresponding to the nodegroup represented by this
// machine pool
// +optional
ProviderIDList []string `json:"providerIDList,omitempty"`
// CapacityType specifies the capacity type for the ASG behind this pool
// +kubebuilder:validation:Enum:=onDemand;spot
// +kubebuilder:default:=onDemand
// +optional
CapacityType *ManagedMachinePoolCapacityType `json:"capacityType,omitempty"`
// UpdateConfig holds the optional config to control the behaviour of the update
// to the nodegroup.
// +optional
UpdateConfig *UpdateConfig `json:"updateConfig,omitempty"`
// AWSLaunchTemplate specifies the launch template to use to create the managed node group.
// If AWSLaunchTemplate is specified, certain node group configuraions outside of launch template
// are prohibited (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html).
// +optional
AWSLaunchTemplate *AWSLaunchTemplate `json:"awsLaunchTemplate,omitempty"`
// AWSLifecycleHooks specifies lifecycle hooks for the managed node group.
// +optional
AWSLifecycleHooks []AWSLifecycleHook `json:"lifecycleHooks,omitempty"`
}
AWSManagedMachinePoolSpec defines the desired state of AWSManagedMachinePool.
func (*AWSManagedMachinePoolSpec) DeepCopy ¶
func (in *AWSManagedMachinePoolSpec) DeepCopy() *AWSManagedMachinePoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSManagedMachinePoolSpec.
func (*AWSManagedMachinePoolSpec) DeepCopyInto ¶
func (in *AWSManagedMachinePoolSpec) DeepCopyInto(out *AWSManagedMachinePoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AWSManagedMachinePoolStatus ¶
type AWSManagedMachinePoolStatus struct {
// Ready denotes that the AWSManagedMachinePool nodegroup has joined
// the cluster
// +kubebuilder:default=false
Ready bool `json:"ready"`
// Replicas is the most recently observed number of replicas.
// +optional
Replicas int32 `json:"replicas"`
// The ID of the launch template
// +optional
LaunchTemplateID *string `json:"launchTemplateID,omitempty"`
// The version of the launch template
// +optional
LaunchTemplateVersion *string `json:"launchTemplateVersion,omitempty"`
// FailureReason will be set in the event that there is a terminal problem
// reconciling the MachinePool and will contain a succinct value suitable
// for machine interpretation.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the Machine's spec or the configuration of
// the controller, and that manual intervention is required. Examples
// of terminal errors would be invalid combinations of settings in the
// spec, values that are unsupported by the controller, or the
// responsible controller itself being critically misconfigured.
//
// Any transient errors that occur during the reconciliation of MachinePools
// can be added as events to the MachinePool object and/or logged in the
// controller's output.
// +optional
FailureReason *string `json:"failureReason,omitempty"`
// FailureMessage will be set in the event that there is a terminal problem
// reconciling the MachinePool and will contain a more verbose string suitable
// for logging and human consumption.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the MachinePool's spec or the configuration of
// the controller, and that manual intervention is required. Examples
// of terminal errors would be invalid combinations of settings in the
// spec, values that are unsupported by the controller, or the
// responsible controller itself being critically misconfigured.
//
// Any transient errors that occur during the reconciliation of MachinePools
// can be added as events to the MachinePool object and/or logged in the
// controller's output.
// +optional
FailureMessage *string `json:"failureMessage,omitempty"`
// Conditions defines current service state of the managed machine pool
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}
AWSManagedMachinePoolStatus defines the observed state of AWSManagedMachinePool.
func (*AWSManagedMachinePoolStatus) DeepCopy ¶
func (in *AWSManagedMachinePoolStatus) DeepCopy() *AWSManagedMachinePoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSManagedMachinePoolStatus.
func (*AWSManagedMachinePoolStatus) DeepCopyInto ¶
func (in *AWSManagedMachinePoolStatus) DeepCopyInto(out *AWSManagedMachinePoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AZSubnetType ¶ added in v2.3.0
type AZSubnetType string
AZSubnetType is the type of subnet to use when an availability zone is specified.
const ( // AZSubnetTypePublic is a public subnet. AZSubnetTypePublic AZSubnetType = "public" // AZSubnetTypePrivate is a private subnet. AZSubnetTypePrivate AZSubnetType = "private" // AZSubnetTypeAll is all subnets in an availability zone. AZSubnetTypeAll AZSubnetType = "all" )
func NewAZSubnetType ¶ added in v2.3.0
func NewAZSubnetType(t AZSubnetType) *AZSubnetType
NewAZSubnetType returns a pointer to an AZSubnetType.
type AccountRoleConfig ¶ added in v2.9.2
type AccountRoleConfig struct {
// User-defined prefix for all generated AWS account role
// +kubebuilder:validation:Required
// +kubebuilder:validation:MaxLength:=4
// +kubebuilder:validation:Pattern:=`^[a-z]([-a-z0-9]*[a-z0-9])?$`
// +kubebuilder:validation:XValidation:rule="self == oldSelf", message="prefix is immutable"
Prefix string `json:"prefix"`
// The ARN of the policy that is used to set the permissions boundary for the account roles.
// +optional
PermissionsBoundaryARN string `json:"permissionsBoundaryARN,omitempty"`
// The arn path for the account/operator roles as well as their policies.
// +optional
Path string `json:"path,omitempty"`
// Version of OpenShift that will be used to the roles tag in formate of x.y.z example; "4.19.0"
// Setting the role OpenShift version tag does not affect the associated ROSAControlplane version.
// +kubebuilder:validation:Required
// +kubebuilder:validation:XValidation:rule="self == oldSelf", message="version is immutable"
Version string `json:"version"`
// +optional
SharedVPCConfig SharedVPCConfig `json:"sharedVPCConfig,omitempty"`
}
AccountRoleConfig defines account IAM roles before creating your ROSA cluster.
func (*AccountRoleConfig) DeepCopy ¶ added in v2.9.2
func (in *AccountRoleConfig) DeepCopy() *AccountRoleConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountRoleConfig.
func (*AccountRoleConfig) DeepCopyInto ¶ added in v2.9.2
func (in *AccountRoleConfig) DeepCopyInto(out *AccountRoleConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AccountRolesRef ¶ added in v2.9.2
type AccountRolesRef struct {
// InstallerRoleARN is an AWS IAM role that OpenShift Cluster Manager will assume to create the cluster..
InstallerRoleARN string `json:"installerRoleARN,omitempty"`
// SupportRoleARN is an AWS IAM role used by Red Hat SREs to enable
// access to the cluster account in order to provide support.
SupportRoleARN string `json:"supportRoleARN,omitempty"`
// WorkerRoleARN is an AWS IAM role that will be attached to worker instances.
WorkerRoleARN string `json:"workerRoleARN,omitempty"`
}
AccountRolesRef defscribes ARNs used as Account roles.
func (*AccountRolesRef) DeepCopy ¶ added in v2.9.2
func (in *AccountRolesRef) DeepCopy() *AccountRolesRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountRolesRef.
func (*AccountRolesRef) DeepCopyInto ¶ added in v2.9.2
func (in *AccountRolesRef) DeepCopyInto(out *AccountRolesRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoScalingGroup ¶
type AutoScalingGroup struct {
// The tags associated with the instance.
ID string `json:"id,omitempty"`
Tags infrav1.Tags `json:"tags,omitempty"`
Name string `json:"name,omitempty"`
DesiredCapacity *int32 `json:"desiredCapacity,omitempty"`
MaxSize int32 `json:"maxSize,omitempty"`
MinSize int32 `json:"minSize,omitempty"`
PlacementGroup string `json:"placementGroup,omitempty"`
Subnets []string `json:"subnets,omitempty"`
DefaultCoolDown metav1.Duration `json:"defaultCoolDown,omitempty"`
DefaultInstanceWarmup metav1.Duration `json:"defaultInstanceWarmup,omitempty"`
CapacityRebalance bool `json:"capacityRebalance,omitempty"`
MixedInstancesPolicy *MixedInstancesPolicy `json:"mixedInstancesPolicy,omitempty"`
Status ASGStatus
Instances []infrav1.Instance `json:"instances,omitempty"`
CurrentlySuspendProcesses []string `json:"currentlySuspendProcesses,omitempty"`
}
AutoScalingGroup describes an AWS autoscaling group.
func (*AutoScalingGroup) DeepCopy ¶
func (in *AutoScalingGroup) DeepCopy() *AutoScalingGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScalingGroup.
func (*AutoScalingGroup) DeepCopyInto ¶
func (in *AutoScalingGroup) DeepCopyInto(out *AutoScalingGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BlockDeviceMapping ¶
type BlockDeviceMapping struct {
// The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).
// +kubebuilder:validation:Required
DeviceName string `json:"deviceName,omitempty"`
// You can specify either VirtualName or Ebs, but not both.
// +optional
Ebs EBS `json:"ebs,omitempty"`
}
BlockDeviceMapping specifies the block devices for the instance. You can specify virtual devices and EBS volumes.
func (*BlockDeviceMapping) DeepCopy ¶
func (in *BlockDeviceMapping) DeepCopy() *BlockDeviceMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlockDeviceMapping.
func (*BlockDeviceMapping) DeepCopyInto ¶
func (in *BlockDeviceMapping) DeepCopyInto(out *BlockDeviceMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CFResource ¶ added in v2.9.2
type CFResource struct {
// Type of the created resource: AWS::EC2::VPC, AWS::EC2::Subnet, ...
ResourceType string `json:"resource"`
// LogicalResourceID of the created resource.
LogicalID string `json:"logicalId"`
// PhysicalResourceID of the created resource.
PhysicalID string `json:"physicalId"`
// Status of the resource: CREATE_IN_PROGRESS, CREATE_COMPLETE, ...
Status string `json:"status"`
// Message pertaining to the status of the resource
Reason string `json:"reason"`
}
CFResource groups information pertaining to a resource created as a part of a cloudformation stack
func (*CFResource) DeepCopy ¶ added in v2.9.2
func (in *CFResource) DeepCopy() *CFResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CFResource.
func (*CFResource) DeepCopyInto ¶ added in v2.9.2
func (in *CFResource) DeepCopyInto(out *CFResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EBS ¶
type EBS struct {
// Encrypted is whether the volume should be encrypted or not.
// +optional
Encrypted bool `json:"encrypted,omitempty"`
// The size of the volume, in GiB.
// This can be a number from 1-1,024 for standard, 4-16,384 for io1, 1-16,384
// for gp2, and 500-16,384 for st1 and sc1. If you specify a snapshot, the volume
// size must be equal to or larger than the snapshot size.
// +optional
VolumeSize int64 `json:"volumeSize,omitempty"`
// The volume type
// For more information, see Amazon EBS Volume Types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html)
// +kubebuilder:validation:Enum=standard;io1;gp2;st1;sc1;io2
// +optional
VolumeType string `json:"volumeType,omitempty"`
}
EBS can be used to automatically set up EBS volumes when an instance is launched.
func (*EBS) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EBS.
func (*EBS) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FargateProfileSpec ¶
type FargateProfileSpec struct {
// ClusterName is the name of the Cluster this object belongs to.
// +kubebuilder:validation:MinLength=1
ClusterName string `json:"clusterName"`
// ProfileName specifies the profile name.
ProfileName string `json:"profileName,omitempty"`
// SubnetIDs specifies which subnets are used for the
// auto scaling group of this nodegroup.
// +optional
SubnetIDs []string `json:"subnetIDs,omitempty"`
// AdditionalTags is an optional set of tags to add to AWS resources managed by the AWS provider, in addition to the
// ones added by default.
// +optional
AdditionalTags infrav1.Tags `json:"additionalTags,omitempty"`
// RoleName specifies the name of IAM role for this fargate pool
// If the role is pre-existing we will treat it as unmanaged
// and not delete it on deletion. If the EKSEnableIAM feature
// flag is true and no name is supplied then a role is created.
// +optional
RoleName string `json:"roleName,omitempty"`
// RolePath sets the path to the role. For more information about paths, see IAM Identifiers
// (https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
// in the IAM User Guide.
//
// This parameter is optional. If it is not included, it defaults to a slash
// (/).
// +optional
RolePath string `json:"rolePath,omitempty"`
// RolePermissionsBoundary sets the ARN of the managed policy that is used
// to set the permissions boundary for the role.
//
// A permissions boundary policy defines the maximum permissions that identity-based
// policies can grant to an entity, but does not grant permissions. Permissions
// boundaries do not define the maximum permissions that a resource-based policy
// can grant to an entity. To learn more, see Permissions boundaries for IAM
// entities (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)
// in the IAM User Guide.
//
// For more information about policy types, see Policy types (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policy-types)
// in the IAM User Guide.
// +optional
RolePermissionsBoundary string `json:"rolePermissionsBoundary,omitempty"`
// Selectors specify fargate pod selectors.
Selectors []FargateSelector `json:"selectors,omitempty"`
}
FargateProfileSpec defines the desired state of FargateProfile.
func (*FargateProfileSpec) DeepCopy ¶
func (in *FargateProfileSpec) DeepCopy() *FargateProfileSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FargateProfileSpec.
func (*FargateProfileSpec) DeepCopyInto ¶
func (in *FargateProfileSpec) DeepCopyInto(out *FargateProfileSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FargateProfileStatus ¶
type FargateProfileStatus struct {
// Ready denotes that the FargateProfile is available.
// +kubebuilder:default=false
Ready bool `json:"ready"`
// FailureReason will be set in the event that there is a terminal problem
// reconciling the FargateProfile and will contain a succinct value suitable
// for machine interpretation.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the FargateProfile's spec or the configuration of
// the controller, and that manual intervention is required. Examples
// of terminal errors would be invalid combinations of settings in the
// spec, values that are unsupported by the controller, or the
// responsible controller itself being critically misconfigured.
//
// Any transient errors that occur during the reconciliation of
// FargateProfiles can be added as events to the FargateProfile object
// and/or logged in the controller's output.
// +optional
FailureReason *string `json:"failureReason,omitempty"`
// FailureMessage will be set in the event that there is a terminal problem
// reconciling the FargateProfile and will contain a more verbose string suitable
// for logging and human consumption.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the FargateProfile's spec or the configuration of
// the controller, and that manual intervention is required. Examples
// of terminal errors would be invalid combinations of settings in the
// spec, values that are unsupported by the controller, or the
// responsible controller itself being critically misconfigured.
//
// Any transient errors that occur during the reconciliation of
// FargateProfiles can be added as events to the FargateProfile
// object and/or logged in the controller's output.
// +optional
FailureMessage *string `json:"failureMessage,omitempty"`
// Conditions defines current state of the Fargate profile.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}
FargateProfileStatus defines the observed state of FargateProfile.
func (*FargateProfileStatus) DeepCopy ¶
func (in *FargateProfileStatus) DeepCopy() *FargateProfileStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FargateProfileStatus.
func (*FargateProfileStatus) DeepCopyInto ¶
func (in *FargateProfileStatus) DeepCopyInto(out *FargateProfileStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FargateSelector ¶
type FargateSelector struct {
// Labels specifies which pod labels this selector should match.
Labels map[string]string `json:"labels,omitempty"`
// Namespace specifies which namespace this selector should match.
Namespace string `json:"namespace,omitempty"`
}
FargateSelector specifies a selector for pods that should run on this fargate pool.
func (*FargateSelector) DeepCopy ¶
func (in *FargateSelector) DeepCopy() *FargateSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FargateSelector.
func (*FargateSelector) DeepCopyInto ¶
func (in *FargateSelector) DeepCopyInto(out *FargateSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InstancesDistribution ¶
type InstancesDistribution struct {
// +kubebuilder:validation:Enum=prioritized;lowest-price
// +kubebuilder:default=prioritized
OnDemandAllocationStrategy OnDemandAllocationStrategy `json:"onDemandAllocationStrategy,omitempty"`
// +kubebuilder:validation:Enum=lowest-price;capacity-optimized;capacity-optimized-prioritized;price-capacity-optimized
// +kubebuilder:default=lowest-price
SpotAllocationStrategy SpotAllocationStrategy `json:"spotAllocationStrategy,omitempty"`
// +kubebuilder:default=0
OnDemandBaseCapacity *int64 `json:"onDemandBaseCapacity,omitempty"`
// +kubebuilder:default=100
OnDemandPercentageAboveBaseCapacity *int64 `json:"onDemandPercentageAboveBaseCapacity,omitempty"`
}
InstancesDistribution to configure distribution of On-Demand Instances and Spot Instances.
func (*InstancesDistribution) DeepCopy ¶
func (in *InstancesDistribution) DeepCopy() *InstancesDistribution
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstancesDistribution.
func (*InstancesDistribution) DeepCopyInto ¶
func (in *InstancesDistribution) DeepCopyInto(out *InstancesDistribution)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LifecycleHookDefaultResult ¶ added in v2.9.0
type LifecycleHookDefaultResult string
LifecycleHookDefaultResult is the default result for the lifecycle hook.
const ( // LifecycleHookDefaultResultContinue is the default result for the lifecycle hook to continue. LifecycleHookDefaultResultContinue LifecycleHookDefaultResult = "CONTINUE" // LifecycleHookDefaultResultAbandon is the default result for the lifecycle hook to abandon. LifecycleHookDefaultResultAbandon LifecycleHookDefaultResult = "ABANDON" )
func (LifecycleHookDefaultResult) String ¶ added in v2.9.0
func (d LifecycleHookDefaultResult) String() string
type LifecycleTransition ¶ added in v2.9.0
type LifecycleTransition string
LifecycleTransition is the state of the EC2 instance to which to attach the lifecycle hook.
const ( // LifecycleHookTransitionInstanceLaunching is the launching state of the EC2 instance. LifecycleHookTransitionInstanceLaunching LifecycleTransition = "autoscaling:EC2_INSTANCE_LAUNCHING" // LifecycleHookTransitionInstanceTerminating is the terminating state of the EC2 instance. LifecycleHookTransitionInstanceTerminating LifecycleTransition = "autoscaling:EC2_INSTANCE_TERMINATING" )
func (LifecycleTransition) String ¶ added in v2.9.0
func (l LifecycleTransition) String() string
type ManagedMachineAMIType ¶
type ManagedMachineAMIType string
ManagedMachineAMIType specifies which AWS AMI to use for a managed MachinePool. Source of truth can be found using the link below: https://docs.aws.amazon.com/eks/latest/APIReference/API_CreateNodegroup.html#AmazonEKS-CreateNodegroup-request-amiType
const ( // Al2x86_64 is the default AMI type. Al2x86_64 ManagedMachineAMIType = "AL2_x86_64" // Al2x86_64GPU is the x86-64 GPU AMI type. Al2x86_64GPU ManagedMachineAMIType = "AL2_x86_64_GPU" // Al2Arm64 is the Arm AMI type. Al2Arm64 ManagedMachineAMIType = "AL2_ARM_64" // Custom is the custom AMI type. Custom ManagedMachineAMIType = "CUSTOM" // BottleRocketArm64 is the Arm AMI type. BottleRocketArm64 ManagedMachineAMIType = "BOTTLEROCKET_ARM_64" // BottleRocketx86_64 is the BottleRocket x86-64 AMI type. BottleRocketx86_64 ManagedMachineAMIType = "BOTTLEROCKET_x86_64" // BottleRocketArm64Fips is the BottleRocket Arm Fips AMI type. BottleRocketArm64Fips ManagedMachineAMIType = "BOTTLEROCKET_ARM_64_FIPS" // BottleRocketx86_64Fips is the BottleRocket x86-64 Fips AMI type. BottleRocketx86_64Fips ManagedMachineAMIType = "BOTTLEROCKET_x86_64_FIPS" // BottleRocketArm64Nvidia is the BottleRocket Arm Nvidia AMI type. BottleRocketArm64Nvidia ManagedMachineAMIType = "BOTTLEROCKET_ARM_64_NVIDIA" // BottleRocketx86_64Nvidia is the BottleRocket x86-64 Nvidia AMI type. BottleRocketx86_64Nvidia ManagedMachineAMIType = "BOTTLEROCKET_x86_64_NVIDIA" // WindowsCore2019x86_64 is the Windows Core 2019 x86-64 AMI type. WindowsCore2019x86_64 ManagedMachineAMIType = "WINDOWS_CORE_2019_x86_64" // WindowsFull2019x86_64 is the Windows Full 2019 x86-64 AMI type. WindowsFull2019x86_64 ManagedMachineAMIType = "WINDOWS_FULL_2019_x86_64" // WindowsCore2022x86_64 is the Windows Core 2022 x86-64 AMI type. WindowsCore2022x86_64 ManagedMachineAMIType = "WINDOWS_CORE_2022_x86_64" // WindowsFull2022x86_64 is the Windows Full 2022 x86-64 AMI type. WindowsFull2022x86_64 ManagedMachineAMIType = "WINDOWS_FULL_2022_x86_64" // Al2023x86_64 is the AL2023 x86-64 AMI type. Al2023x86_64 ManagedMachineAMIType = "AL2023_x86_64_STANDARD" // Al2023Arm64 is the AL2023 Arm AMI type. Al2023Arm64 ManagedMachineAMIType = "AL2023_ARM_64_STANDARD" // Al2023x86_64Neuron is the AL2023 x86-64 Neuron AMI type. Al2023x86_64Neuron ManagedMachineAMIType = "AL2023_x86_64_NEURON" // Al2023x86_64Nvidia is the AL2023 x86-64 Nvidia AMI type. Al2023x86_64Nvidia ManagedMachineAMIType = "AL2023_x86_64_NVIDIA" // Al2023Arm64Nvidia is the AL2023 Arm Nvidia AMI type. Al2023Arm64Nvidia ManagedMachineAMIType = "AL2023_ARM_64_NVIDIA" )
type ManagedMachinePoolCapacityType ¶
type ManagedMachinePoolCapacityType string
ManagedMachinePoolCapacityType specifies the capacity type to be used for the managed MachinePool.
const ( // ManagedMachinePoolCapacityTypeOnDemand is the default capacity type, to launch on-demand instances. ManagedMachinePoolCapacityTypeOnDemand ManagedMachinePoolCapacityType = "onDemand" // ManagedMachinePoolCapacityTypeSpot is the spot instance capacity type to launch spot instances. ManagedMachinePoolCapacityTypeSpot ManagedMachinePoolCapacityType = "spot" )
type ManagedMachinePoolScaling ¶
type ManagedMachinePoolScaling struct {
MinSize *int32 `json:"minSize,omitempty"`
MaxSize *int32 `json:"maxSize,omitempty"`
}
ManagedMachinePoolScaling specifies scaling options.
func (*ManagedMachinePoolScaling) DeepCopy ¶
func (in *ManagedMachinePoolScaling) DeepCopy() *ManagedMachinePoolScaling
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedMachinePoolScaling.
func (*ManagedMachinePoolScaling) DeepCopyInto ¶
func (in *ManagedMachinePoolScaling) DeepCopyInto(out *ManagedMachinePoolScaling)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedRemoteAccess ¶
type ManagedRemoteAccess struct {
// SSHKeyName specifies which EC2 SSH key can be used to access machines.
// If left empty, the key from the control plane is used.
SSHKeyName *string `json:"sshKeyName,omitempty"`
// SourceSecurityGroups specifies which security groups are allowed access
SourceSecurityGroups []string `json:"sourceSecurityGroups,omitempty"`
// Public specifies whether to open port 22 to the public internet
Public bool `json:"public,omitempty"`
}
ManagedRemoteAccess specifies remote access settings for EC2 instances.
func (*ManagedRemoteAccess) DeepCopy ¶
func (in *ManagedRemoteAccess) DeepCopy() *ManagedRemoteAccess
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedRemoteAccess.
func (*ManagedRemoteAccess) DeepCopyInto ¶
func (in *ManagedRemoteAccess) DeepCopyInto(out *ManagedRemoteAccess)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MixedInstancesPolicy ¶
type MixedInstancesPolicy struct {
InstancesDistribution *InstancesDistribution `json:"instancesDistribution,omitempty"`
Overrides []Overrides `json:"overrides,omitempty"`
}
MixedInstancesPolicy for an Auto Scaling group.
func (*MixedInstancesPolicy) DeepCopy ¶
func (in *MixedInstancesPolicy) DeepCopy() *MixedInstancesPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MixedInstancesPolicy.
func (*MixedInstancesPolicy) DeepCopyInto ¶
func (in *MixedInstancesPolicy) DeepCopyInto(out *MixedInstancesPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OidcProviderType ¶ added in v2.9.2
type OidcProviderType string
OidcProviderType set to Managed or UnManaged
const ( // Managed OIDC Provider type Managed OidcProviderType = "Managed" // Unmanaged OIDC Provider type Unmanaged OidcProviderType = "Unmanaged" )
type OnDemandAllocationStrategy ¶
type OnDemandAllocationStrategy string
OnDemandAllocationStrategy indicates how to allocate instance types to fulfill On-Demand capacity.
type OperatorRoleConfig ¶ added in v2.9.2
type OperatorRoleConfig struct {
// User-defined prefix for generated AWS operator roles.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MaxLength:=4
// +kubebuilder:validation:Pattern:=`^[a-z]([-a-z0-9]*[a-z0-9])?$`
// +kubebuilder:validation:XValidation:rule="self == oldSelf", message="prefix is immutable"
Prefix string `json:"prefix"`
// The ARN of the policy that is used to set the permissions boundary for the operator roles.
// +optional
PermissionsBoundaryARN string `json:"permissionsBoundaryARN,omitempty"`
// +optional
SharedVPCConfig SharedVPCConfig `json:"sharedVPCConfig,omitempty"`
// OIDCID is the ID of the OIDC config that will be used to create the operator roles.
// Cannot be set when OidcProviderType set to Managed
// +optional
// +kubebuilder:validation:XValidation:rule="self == oldSelf", message="oidcID is immutable"
OIDCID string `json:"oidcID,omitempty"`
}
OperatorRoleConfig defines cluster-specific operator IAM roles based on your cluster configuration.
func (*OperatorRoleConfig) DeepCopy ¶ added in v2.9.2
func (in *OperatorRoleConfig) DeepCopy() *OperatorRoleConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatorRoleConfig.
func (*OperatorRoleConfig) DeepCopyInto ¶ added in v2.9.2
func (in *OperatorRoleConfig) DeepCopyInto(out *OperatorRoleConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Overrides ¶
type Overrides struct {
InstanceType string `json:"instanceType"`
}
Overrides are used to override the instance type specified by the launch template with multiple instance types that can be used to launch On-Demand Instances and Spot Instances.
func (*Overrides) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Overrides.
func (*Overrides) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Processes ¶
type Processes struct {
Launch *bool `json:"launch,omitempty"`
Terminate *bool `json:"terminate,omitempty"`
AddToLoadBalancer *bool `json:"addToLoadBalancer,omitempty"`
AlarmNotification *bool `json:"alarmNotification,omitempty"`
AZRebalance *bool `json:"azRebalance,omitempty"`
HealthCheck *bool `json:"healthCheck,omitempty"`
InstanceRefresh *bool `json:"instanceRefresh,omitempty"`
ReplaceUnhealthy *bool `json:"replaceUnhealthy,omitempty"`
ScheduledActions *bool `json:"scheduledActions,omitempty"`
}
Processes defines the processes which can be enabled or disabled individually.
func (*Processes) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Processes.
func (*Processes) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROSACluster ¶ added in v2.3.0
type ROSACluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ROSAClusterSpec `json:"spec,omitempty"`
Status ROSAClusterStatus `json:"status,omitempty"`
}
ROSACluster is the Schema for the ROSAClusters API.
func (*ROSACluster) DeepCopy ¶ added in v2.3.0
func (in *ROSACluster) DeepCopy() *ROSACluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSACluster.
func (*ROSACluster) DeepCopyInto ¶ added in v2.3.0
func (in *ROSACluster) DeepCopyInto(out *ROSACluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROSACluster) DeepCopyObject ¶ added in v2.3.0
func (in *ROSACluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ROSACluster) GetConditions ¶ added in v2.8.0
func (r *ROSACluster) GetConditions() clusterv1.Conditions
GetConditions returns the observations of the operational state of the ROSACluster resource.
func (*ROSACluster) SetConditions ¶ added in v2.8.0
func (r *ROSACluster) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the underlying service state of the ROSACluster to the predescribed clusterv1.Conditions.
type ROSAClusterList ¶ added in v2.3.0
type ROSAClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ROSACluster `json:"items"`
}
ROSAClusterList contains a list of ROSACluster.
func (*ROSAClusterList) DeepCopy ¶ added in v2.3.0
func (in *ROSAClusterList) DeepCopy() *ROSAClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSAClusterList.
func (*ROSAClusterList) DeepCopyInto ¶ added in v2.3.0
func (in *ROSAClusterList) DeepCopyInto(out *ROSAClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROSAClusterList) DeepCopyObject ¶ added in v2.3.0
func (in *ROSAClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ROSAClusterSpec ¶ added in v2.3.0
type ROSAClusterSpec struct {
// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
// +optional
ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint"`
}
ROSAClusterSpec defines the desired state of ROSACluster.
func (*ROSAClusterSpec) DeepCopy ¶ added in v2.3.0
func (in *ROSAClusterSpec) DeepCopy() *ROSAClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSAClusterSpec.
func (*ROSAClusterSpec) DeepCopyInto ¶ added in v2.3.0
func (in *ROSAClusterSpec) DeepCopyInto(out *ROSAClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROSAClusterStatus ¶ added in v2.3.0
type ROSAClusterStatus struct {
// Ready is when the ROSAControlPlane has a API server URL.
// +optional
Ready bool `json:"ready,omitempty"`
// FailureDomains specifies a list fo available availability zones that can be used
// +optional
FailureDomains clusterv1.FailureDomains `json:"failureDomains,omitempty"`
// Conditions defines current service state of the ROSACluster.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}
ROSAClusterStatus defines the observed state of ROSACluster.
func (*ROSAClusterStatus) DeepCopy ¶ added in v2.3.0
func (in *ROSAClusterStatus) DeepCopy() *ROSAClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSAClusterStatus.
func (*ROSAClusterStatus) DeepCopyInto ¶ added in v2.3.0
func (in *ROSAClusterStatus) DeepCopyInto(out *ROSAClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROSAMachinePool ¶ added in v2.4.0
type ROSAMachinePool struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec RosaMachinePoolSpec `json:"spec,omitempty"`
Status RosaMachinePoolStatus `json:"status,omitempty"`
}
ROSAMachinePool is the Schema for the rosamachinepools API.
func (*ROSAMachinePool) DeepCopy ¶ added in v2.4.0
func (in *ROSAMachinePool) DeepCopy() *ROSAMachinePool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSAMachinePool.
func (*ROSAMachinePool) DeepCopyInto ¶ added in v2.4.0
func (in *ROSAMachinePool) DeepCopyInto(out *ROSAMachinePool)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROSAMachinePool) DeepCopyObject ¶ added in v2.4.0
func (in *ROSAMachinePool) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ROSAMachinePool) Default ¶ added in v2.4.1
func (r *ROSAMachinePool) Default()
Default satisfies the defaulting webhook interface.
func (*ROSAMachinePool) GetConditions ¶ added in v2.4.0
func (r *ROSAMachinePool) GetConditions() clusterv1.Conditions
GetConditions returns the observations of the operational state of the RosaMachinePool resource.
func (*ROSAMachinePool) SetConditions ¶ added in v2.4.0
func (r *ROSAMachinePool) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the underlying service state of the RosaMachinePool to the predescribed clusterv1.Conditions.
func (*ROSAMachinePool) SetupWebhookWithManager ¶ added in v2.4.1
func (r *ROSAMachinePool) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager will setup the webhooks for the ROSAMachinePool.
type ROSAMachinePoolList ¶ added in v2.4.0
type ROSAMachinePoolList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ROSAMachinePool `json:"items"`
}
ROSAMachinePoolList contains a list of RosaMachinePools.
func (*ROSAMachinePoolList) DeepCopy ¶ added in v2.4.0
func (in *ROSAMachinePoolList) DeepCopy() *ROSAMachinePoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSAMachinePoolList.
func (*ROSAMachinePoolList) DeepCopyInto ¶ added in v2.4.0
func (in *ROSAMachinePoolList) DeepCopyInto(out *ROSAMachinePoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROSAMachinePoolList) DeepCopyObject ¶ added in v2.4.0
func (in *ROSAMachinePoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ROSANetwork ¶ added in v2.9.2
type ROSANetwork struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ROSANetworkSpec `json:"spec,omitempty"`
Status ROSANetworkStatus `json:"status,omitempty"`
}
ROSANetwork is the schema for the rosanetworks API
func (*ROSANetwork) DeepCopy ¶ added in v2.9.2
func (in *ROSANetwork) DeepCopy() *ROSANetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSANetwork.
func (*ROSANetwork) DeepCopyInto ¶ added in v2.9.2
func (in *ROSANetwork) DeepCopyInto(out *ROSANetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROSANetwork) DeepCopyObject ¶ added in v2.9.2
func (in *ROSANetwork) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ROSANetwork) GetConditions ¶ added in v2.9.2
func (r *ROSANetwork) GetConditions() clusterv1.Conditions
GetConditions returns the observations of the operational state of the ROSANetwork resource.
func (*ROSANetwork) SetConditions ¶ added in v2.9.2
func (r *ROSANetwork) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the underlying service state of the ROSANetwork to the predescribed clusterv1.Conditions.
type ROSANetworkList ¶ added in v2.9.2
type ROSANetworkList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ROSANetwork `json:"items"`
}
ROSANetworkList contains a list of ROSANetwork
func (*ROSANetworkList) DeepCopy ¶ added in v2.9.2
func (in *ROSANetworkList) DeepCopy() *ROSANetworkList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSANetworkList.
func (*ROSANetworkList) DeepCopyInto ¶ added in v2.9.2
func (in *ROSANetworkList) DeepCopyInto(out *ROSANetworkList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROSANetworkList) DeepCopyObject ¶ added in v2.9.2
func (in *ROSANetworkList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ROSANetworkSpec ¶ added in v2.9.2
type ROSANetworkSpec struct {
// The name of the cloudformation stack under which the network infrastructure would be created
// +immutable
StackName string `json:"stackName"`
// The AWS region in which the components of ROSA network infrastruture are to be crated
// +immutable
Region string `json:"region"`
// The number of availability zones to be used for creation of the network infrastructure.
// You can specify anything between one and four, depending on the chosen AWS region.
// +kubebuilder:default=1
// +optional
// +immutable
AvailabilityZoneCount int `json:"availabilityZoneCount"`
// The list of availability zones to be used for creation of the network infrastructure.
// You can specify anything between one and four valid availability zones from a given region.
// Should you specify both the availabilityZoneCount and availabilityZones, the list of availability zones takes preference.
// +optional
// +immutable
AvailabilityZones []string `json:"availabilityZones"`
// CIDR block to be used for the VPC
// +kubebuilder:validation:Format=cidr
// +immutable
CIDRBlock string `json:"cidrBlock"`
// IdentityRef is a reference to an identity to be used when reconciling rosa network.
// If no identity is specified, the default identity for this controller will be used.
//
// +optional
IdentityRef *infrav1.AWSIdentityReference `json:"identityRef,omitempty"`
// StackTags is an optional set of tags to add to the created cloudformation stack.
// The stack tags will then be automatically applied to the supported AWS resources (VPC, subnets, ...).
//
// +optional
StackTags Tags `json:"stackTags,omitempty"`
}
ROSANetworkSpec defines the desired state of ROSANetwork
func (*ROSANetworkSpec) DeepCopy ¶ added in v2.9.2
func (in *ROSANetworkSpec) DeepCopy() *ROSANetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSANetworkSpec.
func (*ROSANetworkSpec) DeepCopyInto ¶ added in v2.9.2
func (in *ROSANetworkSpec) DeepCopyInto(out *ROSANetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROSANetworkStatus ¶ added in v2.9.2
type ROSANetworkStatus struct {
// Array of created private, public subnets and availability zones, grouped by availability zones
Subnets []ROSANetworkSubnet `json:"subnets,omitempty"`
// Resources created in the cloudformation stack
Resources []CFResource `json:"resources,omitempty"`
// Conditions specifies the conditions for ROSANetwork
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}
ROSANetworkStatus defines the observed state of ROSANetwork
func (*ROSANetworkStatus) DeepCopy ¶ added in v2.9.2
func (in *ROSANetworkStatus) DeepCopy() *ROSANetworkStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSANetworkStatus.
func (*ROSANetworkStatus) DeepCopyInto ¶ added in v2.9.2
func (in *ROSANetworkStatus) DeepCopyInto(out *ROSANetworkStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROSANetworkSubnet ¶ added in v2.9.2
type ROSANetworkSubnet struct {
// Availability zone of the subnet pair, for example us-west-2a
AvailabilityZone string `json:"availabilityZone"`
// ID of the public subnet, for example subnet-0f7e49a3ce68ff338
PublicSubnet string `json:"publicSubnet"`
// ID of the private subnet, for example subnet-07a20d6c41af2b725
PrivateSubnet string `json:"privateSubnet"`
}
ROSANetworkSubnet groups public and private subnet and the availability zone in which the two subnets got created
func (*ROSANetworkSubnet) DeepCopy ¶ added in v2.9.2
func (in *ROSANetworkSubnet) DeepCopy() *ROSANetworkSubnet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSANetworkSubnet.
func (*ROSANetworkSubnet) DeepCopyInto ¶ added in v2.9.2
func (in *ROSANetworkSubnet) DeepCopyInto(out *ROSANetworkSubnet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROSARoleConfig ¶ added in v2.9.2
type ROSARoleConfig struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ROSARoleConfigSpec `json:"spec,omitempty"`
Status ROSARoleConfigStatus `json:"status,omitempty"`
}
ROSARoleConfig is the Schema for the rosaroleconfigs API +kubebuilder:object:root=true +kubebuilder:resource:path=rosaroleconfigs,scope=Namespaced,categories=cluster-api,shortName=rosarole +kubebuilder:storageversion +kubebuilder:subresource:status
func (*ROSARoleConfig) DeepCopy ¶ added in v2.9.2
func (in *ROSARoleConfig) DeepCopy() *ROSARoleConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSARoleConfig.
func (*ROSARoleConfig) DeepCopyInto ¶ added in v2.9.2
func (in *ROSARoleConfig) DeepCopyInto(out *ROSARoleConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROSARoleConfig) DeepCopyObject ¶ added in v2.9.2
func (in *ROSARoleConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ROSARoleConfig) GetConditions ¶ added in v2.9.2
func (r *ROSARoleConfig) GetConditions() clusterv1.Conditions
GetConditions returns the observations of the operational state of the RosaNetwork resource.
func (*ROSARoleConfig) SetConditions ¶ added in v2.9.2
func (r *ROSARoleConfig) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the conditions of the ROSARoleConfig.
func (*ROSARoleConfig) SetupWebhookWithManager ¶ added in v2.9.2
func (r *ROSARoleConfig) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager will setup the webhooks for the ROSARoleConfig.
type ROSARoleConfigList ¶ added in v2.9.2
type ROSARoleConfigList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ROSARoleConfig `json:"items"`
}
ROSARoleConfigList contains a list of ROSARoleConfig +kubebuilder:object:root=true
func (*ROSARoleConfigList) DeepCopy ¶ added in v2.9.2
func (in *ROSARoleConfigList) DeepCopy() *ROSARoleConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSARoleConfigList.
func (*ROSARoleConfigList) DeepCopyInto ¶ added in v2.9.2
func (in *ROSARoleConfigList) DeepCopyInto(out *ROSARoleConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ROSARoleConfigList) DeepCopyObject ¶ added in v2.9.2
func (in *ROSARoleConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ROSARoleConfigSpec ¶ added in v2.9.2
type ROSARoleConfigSpec struct {
// AccountRoleConfig defines account-wide IAM roles before creating your ROSA cluster.
AccountRoleConfig AccountRoleConfig `json:"accountRoleConfig"`
// OperatorRoleConfig defines cluster-specific operator IAM roles based on your cluster configuration.
OperatorRoleConfig OperatorRoleConfig `json:"operatorRoleConfig"`
// IdentityRef is a reference to an identity to be used when reconciling the ROSA Role Config.
// If no identity is specified, the default identity for this controller will be used.
// +optional
IdentityRef *infrav1.AWSIdentityReference `json:"identityRef,omitempty"`
// CredentialsSecretRef references a secret with necessary credentials to connect to the OCM API.
// +optional
CredentialsSecretRef *corev1.LocalObjectReference `json:"credentialsSecretRef,omitempty"`
// OIDC provider type values are Managed or UnManaged. When set to Unmanged OperatorRoleConfig OIDCID field must be provided.
// +kubebuilder:validation:Enum=Managed;Unmanaged
// +kubebuilder:default=Managed
OidcProviderType OidcProviderType `json:"oidcProviderType"`
}
ROSARoleConfigSpec defines the desired state of ROSARoleConfig
func (*ROSARoleConfigSpec) DeepCopy ¶ added in v2.9.2
func (in *ROSARoleConfigSpec) DeepCopy() *ROSARoleConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSARoleConfigSpec.
func (*ROSARoleConfigSpec) DeepCopyInto ¶ added in v2.9.2
func (in *ROSARoleConfigSpec) DeepCopyInto(out *ROSARoleConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ROSARoleConfigStatus ¶ added in v2.9.2
type ROSARoleConfigStatus struct {
// ID of created OIDC config
OIDCID string `json:"oidcID,omitempty"`
// Create OIDC provider for operators to authenticate against in an STS cluster.
OIDCProviderARN string `json:"oidcProviderARN,omitempty"`
// Created Account roles that can be used to
AccountRolesRef AccountRolesRef `json:"accountRolesRef,omitempty"`
// AWS IAM roles used to perform credential requests by the openshift operators.
OperatorRolesRef rosacontrolplanev1.AWSRolesRef `json:"operatorRolesRef,omitempty"`
// Conditions specifies the ROSARoleConfig conditions
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}
ROSARoleConfigStatus defines the observed state of ROSARoleConfig
func (*ROSARoleConfigStatus) DeepCopy ¶ added in v2.9.2
func (in *ROSARoleConfigStatus) DeepCopy() *ROSARoleConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ROSARoleConfigStatus.
func (*ROSARoleConfigStatus) DeepCopyInto ¶ added in v2.9.2
func (in *ROSARoleConfigStatus) DeepCopyInto(out *ROSARoleConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RefreshPreferences ¶
type RefreshPreferences struct {
// Disable, if true, disables instance refresh from triggering when new launch templates are detected.
// This is useful in scenarios where ASG nodes are externally managed.
// +optional
Disable bool `json:"disable,omitempty"`
// The strategy to use for the instance refresh. The only valid value is Rolling.
// A rolling update is an update that is applied to all instances in an Auto
// Scaling group until all instances have been updated.
// +optional
Strategy *string `json:"strategy,omitempty"`
// The number of seconds until a newly launched instance is configured and ready
// to use. During this time, the next replacement will not be initiated.
// The default is to use the value for the health check grace period defined for the group.
// +optional
InstanceWarmup *int64 `json:"instanceWarmup,omitempty"`
// The amount of capacity as a percentage in ASG that must remain healthy
// during an instance refresh. The default is 90.
// +optional
MinHealthyPercentage *int64 `json:"minHealthyPercentage,omitempty"`
// The amount of capacity as a percentage in ASG that can be in service and healthy, or pending,
// to support your workload when replacing instances.
// The value is expressed as a percentage of the desired capacity of the ASG. Value range is 100 to 200.
// If you specify MaxHealthyPercentage , you must also specify MinHealthyPercentage , and the difference between
// them cannot be greater than 100.
// A larger range increases the number of instances that can be replaced at the same time.
// +optional
// +kubebuilder:validation:Minimum=100
// +kubebuilder:validation:Maximum=200
MaxHealthyPercentage *int64 `json:"maxHealthyPercentage,omitempty"`
}
RefreshPreferences defines the specs for instance refreshing.
func (*RefreshPreferences) DeepCopy ¶
func (in *RefreshPreferences) DeepCopy() *RefreshPreferences
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RefreshPreferences.
func (*RefreshPreferences) DeepCopyInto ¶
func (in *RefreshPreferences) DeepCopyInto(out *RefreshPreferences)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RollingUpdate ¶ added in v2.5.1
type RollingUpdate struct {
// Value can be an absolute number (ex: 5) or a percentage of desired nodes (ex: 10%).
// Absolute number is calculated from percentage by rounding down.
//
// MaxUnavailable can not be 0 if MaxSurge is 0, default is 0.
// Both MaxUnavailable & MaxSurge must use the same units (absolute value or percentage).
//
// Example: when MaxUnavailable is set to 30%, old nodes can be deleted down to 70% of
// desired nodes immediately when the rolling update starts. Once new nodes
// are ready, more old nodes be deleted, followed by provisioning new nodes,
// ensuring that the total number of nodes available at all times during the
// update is at least 70% of desired nodes.
//
// +kubebuilder:validation:Pattern="^((100|[0-9]{1,2})%|[0-9]+)$"
// +kubebuilder:validation:XIntOrString
// +kubebuilder:default=0
// +optional
MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"`
// MaxSurge is the maximum number of nodes that can be provisioned above the desired number of nodes.
// Value can be an absolute number (ex: 5) or a percentage of desired nodes (ex: 10%).
// Absolute number is calculated from percentage by rounding up.
//
// MaxSurge can not be 0 if MaxUnavailable is 0, default is 1.
// Both MaxSurge & MaxUnavailable must use the same units (absolute value or percentage).
//
// Example: when MaxSurge is set to 30%, new nodes can be provisioned immediately
// when the rolling update starts, such that the total number of old and new
// nodes do not exceed 130% of desired nodes. Once old nodes have been
// deleted, new nodes can be provisioned, ensuring that total number of nodes
// running at any time during the update is at most 130% of desired nodes.
//
// +kubebuilder:validation:Pattern="^((100|[0-9]{1,2})%|[0-9]+)$"
// +kubebuilder:validation:XIntOrString
// +kubebuilder:default=1
// +optional
MaxSurge *intstr.IntOrString `json:"maxSurge,omitempty"`
}
RollingUpdate specifies MaxUnavailable & MaxSurge number of nodes during update.
func (*RollingUpdate) DeepCopy ¶ added in v2.5.1
func (in *RollingUpdate) DeepCopy() *RollingUpdate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpdate.
func (*RollingUpdate) DeepCopyInto ¶ added in v2.5.1
func (in *RollingUpdate) DeepCopyInto(out *RollingUpdate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RosaMachinePoolSpec ¶ added in v2.4.0
type RosaMachinePoolSpec struct {
// NodePoolName specifies the name of the nodepool in Rosa
// must be a valid DNS-1035 label, so it must consist of lower case alphanumeric and have a max length of 15 characters.
//
// +immutable
// +kubebuilder:validation:XValidation:rule="self == oldSelf", message="nodepoolName is immutable"
// +kubebuilder:validation:MaxLength:=15
// +kubebuilder:validation:Pattern:=`^[a-z]([-a-z0-9]*[a-z0-9])?$`
NodePoolName string `json:"nodePoolName"`
// Version specifies the OpenShift version of the nodes associated with this machinepool.
// ROSAControlPlane version is used if not set.
//
// +optional
Version string `json:"version,omitempty"`
// AvailabilityZone is an optinal field specifying the availability zone where instances of this machine pool should run
// For Multi-AZ clusters, you can create a machine pool in a Single-AZ of your choice.
// +optional
AvailabilityZone string `json:"availabilityZone,omitempty"`
// +kubebuilder:validation:XValidation:rule="self == oldSelf", message="subnet is immutable"
// +immutable
// +optional
Subnet string `json:"subnet,omitempty"`
// Labels specifies labels for the Kubernetes node objects
// +optional
Labels map[string]string `json:"labels,omitempty"`
// Taints specifies the taints to apply to the nodes of the machine pool
// +optional
Taints []RosaTaint `json:"taints,omitempty"`
// AdditionalTags are user-defined tags to be added on the underlying EC2 instances associated with this machine pool.
// +immutable
// +optional
AdditionalTags infrav1.Tags `json:"additionalTags,omitempty"`
// AutoRepair specifies whether health checks should be enabled for machines
// in the NodePool. The default is true.
// +kubebuilder:default=true
// +optional
AutoRepair bool `json:"autoRepair,omitempty"`
// InstanceType specifies the AWS instance type
//
// +kubebuilder:validation:Required
InstanceType string `json:"instanceType"`
// Autoscaling specifies auto scaling behaviour for this MachinePool.
// required if Replicas is not configured
// +optional
Autoscaling *rosacontrolplanev1.AutoScaling `json:"autoscaling,omitempty"`
// TuningConfigs specifies the names of the tuning configs to be applied to this MachinePool.
// Tuning configs must already exist.
// +optional
TuningConfigs []string `json:"tuningConfigs,omitempty"`
// AdditionalSecurityGroups is an optional set of security groups to associate
// with all node instances of the machine pool.
//
// +immutable
// +optional
AdditionalSecurityGroups []string `json:"additionalSecurityGroups,omitempty"`
// VolumeSize set the disk volume size for the machine pool, in Gib. The default is 300 GiB.
// +kubebuilder:validation:Minimum=75
// +kubebuilder:validation:Maximum=16384
// +immutable
// +optional
VolumeSize int `json:"volumeSize,omitempty"`
// ProviderIDList contain a ProviderID for each machine instance that's currently managed by this machine pool.
// +optional
ProviderIDList []string `json:"providerIDList,omitempty"`
// NodeDrainGracePeriod is grace period for how long Pod Disruption Budget-protected workloads will be
// respected during upgrades. After this grace period, any workloads protected by Pod Disruption
// Budgets that have not been successfully drained from a node will be forcibly evicted.
//
// Valid values are from 0 to 1 week(10080m|168h) .
// 0 or empty value means that the MachinePool can be drained without any time limitation.
//
// +optional
NodeDrainGracePeriod *metav1.Duration `json:"nodeDrainGracePeriod,omitempty"`
// UpdateConfig specifies update configurations.
//
// +optional
UpdateConfig *RosaUpdateConfig `json:"updateConfig,omitempty"`
// CapacityReservationID specifies the ID of an AWS On-Demand Capacity Reservation and Capacity Blocks for ML.
// The CapacityReservationID must be pre-created in advance, before creating a NodePool.
//
// +optional
CapacityReservationID string `json:"capacityReservationID,omitempty"`
}
RosaMachinePoolSpec defines the desired state of RosaMachinePool.
func (*RosaMachinePoolSpec) DeepCopy ¶ added in v2.4.0
func (in *RosaMachinePoolSpec) DeepCopy() *RosaMachinePoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RosaMachinePoolSpec.
func (*RosaMachinePoolSpec) DeepCopyInto ¶ added in v2.4.0
func (in *RosaMachinePoolSpec) DeepCopyInto(out *RosaMachinePoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RosaMachinePoolStatus ¶ added in v2.4.0
type RosaMachinePoolStatus struct {
// Ready denotes that the RosaMachinePool nodepool has joined
// the cluster
// +kubebuilder:default=false
Ready bool `json:"ready"`
// Replicas is the most recently observed number of replicas.
// +optional
Replicas int32 `json:"replicas"`
// Conditions defines current service state of the managed machine pool
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
// FailureMessage will be set in the event that there is a terminal problem
// reconciling the state and will be set to a descriptive error message.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the spec or the configuration of
// the controller, and that manual intervention is required.
//
// +optional
FailureMessage *string `json:"failureMessage,omitempty"`
// ID is the ID given by ROSA.
ID string `json:"id,omitempty"`
// Available upgrades for the ROSA MachinePool.
AvailableUpgrades []string `json:"availableUpgrades,omitempty"`
}
RosaMachinePoolStatus defines the observed state of RosaMachinePool.
func (*RosaMachinePoolStatus) DeepCopy ¶ added in v2.4.0
func (in *RosaMachinePoolStatus) DeepCopy() *RosaMachinePoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RosaMachinePoolStatus.
func (*RosaMachinePoolStatus) DeepCopyInto ¶ added in v2.4.0
func (in *RosaMachinePoolStatus) DeepCopyInto(out *RosaMachinePoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RosaTaint ¶ added in v2.4.1
type RosaTaint struct {
// The taint key to be applied to a node.
//
// +kubebuilder:validation:Required
Key string `json:"key"`
// The taint value corresponding to the taint key.
//
// +kubebuilder:validation:Pattern:=`^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$`
// +optional
Value string `json:"value,omitempty"`
// The effect of the taint on pods that do not tolerate the taint.
// Valid effects are NoSchedule, PreferNoSchedule and NoExecute.
//
// +kubebuilder:validation:Required
// +kubebuilder:validation:Enum=NoSchedule;PreferNoSchedule;NoExecute
Effect corev1.TaintEffect `json:"effect"`
}
RosaTaint represents a taint to be applied to a node.
func (*RosaTaint) DeepCopy ¶ added in v2.4.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RosaTaint.
func (*RosaTaint) DeepCopyInto ¶ added in v2.4.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RosaUpdateConfig ¶ added in v2.5.1
type RosaUpdateConfig struct {
// RollingUpdate specifies MaxUnavailable & MaxSurge number of nodes during update.
//
// +optional
RollingUpdate *RollingUpdate `json:"rollingUpdate,omitempty"`
}
RosaUpdateConfig specifies update configuration
func (*RosaUpdateConfig) DeepCopy ¶ added in v2.5.1
func (in *RosaUpdateConfig) DeepCopy() *RosaUpdateConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RosaUpdateConfig.
func (*RosaUpdateConfig) DeepCopyInto ¶ added in v2.5.1
func (in *RosaUpdateConfig) DeepCopyInto(out *RosaUpdateConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SharedVPCConfig ¶ added in v2.9.2
type SharedVPCConfig struct {
RouteRoleARN string `json:"routeRoleARN,omitempty"`
VPCEndpointRoleARN string `json:"vpcEndpointRoleArn,omitempty"`
}
SharedVPCConfig is used to set up shared VPC.
func (*SharedVPCConfig) DeepCopy ¶ added in v2.9.2
func (in *SharedVPCConfig) DeepCopy() *SharedVPCConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVPCConfig.
func (*SharedVPCConfig) DeepCopyInto ¶ added in v2.9.2
func (in *SharedVPCConfig) DeepCopyInto(out *SharedVPCConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (SharedVPCConfig) IsSharedVPC ¶ added in v2.9.2
func (s SharedVPCConfig) IsSharedVPC() bool
IsSharedVPC checks if the shared VPC config is set.
type SpotAllocationStrategy ¶
type SpotAllocationStrategy string
SpotAllocationStrategy indicates how to allocate instances across Spot Instance pools.
type SuspendProcessesTypes ¶
type SuspendProcessesTypes struct {
All bool `json:"all,omitempty"`
Processes *Processes `json:"processes,omitempty"`
}
SuspendProcessesTypes contains user friendly auto-completable values for suspended process names.
func (*SuspendProcessesTypes) ConvertSetValuesToStringSlice ¶
func (s *SuspendProcessesTypes) ConvertSetValuesToStringSlice() []string
ConvertSetValuesToStringSlice converts all the values that are set into a string slice for further processing.
func (*SuspendProcessesTypes) DeepCopy ¶
func (in *SuspendProcessesTypes) DeepCopy() *SuspendProcessesTypes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SuspendProcessesTypes.
func (*SuspendProcessesTypes) DeepCopyInto ¶
func (in *SuspendProcessesTypes) DeepCopyInto(out *SuspendProcessesTypes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tags ¶
Tags is a mapping for tags.
func (Tags) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tags.
func (Tags) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Taint ¶
type Taint struct {
// Effect specifies the effect for the taint
// +kubebuilder:validation:Required
// +kubebuilder:validation:Enum=no-schedule;no-execute;prefer-no-schedule
Effect TaintEffect `json:"effect"`
// Key is the key of the taint
// +kubebuilder:validation:Required
Key string `json:"key"`
// Value is the value of the taint
// +kubebuilder:validation:Required
Value string `json:"value"`
}
Taint defines the specs for a Kubernetes taint.
func (*Taint) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Taint.
func (*Taint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Taints ¶
type Taints []Taint
Taints is an array of Taints.
func (Taints) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Taints.
func (Taints) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UpdateConfig ¶
type UpdateConfig struct {
// Nodes will be updated in parallel. The maximum number is 100.
// +optional
// +kubebuilder:validation:Maximum=100
// +kubebuilder:validation:Minimum=1
MaxUnavailable *int `json:"maxUnavailable,omitempty"`
// percentage of nodes will be updated in parallel, up to 100 nodes at once.
// +optional
// +kubebuilder:validation:Maximum=100
// +kubebuilder:validation:Minimum=1
MaxUnavailablePercentage *int `json:"maxUnavailablePercentage,omitempty"`
}
UpdateConfig is the configuration options for updating a nodegroup. Only one of MaxUnavailable and MaxUnavailablePercentage should be specified.
func (*UpdateConfig) DeepCopy ¶
func (in *UpdateConfig) DeepCopy() *UpdateConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateConfig.
func (*UpdateConfig) DeepCopyInto ¶
func (in *UpdateConfig) DeepCopyInto(out *UpdateConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files
¶
- awsfargateprofile_types.go
- awsfargateprofile_webhook.go
- awsmachinepool_types.go
- awsmachinepool_webhook.go
- awsmanagedmachinepool_types.go
- awsmanagedmachinepool_webhook.go
- conditions_consts.go
- conversion.go
- doc.go
- finalizers.go
- groupversion_info.go
- rosacluster_types.go
- rosamachinepool_types.go
- rosamachinepool_webhook.go
- rosanetwork_types.go
- rosaroleconfig_types.go
- rosaroleconfig_webhook.go
- types.go
- validation.go
- zz_generated.deepcopy.go
- zz_generated.defaults.go