...

Package v1

import "github.com/openshift/api/machine/v1"
Overview
Index

Overview ▾

+kubebuilder:validation:Optional +groupName=machine.openshift.io

Index ▾

Constants
Variables
func Resource(resource string) schema.GroupResource
type AWSFailureDomain
    func (in *AWSFailureDomain) DeepCopy() *AWSFailureDomain
    func (in *AWSFailureDomain) DeepCopyInto(out *AWSFailureDomain)
    func (AWSFailureDomain) SwaggerDoc() map[string]string
type AWSFailureDomainPlacement
    func (in *AWSFailureDomainPlacement) DeepCopy() *AWSFailureDomainPlacement
    func (in *AWSFailureDomainPlacement) DeepCopyInto(out *AWSFailureDomainPlacement)
    func (AWSFailureDomainPlacement) SwaggerDoc() map[string]string
type AWSResourceFilter
    func (in *AWSResourceFilter) DeepCopy() *AWSResourceFilter
    func (in *AWSResourceFilter) DeepCopyInto(out *AWSResourceFilter)
    func (AWSResourceFilter) SwaggerDoc() map[string]string
type AWSResourceReference
    func (in *AWSResourceReference) DeepCopy() *AWSResourceReference
    func (in *AWSResourceReference) DeepCopyInto(out *AWSResourceReference)
    func (AWSResourceReference) SwaggerDoc() map[string]string
type AWSResourceReferenceType
type AlibabaCloudMachineProviderConfig
    func (in *AlibabaCloudMachineProviderConfig) DeepCopy() *AlibabaCloudMachineProviderConfig
    func (in *AlibabaCloudMachineProviderConfig) DeepCopyInto(out *AlibabaCloudMachineProviderConfig)
    func (in *AlibabaCloudMachineProviderConfig) DeepCopyObject() runtime.Object
    func (AlibabaCloudMachineProviderConfig) SwaggerDoc() map[string]string
type AlibabaCloudMachineProviderConfigList
    func (in *AlibabaCloudMachineProviderConfigList) DeepCopy() *AlibabaCloudMachineProviderConfigList
    func (in *AlibabaCloudMachineProviderConfigList) DeepCopyInto(out *AlibabaCloudMachineProviderConfigList)
    func (in *AlibabaCloudMachineProviderConfigList) DeepCopyObject() runtime.Object
    func (AlibabaCloudMachineProviderConfigList) SwaggerDoc() map[string]string
type AlibabaCloudMachineProviderStatus
    func (in *AlibabaCloudMachineProviderStatus) DeepCopy() *AlibabaCloudMachineProviderStatus
    func (in *AlibabaCloudMachineProviderStatus) DeepCopyInto(out *AlibabaCloudMachineProviderStatus)
    func (in *AlibabaCloudMachineProviderStatus) DeepCopyObject() runtime.Object
    func (AlibabaCloudMachineProviderStatus) SwaggerDoc() map[string]string
type AlibabaDiskCategory
type AlibabaDiskEncryptionMode
type AlibabaDiskPerformanceLevel
type AlibabaDiskPreservationPolicy
type AlibabaResourceReference
    func (in *AlibabaResourceReference) DeepCopy() *AlibabaResourceReference
    func (in *AlibabaResourceReference) DeepCopyInto(out *AlibabaResourceReference)
    func (AlibabaResourceReference) SwaggerDoc() map[string]string
type AlibabaResourceReferenceType
type AzureFailureDomain
    func (in *AzureFailureDomain) DeepCopy() *AzureFailureDomain
    func (in *AzureFailureDomain) DeepCopyInto(out *AzureFailureDomain)
    func (AzureFailureDomain) SwaggerDoc() map[string]string
type BandwidthProperties
    func (in *BandwidthProperties) DeepCopy() *BandwidthProperties
    func (in *BandwidthProperties) DeepCopyInto(out *BandwidthProperties)
    func (BandwidthProperties) SwaggerDoc() map[string]string
type ControlPlaneMachineSet
    func (in *ControlPlaneMachineSet) DeepCopy() *ControlPlaneMachineSet
    func (in *ControlPlaneMachineSet) DeepCopyInto(out *ControlPlaneMachineSet)
    func (in *ControlPlaneMachineSet) DeepCopyObject() runtime.Object
    func (ControlPlaneMachineSet) SwaggerDoc() map[string]string
type ControlPlaneMachineSetList
    func (in *ControlPlaneMachineSetList) DeepCopy() *ControlPlaneMachineSetList
    func (in *ControlPlaneMachineSetList) DeepCopyInto(out *ControlPlaneMachineSetList)
    func (in *ControlPlaneMachineSetList) DeepCopyObject() runtime.Object
    func (ControlPlaneMachineSetList) SwaggerDoc() map[string]string
type ControlPlaneMachineSetMachineType
type ControlPlaneMachineSetSpec
    func (in *ControlPlaneMachineSetSpec) DeepCopy() *ControlPlaneMachineSetSpec
    func (in *ControlPlaneMachineSetSpec) DeepCopyInto(out *ControlPlaneMachineSetSpec)
    func (ControlPlaneMachineSetSpec) SwaggerDoc() map[string]string
type ControlPlaneMachineSetState
type ControlPlaneMachineSetStatus
    func (in *ControlPlaneMachineSetStatus) DeepCopy() *ControlPlaneMachineSetStatus
    func (in *ControlPlaneMachineSetStatus) DeepCopyInto(out *ControlPlaneMachineSetStatus)
    func (ControlPlaneMachineSetStatus) SwaggerDoc() map[string]string
type ControlPlaneMachineSetStrategy
    func (in *ControlPlaneMachineSetStrategy) DeepCopy() *ControlPlaneMachineSetStrategy
    func (in *ControlPlaneMachineSetStrategy) DeepCopyInto(out *ControlPlaneMachineSetStrategy)
    func (ControlPlaneMachineSetStrategy) SwaggerDoc() map[string]string
type ControlPlaneMachineSetStrategyType
type ControlPlaneMachineSetTemplate
    func (in *ControlPlaneMachineSetTemplate) DeepCopy() *ControlPlaneMachineSetTemplate
    func (in *ControlPlaneMachineSetTemplate) DeepCopyInto(out *ControlPlaneMachineSetTemplate)
    func (ControlPlaneMachineSetTemplate) SwaggerDoc() map[string]string
type ControlPlaneMachineSetTemplateObjectMeta
    func (in *ControlPlaneMachineSetTemplateObjectMeta) DeepCopy() *ControlPlaneMachineSetTemplateObjectMeta
    func (in *ControlPlaneMachineSetTemplateObjectMeta) DeepCopyInto(out *ControlPlaneMachineSetTemplateObjectMeta)
    func (ControlPlaneMachineSetTemplateObjectMeta) SwaggerDoc() map[string]string
type DataDiskProperties
    func (in *DataDiskProperties) DeepCopy() *DataDiskProperties
    func (in *DataDiskProperties) DeepCopyInto(out *DataDiskProperties)
    func (DataDiskProperties) SwaggerDoc() map[string]string
type FailureDomains
    func (in *FailureDomains) DeepCopy() *FailureDomains
    func (in *FailureDomains) DeepCopyInto(out *FailureDomains)
    func (FailureDomains) SwaggerDoc() map[string]string
type GCPFailureDomain
    func (in *GCPFailureDomain) DeepCopy() *GCPFailureDomain
    func (in *GCPFailureDomain) DeepCopyInto(out *GCPFailureDomain)
    func (GCPFailureDomain) SwaggerDoc() map[string]string
type IBMVPCLoadBalancerType
type InstanceTenancy
type LoadBalancerReference
    func (in *LoadBalancerReference) DeepCopy() *LoadBalancerReference
    func (in *LoadBalancerReference) DeepCopyInto(out *LoadBalancerReference)
    func (LoadBalancerReference) SwaggerDoc() map[string]string
type NutanixBootType
type NutanixCategory
    func (in *NutanixCategory) DeepCopy() *NutanixCategory
    func (in *NutanixCategory) DeepCopyInto(out *NutanixCategory)
    func (NutanixCategory) SwaggerDoc() map[string]string
type NutanixIdentifierType
type NutanixMachineProviderConfig
    func (in *NutanixMachineProviderConfig) DeepCopy() *NutanixMachineProviderConfig
    func (in *NutanixMachineProviderConfig) DeepCopyInto(out *NutanixMachineProviderConfig)
    func (in *NutanixMachineProviderConfig) DeepCopyObject() runtime.Object
    func (NutanixMachineProviderConfig) SwaggerDoc() map[string]string
type NutanixMachineProviderStatus
    func (in *NutanixMachineProviderStatus) DeepCopy() *NutanixMachineProviderStatus
    func (in *NutanixMachineProviderStatus) DeepCopyInto(out *NutanixMachineProviderStatus)
    func (in *NutanixMachineProviderStatus) DeepCopyObject() runtime.Object
    func (NutanixMachineProviderStatus) SwaggerDoc() map[string]string
type NutanixResourceIdentifier
    func (in *NutanixResourceIdentifier) DeepCopy() *NutanixResourceIdentifier
    func (in *NutanixResourceIdentifier) DeepCopyInto(out *NutanixResourceIdentifier)
    func (NutanixResourceIdentifier) SwaggerDoc() map[string]string
type OpenShiftMachineV1Beta1MachineTemplate
    func (in *OpenShiftMachineV1Beta1MachineTemplate) DeepCopy() *OpenShiftMachineV1Beta1MachineTemplate
    func (in *OpenShiftMachineV1Beta1MachineTemplate) DeepCopyInto(out *OpenShiftMachineV1Beta1MachineTemplate)
    func (OpenShiftMachineV1Beta1MachineTemplate) SwaggerDoc() map[string]string
type PowerVSMachineProviderConfig
    func (in *PowerVSMachineProviderConfig) DeepCopy() *PowerVSMachineProviderConfig
    func (in *PowerVSMachineProviderConfig) DeepCopyInto(out *PowerVSMachineProviderConfig)
    func (in *PowerVSMachineProviderConfig) DeepCopyObject() runtime.Object
    func (PowerVSMachineProviderConfig) SwaggerDoc() map[string]string
type PowerVSMachineProviderStatus
    func (in *PowerVSMachineProviderStatus) DeepCopy() *PowerVSMachineProviderStatus
    func (in *PowerVSMachineProviderStatus) DeepCopyInto(out *PowerVSMachineProviderStatus)
    func (in *PowerVSMachineProviderStatus) DeepCopyObject() runtime.Object
    func (PowerVSMachineProviderStatus) SwaggerDoc() map[string]string
type PowerVSProcessorType
type PowerVSResource
    func (in *PowerVSResource) DeepCopy() *PowerVSResource
    func (in *PowerVSResource) DeepCopyInto(out *PowerVSResource)
    func (PowerVSResource) SwaggerDoc() map[string]string
type PowerVSResourceType
type PowerVSSecretReference
    func (in *PowerVSSecretReference) DeepCopy() *PowerVSSecretReference
    func (in *PowerVSSecretReference) DeepCopyInto(out *PowerVSSecretReference)
    func (PowerVSSecretReference) SwaggerDoc() map[string]string
type SystemDiskProperties
    func (in *SystemDiskProperties) DeepCopy() *SystemDiskProperties
    func (in *SystemDiskProperties) DeepCopyInto(out *SystemDiskProperties)
    func (SystemDiskProperties) SwaggerDoc() map[string]string
type Tag
    func (in *Tag) DeepCopy() *Tag
    func (in *Tag) DeepCopyInto(out *Tag)
    func (Tag) SwaggerDoc() map[string]string

Package files

common.go doc.go register.go types_alibabaprovider.go types_aws.go types_controlplanemachineset.go types_nutanixprovider.go types_powervsprovider.go zz_generated.deepcopy.go zz_generated.swagger_doc_generated.go

Constants

const (
    // DeleteWithInstance enum property to delete disk with instance deletion
    DeleteWithInstance AlibabaDiskPreservationPolicy = "DeleteWithInstance"
    // PreserveDisk enum property to determine disk preservation with instance deletion
    PreserveDisk AlibabaDiskPreservationPolicy = "PreserveDisk"

    // AlibabaDiskEncryptionEnabled enum property to enable disk encryption
    AlibabaDiskEncryptionEnabled AlibabaDiskEncryptionMode = "encrypted"
    // AlibabaDiskEncryptionDisabled enum property to disable disk encryption
    AlibabaDiskEncryptionDisabled AlibabaDiskEncryptionMode = "disabled"

    // AlibabaDiskPerformanceLevel0 enum property to set the level at PL0
    PL0 AlibabaDiskPerformanceLevel = "PL0"
    // AlibabaDiskPerformanceLevel1 enum property to set the level at PL1
    PL1 AlibabaDiskPerformanceLevel = "PL1"
    // AlibabaDiskPerformanceLevel2 enum property to set the level at PL2
    PL2 AlibabaDiskPerformanceLevel = "PL2"
    // AlibabaDiskPerformanceLevel3 enum property to set the level at PL3
    PL3 AlibabaDiskPerformanceLevel = "PL3"

    // AlibabaDiskCategoryUltraDisk enum proprty to set the category of disk to ultra disk
    AlibabaDiskCatagoryUltraDisk AlibabaDiskCategory = "cloud_efficiency"
    // AlibabaDiskCategorySSD enum proprty to set the category of disk to standard SSD
    AlibabaDiskCatagorySSD AlibabaDiskCategory = "cloud_ssd"
    // AlibabaDiskCategoryESSD enum proprty to set the category of disk to ESSD
    AlibabaDiskCatagoryESSD AlibabaDiskCategory = "cloud_essd"
    // AlibabaDiskCategoryBasic enum proprty to set the category of disk to basic
    AlibabaDiskCatagoryBasic AlibabaDiskCategory = "cloud"

    // AlibabaResourceReferenceTypeID enum property to identify an ID type resource reference
    AlibabaResourceReferenceTypeID AlibabaResourceReferenceType = "ID"
    // AlibabaResourceReferenceTypeName enum property to identify an Name type resource reference
    AlibabaResourceReferenceTypeName AlibabaResourceReferenceType = "Name"
    // AlibabaResourceReferenceTypeTags enum property to identify a tags type resource reference
    AlibabaResourceReferenceTypeTags AlibabaResourceReferenceType = "Tags"
)
const (
    // PowerVSResourceTypeID enum property to identify an ID type resource reference
    PowerVSResourceTypeID PowerVSResourceType = "ID"
    // PowerVSResourceTypeName enum property to identify a Name type resource reference
    PowerVSResourceTypeName PowerVSResourceType = "Name"
    // PowerVSResourceTypeRegEx enum property to identify a tags type resource reference
    PowerVSResourceTypeRegEx PowerVSResourceType = "RegEx"
    // PowerVSProcessorTypeDedicated enum property to identify a Dedicated Power VS processor type
    PowerVSProcessorTypeDedicated PowerVSProcessorType = "Dedicated"
    // PowerVSProcessorTypeShared enum property to identify a Shared Power VS processor type
    PowerVSProcessorTypeShared PowerVSProcessorType = "Shared"
    // PowerVSProcessorTypeCapped enum property to identify a Capped Power VS processor type
    PowerVSProcessorTypeCapped PowerVSProcessorType = "Capped"
)

Variables

var (
    GroupName    = "machine.openshift.io"
    GroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}

    // Install is a function which adds this version to a scheme
    Install = schemeBuilder.AddToScheme

    // SchemeGroupVersion generated code relies on this name
    // Deprecated
    SchemeGroupVersion = GroupVersion
    // AddToScheme exists solely to keep the old generators creating valid code
    // DEPRECATED
    AddToScheme = schemeBuilder.AddToScheme
)

func Resource

func Resource(resource string) schema.GroupResource

Resource generated code relies on this being here, but it logically belongs to the group DEPRECATED

type AWSFailureDomain

AWSFailureDomain configures failure domain information for the AWS platform. +kubebuilder:validation:MinProperties:=1

type AWSFailureDomain struct {
    // Subnet is a reference to the subnet to use for this instance.
    // +optional
    Subnet *AWSResourceReference `json:"subnet,omitempty"`

    // Placement configures the placement information for this instance.
    // +optional
    Placement AWSFailureDomainPlacement `json:"placement,omitempty"`
}

func (*AWSFailureDomain) DeepCopy

func (in *AWSFailureDomain) DeepCopy() *AWSFailureDomain

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSFailureDomain.

func (*AWSFailureDomain) DeepCopyInto

func (in *AWSFailureDomain) DeepCopyInto(out *AWSFailureDomain)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (AWSFailureDomain) SwaggerDoc

func (AWSFailureDomain) SwaggerDoc() map[string]string

type AWSFailureDomainPlacement

AWSFailureDomainPlacement configures the placement information for the AWSFailureDomain.

type AWSFailureDomainPlacement struct {
    // AvailabilityZone is the availability zone of the instance.
    // +kubebuilder:validation:Required
    AvailabilityZone string `json:"availabilityZone"`
}

func (*AWSFailureDomainPlacement) DeepCopy

func (in *AWSFailureDomainPlacement) DeepCopy() *AWSFailureDomainPlacement

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSFailureDomainPlacement.

func (*AWSFailureDomainPlacement) DeepCopyInto

func (in *AWSFailureDomainPlacement) DeepCopyInto(out *AWSFailureDomainPlacement)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (AWSFailureDomainPlacement) SwaggerDoc

func (AWSFailureDomainPlacement) SwaggerDoc() map[string]string

type AWSResourceFilter

AWSResourceFilter is a filter used to identify an AWS resource

type AWSResourceFilter struct {
    // Name of the filter. Filter names are case-sensitive.
    // +kubebuilder:validation:Required
    Name string `json:"name"`
    // Values includes one or more filter values. Filter values are case-sensitive.
    // +optional
    Values []string `json:"values,omitempty"`
}

func (*AWSResourceFilter) DeepCopy

func (in *AWSResourceFilter) DeepCopy() *AWSResourceFilter

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSResourceFilter.

func (*AWSResourceFilter) DeepCopyInto

func (in *AWSResourceFilter) DeepCopyInto(out *AWSResourceFilter)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (AWSResourceFilter) SwaggerDoc

func (AWSResourceFilter) SwaggerDoc() map[string]string

type AWSResourceReference

AWSResourceReference is a reference to a specific AWS resource by ID, ARN, or filters. Only one of ID, ARN or Filters may be specified. Specifying more than one will result in a validation error. +union +kubebuilder:validation:XValidation:rule="has(self.type) && self.type == 'ID' ? has(self.id) : !has(self.id)",message="id is required when type is ID, and forbidden otherwise" +kubebuilder:validation:XValidation:rule="has(self.type) && self.type == 'ARN' ? has(self.arn) : !has(self.arn)",message="arn is required when type is ARN, and forbidden otherwise" +kubebuilder:validation:XValidation:rule="has(self.type) && self.type == 'Filters' ? has(self.filters) : !has(self.filters)",message="filters is required when type is Filters, and forbidden otherwise"

type AWSResourceReference struct {
    // Type determines how the reference will fetch the AWS resource.
    // +unionDiscriminator
    // +kubebuilder:validation:Required
    Type AWSResourceReferenceType `json:"type"`
    // ID of resource.
    // +optional
    ID *string `json:"id,omitempty"`
    // ARN of resource.
    // +optional
    ARN *string `json:"arn,omitempty"`
    // Filters is a set of filters used to identify a resource.
    // +optional
    Filters *[]AWSResourceFilter `json:"filters,omitempty"`
}

func (*AWSResourceReference) DeepCopy

func (in *AWSResourceReference) DeepCopy() *AWSResourceReference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSResourceReference.

func (*AWSResourceReference) DeepCopyInto

func (in *AWSResourceReference) DeepCopyInto(out *AWSResourceReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (AWSResourceReference) SwaggerDoc

func (AWSResourceReference) SwaggerDoc() map[string]string

type AWSResourceReferenceType

AWSResourceReferenceType is an enumeration of different resource reference types. +kubebuilder:validation:Enum:="ID";"ARN";"Filters"

type AWSResourceReferenceType string
const (
    // AWSIDReferenceType is a resource reference based on the object ID.
    AWSIDReferenceType AWSResourceReferenceType = "ID"

    // AWSARNReferenceType is a resource reference based on the object ARN.
    AWSARNReferenceType AWSResourceReferenceType = "ARN"

    // AWSFiltersReferenceType is a resource reference based on filters.
    AWSFiltersReferenceType AWSResourceReferenceType = "Filters"
)

type AlibabaCloudMachineProviderConfig

AlibabaCloudMachineProviderConfig is the Schema for the alibabacloudmachineproviderconfig API Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1 +k8s:openapi-gen=true

type AlibabaCloudMachineProviderConfig struct {
    metav1.TypeMeta `json:",inline"`

    // metadata is the standard object's metadata.
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    metav1.ObjectMeta `json:"metadata,omitempty"`

    //The instance type of the instance.
    InstanceType string `json:"instanceType"`

    // The ID of the vpc
    VpcID string `json:"vpcId"`

    // The ID of the region in which to create the instance. You can call the DescribeRegions operation to query the most recent region list.
    RegionID string `json:"regionId"`

    // The ID of the zone in which to create the instance. You can call the DescribeZones operation to query the most recent region list.
    ZoneID string `json:"zoneId"`

    // The ID of the image used to create the instance.
    ImageID string `json:"imageId"`

    // DataDisks holds information regarding the extra disks attached to the instance
    // +optional
    DataDisks []DataDiskProperties `json:"dataDisk,omitempty"`

    // SecurityGroups is a list of security group references to assign to the instance.
    // A reference holds either the security group ID, the resource name, or the required tags to search.
    // When more than one security group is returned for a tag search, all the groups are associated with the instance up to the
    // maximum number of security groups to which an instance can belong.
    // For more information, see the "Security group limits" section in Limits.
    // https://www.alibabacloud.com/help/en/doc-detail/25412.htm
    SecurityGroups []AlibabaResourceReference `json:"securityGroups,omitempty"`

    // Bandwidth describes the internet bandwidth strategy for the instance
    // +optional
    Bandwidth BandwidthProperties `json:"bandwidth,omitempty"`

    // SystemDisk holds the properties regarding the system disk for the instance
    // +optional
    SystemDisk SystemDiskProperties `json:"systemDisk,omitempty"`

    // VSwitch is a reference to the vswitch to use for this instance.
    // A reference holds either the vSwitch ID, the resource name, or the required tags to search.
    // When more than one vSwitch is returned for a tag search, only the first vSwitch returned will be used.
    // This parameter is required when you create an instance of the VPC type.
    // You can call the DescribeVSwitches operation to query the created vSwitches.
    VSwitch AlibabaResourceReference `json:"vSwitch"`

    // RAMRoleName is the name of the instance Resource Access Management (RAM) role. This allows the instance to perform API calls as this specified RAM role.
    // +optional
    RAMRoleName string `json:"ramRoleName,omitempty"`

    // ResourceGroup references the resource group to which to assign the instance.
    // A reference holds either the resource group ID, the resource name, or the required tags to search.
    // When more than one resource group are returned for a search, an error will be produced and the Machine will not be created.
    // Resource Groups do not support searching by tags.
    ResourceGroup AlibabaResourceReference `json:"resourceGroup"`

    // Tenancy specifies whether to create the instance on a dedicated host.
    // Valid values:
    //
    // default: creates the instance on a non-dedicated host.
    // host: creates the instance on a dedicated host. If you do not specify the DedicatedHostID parameter, Alibaba Cloud automatically selects a dedicated host for the instance.
    // Empty value means no opinion and the platform chooses the a default, which is subject to change over time.
    // Currently the default is `default`.
    // +optional
    Tenancy InstanceTenancy `json:"tenancy,omitempty"`

    // UserDataSecret contains a local reference to a secret that contains the
    // UserData to apply to the instance
    // +optional
    UserDataSecret *corev1.LocalObjectReference `json:"userDataSecret,omitempty"`

    // CredentialsSecret is a reference to the secret with alibabacloud credentials. Otherwise, defaults to permissions
    // provided by attached RAM role where the actuator is running.
    // +optional
    CredentialsSecret *corev1.LocalObjectReference `json:"credentialsSecret,omitempty"`

    // Tags are the set of metadata to add to an instance.
    // +optional
    Tags []Tag `json:"tag,omitempty"`
}

func (*AlibabaCloudMachineProviderConfig) DeepCopy

func (in *AlibabaCloudMachineProviderConfig) DeepCopy() *AlibabaCloudMachineProviderConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlibabaCloudMachineProviderConfig.

func (*AlibabaCloudMachineProviderConfig) DeepCopyInto

func (in *AlibabaCloudMachineProviderConfig) DeepCopyInto(out *AlibabaCloudMachineProviderConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AlibabaCloudMachineProviderConfig) DeepCopyObject

func (in *AlibabaCloudMachineProviderConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (AlibabaCloudMachineProviderConfig) SwaggerDoc

func (AlibabaCloudMachineProviderConfig) SwaggerDoc() map[string]string

type AlibabaCloudMachineProviderConfigList

AlibabaCloudMachineProviderConfigList contains a list of AlibabaCloudMachineProviderConfig Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1

type AlibabaCloudMachineProviderConfigList struct {
    metav1.TypeMeta `json:",inline"`

    // metadata is the standard list's metadata.
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    metav1.ListMeta `json:"metadata,omitempty"`

    Items []AlibabaCloudMachineProviderConfig `json:"items"`
}

func (*AlibabaCloudMachineProviderConfigList) DeepCopy

func (in *AlibabaCloudMachineProviderConfigList) DeepCopy() *AlibabaCloudMachineProviderConfigList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlibabaCloudMachineProviderConfigList.

func (*AlibabaCloudMachineProviderConfigList) DeepCopyInto

func (in *AlibabaCloudMachineProviderConfigList) DeepCopyInto(out *AlibabaCloudMachineProviderConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AlibabaCloudMachineProviderConfigList) DeepCopyObject

func (in *AlibabaCloudMachineProviderConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (AlibabaCloudMachineProviderConfigList) SwaggerDoc

func (AlibabaCloudMachineProviderConfigList) SwaggerDoc() map[string]string

type AlibabaCloudMachineProviderStatus

AlibabaCloudMachineProviderStatus is the Schema for the alibabacloudmachineproviderconfig API Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1 +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

type AlibabaCloudMachineProviderStatus struct {
    metav1.TypeMeta `json:",inline"`

    // metadata is the standard object's metadata.
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    metav1.ObjectMeta `json:"metadata,omitempty"`

    // InstanceID is the instance ID of the machine created in alibabacloud
    // +optional
    InstanceID *string `json:"instanceId,omitempty"`

    // InstanceState is the state of the alibabacloud instance for this machine
    // +optional
    InstanceState *string `json:"instanceState,omitempty"`

    // Conditions is a set of conditions associated with the Machine to indicate
    // errors or other status
    // +optional
    Conditions []metav1.Condition `json:"conditions,omitempty"`
}

func (*AlibabaCloudMachineProviderStatus) DeepCopy

func (in *AlibabaCloudMachineProviderStatus) DeepCopy() *AlibabaCloudMachineProviderStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlibabaCloudMachineProviderStatus.

func (*AlibabaCloudMachineProviderStatus) DeepCopyInto

func (in *AlibabaCloudMachineProviderStatus) DeepCopyInto(out *AlibabaCloudMachineProviderStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AlibabaCloudMachineProviderStatus) DeepCopyObject

func (in *AlibabaCloudMachineProviderStatus) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (AlibabaCloudMachineProviderStatus) SwaggerDoc

func (AlibabaCloudMachineProviderStatus) SwaggerDoc() map[string]string

type AlibabaDiskCategory

AlibabaDiskCatagory enum attribute to deescribe a disk's category

type AlibabaDiskCategory string

type AlibabaDiskEncryptionMode

AlibabaDiskEncryptionMode enum attribute to describe whether to enable or disable disk encryption

type AlibabaDiskEncryptionMode string

type AlibabaDiskPerformanceLevel

AlibabaDiskPerformanceLevel enum attribute to describe a disk's performance level

type AlibabaDiskPerformanceLevel string

type AlibabaDiskPreservationPolicy

AlibabaDiskPreservationPolicy enum attribute to describe whether to preserve or delete a disk upon instance removal

type AlibabaDiskPreservationPolicy string

type AlibabaResourceReference

ResourceTagReference is a reference to a specific AlibabaCloud resource by ID, or tags. Only one of ID or Tags may be specified. Specifying more than one will result in a validation error.

type AlibabaResourceReference struct {
    // type identifies the resource reference type for this entry.
    Type AlibabaResourceReferenceType `json:"type"`

    // ID of resource
    // +optional
    ID *string `json:"id,omitempty"`

    // Name of the resource
    // +optional
    Name *string `json:"name,omitempty"`

    // Tags is a set of metadata based upon ECS object tags used to identify a resource.
    // For details about usage when multiple resources are found, please see the owning parent field documentation.
    // +optional
    Tags *[]Tag `json:"tags,omitempty"`
}

func (*AlibabaResourceReference) DeepCopy

func (in *AlibabaResourceReference) DeepCopy() *AlibabaResourceReference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlibabaResourceReference.

func (*AlibabaResourceReference) DeepCopyInto

func (in *AlibabaResourceReference) DeepCopyInto(out *AlibabaResourceReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (AlibabaResourceReference) SwaggerDoc

func (AlibabaResourceReference) SwaggerDoc() map[string]string

type AlibabaResourceReferenceType

AlibabaResourceReferenceType enum attribute to identify the type of resource reference

type AlibabaResourceReferenceType string

type AzureFailureDomain

AzureFailureDomain configures failure domain information for the Azure platform.

type AzureFailureDomain struct {
    // Availability Zone for the virtual machine.
    // If nil, the virtual machine should be deployed to no zone.
    // +kubebuilder:validation:Required
    Zone string `json:"zone"`
}

func (*AzureFailureDomain) DeepCopy

func (in *AzureFailureDomain) DeepCopy() *AzureFailureDomain

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureFailureDomain.

func (*AzureFailureDomain) DeepCopyInto

func (in *AzureFailureDomain) DeepCopyInto(out *AzureFailureDomain)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (AzureFailureDomain) SwaggerDoc

func (AzureFailureDomain) SwaggerDoc() map[string]string

type BandwidthProperties

Bandwidth describes the bandwidth strategy for the network of the instance

type BandwidthProperties struct {
    // InternetMaxBandwidthIn is the maximum inbound public bandwidth. Unit: Mbit/s. Valid values:
    // When the purchased outbound public bandwidth is less than or equal to 10 Mbit/s, the valid values of this parameter are 1 to 10.
    // Currently the default is `10` when outbound bandwidth is less than or equal to 10 Mbit/s.
    // When the purchased outbound public bandwidth is greater than 10, the valid values are 1 to the InternetMaxBandwidthOut value.
    // Currently the default is the value used for `InternetMaxBandwidthOut` when outbound public bandwidth is greater than 10.
    // +optional
    InternetMaxBandwidthIn int64 `json:"internetMaxBandwidthIn,omitempty"`

    // InternetMaxBandwidthOut is the maximum outbound public bandwidth. Unit: Mbit/s. Valid values: 0 to 100.
    // When a value greater than 0 is used then a public IP address is assigned to the instance.
    // Empty value means no opinion and the platform chooses the a default, which is subject to change over time.
    // Currently the default is `0`
    // +optional
    InternetMaxBandwidthOut int64 `json:"internetMaxBandwidthOut,omitempty"`
}

func (*BandwidthProperties) DeepCopy

func (in *BandwidthProperties) DeepCopy() *BandwidthProperties

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BandwidthProperties.

func (*BandwidthProperties) DeepCopyInto

func (in *BandwidthProperties) DeepCopyInto(out *BandwidthProperties)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (BandwidthProperties) SwaggerDoc

func (BandwidthProperties) SwaggerDoc() map[string]string

type ControlPlaneMachineSet

ControlPlaneMachineSet ensures that a specified number of control plane machine replicas are running at any given time. +k8s:openapi-gen=true +kubebuilder:resource:scope=Namespaced +kubebuilder:subresource:status +kubebuilder:subresource:scale:specpath=.spec.replicas,statuspath=.status.replicas +kubebuilder:printcolumn:name="Desired",type="integer",JSONPath=".spec.replicas",description="Desired Replicas" +kubebuilder:printcolumn:name="Current",type="integer",JSONPath=".status.replicas",description="Current Replicas" +kubebuilder:printcolumn:name="Ready",type="integer",JSONPath=".status.readyReplicas",description="Ready Replicas" +kubebuilder:printcolumn:name="Updated",type="integer",JSONPath=".status.updatedReplicas",description="Updated Replicas" +kubebuilder:printcolumn:name="Unavailable",type="integer",JSONPath=".status.unavailableReplicas",description="Observed number of unavailable replicas" +kubebuilder:printcolumn:name="State",type="string",JSONPath=".spec.state",description="ControlPlaneMachineSet state" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="ControlPlaneMachineSet age" Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1

type ControlPlaneMachineSet struct {
    metav1.TypeMeta `json:",inline"`

    // metadata is the standard object's metadata.
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    metav1.ObjectMeta `json:"metadata,omitempty"`

    Spec   ControlPlaneMachineSetSpec   `json:"spec,omitempty"`
    Status ControlPlaneMachineSetStatus `json:"status,omitempty"`
}

func (*ControlPlaneMachineSet) DeepCopy

func (in *ControlPlaneMachineSet) DeepCopy() *ControlPlaneMachineSet

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneMachineSet.

func (*ControlPlaneMachineSet) DeepCopyInto

func (in *ControlPlaneMachineSet) DeepCopyInto(out *ControlPlaneMachineSet)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ControlPlaneMachineSet) DeepCopyObject

func (in *ControlPlaneMachineSet) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (ControlPlaneMachineSet) SwaggerDoc

func (ControlPlaneMachineSet) SwaggerDoc() map[string]string

type ControlPlaneMachineSetList

ControlPlaneMachineSetList contains a list of ControlPlaneMachineSet Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1

type ControlPlaneMachineSetList struct {
    metav1.TypeMeta `json:",inline"`

    // metadata is the standard list's metadata.
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    metav1.ListMeta `json:"metadata,omitempty"`

    Items []ControlPlaneMachineSet `json:"items"`
}

func (*ControlPlaneMachineSetList) DeepCopy

func (in *ControlPlaneMachineSetList) DeepCopy() *ControlPlaneMachineSetList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneMachineSetList.

func (*ControlPlaneMachineSetList) DeepCopyInto

func (in *ControlPlaneMachineSetList) DeepCopyInto(out *ControlPlaneMachineSetList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ControlPlaneMachineSetList) DeepCopyObject

func (in *ControlPlaneMachineSetList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (ControlPlaneMachineSetList) SwaggerDoc

func (ControlPlaneMachineSetList) SwaggerDoc() map[string]string

type ControlPlaneMachineSetMachineType

ControlPlaneMachineSetMachineType is a enumeration of valid Machine types supported by the ControlPlaneMachineSet. +kubebuilder:validation:Enum:=machines_v1beta1_machine_openshift_io

type ControlPlaneMachineSetMachineType string
const (
    // OpenShiftMachineV1Beta1MachineType is the OpenShift Machine API v1beta1 Machine type.
    OpenShiftMachineV1Beta1MachineType ControlPlaneMachineSetMachineType = "machines_v1beta1_machine_openshift_io"
)

type ControlPlaneMachineSetSpec

ControlPlaneMachineSet represents the configuration of the ControlPlaneMachineSet.

type ControlPlaneMachineSetSpec struct {
    // State defines whether the ControlPlaneMachineSet is Active or Inactive.
    // When Inactive, the ControlPlaneMachineSet will not take any action on the
    // state of the Machines within the cluster.
    // When Active, the ControlPlaneMachineSet will reconcile the Machines and
    // will update the Machines as necessary.
    // Once Active, a ControlPlaneMachineSet cannot be made Inactive. To prevent
    // further action please remove the ControlPlaneMachineSet.
    // +kubebuilder:default:="Inactive"
    // +default="Inactive"
    // +kubebuilder:validation:XValidation:rule="oldSelf != 'Active' || self == oldSelf",message="state cannot be changed once Active"
    // +optional
    State ControlPlaneMachineSetState `json:"state,omitempty"`

    // Replicas defines how many Control Plane Machines should be
    // created by this ControlPlaneMachineSet.
    // This field is immutable and cannot be changed after cluster
    // installation.
    // The ControlPlaneMachineSet only operates with 3 or 5 node control planes,
    // 3 and 5 are the only valid values for this field.
    // +kubebuilder:validation:Enum:=3;5
    // +kubebuilder:default:=3
    // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="replicas is immutable"
    // +kubebuilder:validation:Required
    Replicas *int32 `json:"replicas"`

    // Strategy defines how the ControlPlaneMachineSet will update
    // Machines when it detects a change to the ProviderSpec.
    // +kubebuilder:default:={type: RollingUpdate}
    // +optional
    Strategy ControlPlaneMachineSetStrategy `json:"strategy,omitempty"`

    // Label selector for Machines. Existing Machines selected by this
    // selector will be the ones affected by this ControlPlaneMachineSet.
    // It must match the template's labels.
    // This field is considered immutable after creation of the resource.
    // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="selector is immutable"
    // +kubebuilder:validation:Required
    Selector metav1.LabelSelector `json:"selector"`

    // Template describes the Control Plane Machines that will be created
    // by this ControlPlaneMachineSet.
    // +kubebuilder:validation:Required
    Template ControlPlaneMachineSetTemplate `json:"template"`
}

func (*ControlPlaneMachineSetSpec) DeepCopy

func (in *ControlPlaneMachineSetSpec) DeepCopy() *ControlPlaneMachineSetSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneMachineSetSpec.

func (*ControlPlaneMachineSetSpec) DeepCopyInto

func (in *ControlPlaneMachineSetSpec) DeepCopyInto(out *ControlPlaneMachineSetSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ControlPlaneMachineSetSpec) SwaggerDoc

func (ControlPlaneMachineSetSpec) SwaggerDoc() map[string]string

type ControlPlaneMachineSetState

ControlPlaneMachineSetState is an enumeration of the possible states of the ControlPlaneMachineSet resource. It allows it to be either Active or Inactive. +kubebuilder:validation:Enum:="Active";"Inactive"

type ControlPlaneMachineSetState string
const (
    // ControlPlaneMachineSetStateActive is the value used to denote the ControlPlaneMachineSet
    // should be active and should perform updates as required.
    ControlPlaneMachineSetStateActive ControlPlaneMachineSetState = "Active"

    // ControlPlaneMachineSetStateInactive is the value used to denote the ControlPlaneMachineSet
    // should be not active and should no perform any updates.
    ControlPlaneMachineSetStateInactive ControlPlaneMachineSetState = "Inactive"
)

type ControlPlaneMachineSetStatus

ControlPlaneMachineSetStatus represents the status of the ControlPlaneMachineSet CRD.

type ControlPlaneMachineSetStatus struct {
    // Conditions represents the observations of the ControlPlaneMachineSet's current state.
    // Known .status.conditions.type are: Available, Degraded and Progressing.
    // +patchMergeKey=type
    // +patchStrategy=merge
    // +listType=map
    // +listMapKey=type
    // +optional
    Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`

    // ObservedGeneration is the most recent generation observed for this
    // ControlPlaneMachineSet. It corresponds to the ControlPlaneMachineSets's generation,
    // which is updated on mutation by the API Server.
    // +optional
    ObservedGeneration int64 `json:"observedGeneration,omitempty"`

    // Replicas is the number of Control Plane Machines created by the
    // ControlPlaneMachineSet controller.
    // Note that during update operations this value may differ from the
    // desired replica count.
    // +optional
    Replicas int32 `json:"replicas,omitempty"`

    // ReadyReplicas is the number of Control Plane Machines created by the
    // ControlPlaneMachineSet controller which are ready.
    // Note that this value may be higher than the desired number of replicas
    // while rolling updates are in-progress.
    // +optional
    ReadyReplicas int32 `json:"readyReplicas,omitempty"`

    // UpdatedReplicas is the number of non-terminated Control Plane Machines
    // created by the ControlPlaneMachineSet controller that have the desired
    // provider spec and are ready.
    // This value is set to 0 when a change is detected to the desired spec.
    // When the update strategy is RollingUpdate, this will also coincide
    // with starting the process of updating the Machines.
    // When the update strategy is OnDelete, this value will remain at 0 until
    // a user deletes an existing replica and its replacement has become ready.
    // +optional
    UpdatedReplicas int32 `json:"updatedReplicas,omitempty"`

    // UnavailableReplicas is the number of Control Plane Machines that are
    // still required before the ControlPlaneMachineSet reaches the desired
    // available capacity. When this value is non-zero, the number of
    // ReadyReplicas is less than the desired Replicas.
    // +optional
    UnavailableReplicas int32 `json:"unavailableReplicas,omitempty"`
}

func (*ControlPlaneMachineSetStatus) DeepCopy

func (in *ControlPlaneMachineSetStatus) DeepCopy() *ControlPlaneMachineSetStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneMachineSetStatus.

func (*ControlPlaneMachineSetStatus) DeepCopyInto

func (in *ControlPlaneMachineSetStatus) DeepCopyInto(out *ControlPlaneMachineSetStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ControlPlaneMachineSetStatus) SwaggerDoc

func (ControlPlaneMachineSetStatus) SwaggerDoc() map[string]string

type ControlPlaneMachineSetStrategy

ControlPlaneMachineSetStrategy defines the strategy for applying updates to the Control Plane Machines managed by the ControlPlaneMachineSet.

type ControlPlaneMachineSetStrategy struct {
    // Type defines the type of update strategy that should be
    // used when updating Machines owned by the ControlPlaneMachineSet.
    // Valid values are "RollingUpdate" and "OnDelete".
    // The current default value is "RollingUpdate".
    // +kubebuilder:default:="RollingUpdate"
    // +default="RollingUpdate"
    // +kubebuilder:validation:Enum:="RollingUpdate";"OnDelete"
    // +optional
    Type ControlPlaneMachineSetStrategyType `json:"type,omitempty"`
}

func (*ControlPlaneMachineSetStrategy) DeepCopy

func (in *ControlPlaneMachineSetStrategy) DeepCopy() *ControlPlaneMachineSetStrategy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneMachineSetStrategy.

func (*ControlPlaneMachineSetStrategy) DeepCopyInto

func (in *ControlPlaneMachineSetStrategy) DeepCopyInto(out *ControlPlaneMachineSetStrategy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ControlPlaneMachineSetStrategy) SwaggerDoc

func (ControlPlaneMachineSetStrategy) SwaggerDoc() map[string]string

type ControlPlaneMachineSetStrategyType

ControlPlaneMachineSetStrategyType is an enumeration of different update strategies for the Control Plane Machines.

type ControlPlaneMachineSetStrategyType string
const (
    // RollingUpdate is the default update strategy type for a
    // ControlPlaneMachineSet. This will cause the ControlPlaneMachineSet to
    // first create a new Machine and wait for this to be Ready
    // before removing the Machine chosen for replacement.
    RollingUpdate ControlPlaneMachineSetStrategyType = "RollingUpdate"

    // Recreate causes the ControlPlaneMachineSet controller to first
    // remove a ControlPlaneMachine before creating its
    // replacement. This allows for scenarios with limited capacity
    // such as baremetal environments where additional capacity to
    // perform rolling updates is not available.
    Recreate ControlPlaneMachineSetStrategyType = "Recreate"

    // OnDelete causes the ControlPlaneMachineSet to only replace a
    // Machine once it has been marked for deletion. This strategy
    // makes the rollout of updated specifications into a manual
    // process. This allows users to test new configuration on
    // a single Machine without forcing the rollout of all of their
    // Control Plane Machines.
    OnDelete ControlPlaneMachineSetStrategyType = "OnDelete"
)

type ControlPlaneMachineSetTemplate

ControlPlaneMachineSetTemplate is a template used by the ControlPlaneMachineSet to create the Machines that it will manage in the future. +union + --- + This struct is a discriminated union which allows users to select the type of Machine + that the ControlPlaneMachineSet should create and manage. + For now, the only supported type is the OpenShift Machine API Machine, but in the future + we plan to expand this to allow other Machine types such as Cluster API Machines or a + future version of the Machine API Machine. +kubebuilder:validation:XValidation:rule="has(self.machineType) && self.machineType == 'machines_v1beta1_machine_openshift_io' ? has(self.machines_v1beta1_machine_openshift_io) : !has(self.machines_v1beta1_machine_openshift_io)",message="machines_v1beta1_machine_openshift_io configuration is required when machineType is machines_v1beta1_machine_openshift_io, and forbidden otherwise"

type ControlPlaneMachineSetTemplate struct {
    // MachineType determines the type of Machines that should be managed by the ControlPlaneMachineSet.
    // Currently, the only valid value is machines_v1beta1_machine_openshift_io.
    // +unionDiscriminator
    // +kubebuilder:validation:Required
    MachineType ControlPlaneMachineSetMachineType `json:"machineType,omitempty"`

    // OpenShiftMachineV1Beta1Machine defines the template for creating Machines
    // from the v1beta1.machine.openshift.io API group.
    // +optional
    OpenShiftMachineV1Beta1Machine *OpenShiftMachineV1Beta1MachineTemplate `json:"machines_v1beta1_machine_openshift_io,omitempty"`
}

func (*ControlPlaneMachineSetTemplate) DeepCopy

func (in *ControlPlaneMachineSetTemplate) DeepCopy() *ControlPlaneMachineSetTemplate

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneMachineSetTemplate.

func (*ControlPlaneMachineSetTemplate) DeepCopyInto

func (in *ControlPlaneMachineSetTemplate) DeepCopyInto(out *ControlPlaneMachineSetTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ControlPlaneMachineSetTemplate) SwaggerDoc

func (ControlPlaneMachineSetTemplate) SwaggerDoc() map[string]string

type ControlPlaneMachineSetTemplateObjectMeta

ControlPlaneMachineSetTemplateObjectMeta is a subset of the metav1.ObjectMeta struct. It allows users to specify labels and annotations that will be copied onto Machines created from this template.

type ControlPlaneMachineSetTemplateObjectMeta struct {
    // Map of string keys and values that can be used to organize and categorize
    // (scope and select) objects. May match selectors of replication controllers
    // and services.
    // More info: http://kubernetes.io/docs/user-guide/labels.
    // This field must contain both the 'machine.openshift.io/cluster-api-machine-role' and 'machine.openshift.io/cluster-api-machine-type' labels, both with a value of 'master'.
    // It must also contain a label with the key 'machine.openshift.io/cluster-api-cluster'.
    // +kubebuilder:validation:XValidation:rule="'machine.openshift.io/cluster-api-machine-role' in self && self['machine.openshift.io/cluster-api-machine-role'] == 'master'",message="label 'machine.openshift.io/cluster-api-machine-role' is required, and must have value 'master'"
    // +kubebuilder:validation:XValidation:rule="'machine.openshift.io/cluster-api-machine-type' in self && self['machine.openshift.io/cluster-api-machine-type'] == 'master'",message="label 'machine.openshift.io/cluster-api-machine-type' is required, and must have value 'master'"
    // +kubebuilder:validation:XValidation:rule="'machine.openshift.io/cluster-api-cluster' in self",message="label 'machine.openshift.io/cluster-api-cluster' is required"
    // +kubebuilder:validation:Required
    Labels map[string]string `json:"labels"`

    // Annotations is an unstructured key value map stored with a resource that may be
    // set by external tools to store and retrieve arbitrary metadata. They are not
    // queryable and should be preserved when modifying objects.
    // More info: http://kubernetes.io/docs/user-guide/annotations
    // +optional
    Annotations map[string]string `json:"annotations,omitempty"`
}

func (*ControlPlaneMachineSetTemplateObjectMeta) DeepCopy

func (in *ControlPlaneMachineSetTemplateObjectMeta) DeepCopy() *ControlPlaneMachineSetTemplateObjectMeta

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneMachineSetTemplateObjectMeta.

func (*ControlPlaneMachineSetTemplateObjectMeta) DeepCopyInto

func (in *ControlPlaneMachineSetTemplateObjectMeta) DeepCopyInto(out *ControlPlaneMachineSetTemplateObjectMeta)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ControlPlaneMachineSetTemplateObjectMeta) SwaggerDoc

func (ControlPlaneMachineSetTemplateObjectMeta) SwaggerDoc() map[string]string

type DataDiskProperties

DataDisk contains the information regarding the datadisk attached to an instance

type DataDiskProperties struct {
    // Name is the name of data disk N. If the name is specified the name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
    //
    // Empty value means the platform chooses a default, which is subject to change over time.
    // Currently the default is `""`.
    // +optional
    Name string `name:"diskName,omitempty"`

    // SnapshotID is the ID of the snapshot used to create data disk N. Valid values of N: 1 to 16.
    //
    // When the DataDisk.N.SnapshotID parameter is specified, the DataDisk.N.Size parameter is ignored. The data disk is created based on the size of the specified snapshot.
    // Use snapshots created after July 15, 2013. Otherwise, an error is returned and your request is rejected.
    //
    // +optional
    SnapshotID string `name:"snapshotId,omitempty"`

    // Size of the data disk N. Valid values of N: 1 to 16. Unit: GiB. Valid values:
    //
    // Valid values when DataDisk.N.Category is set to cloud_efficiency: 20 to 32768
    // Valid values when DataDisk.N.Category is set to cloud_ssd: 20 to 32768
    // Valid values when DataDisk.N.Category is set to cloud_essd: 20 to 32768
    // Valid values when DataDisk.N.Category is set to cloud: 5 to 2000
    // The value of this parameter must be greater than or equal to the size of the snapshot specified by the SnapshotID parameter.
    // +optional
    Size int64 `name:"size,omitempty"`

    // DiskEncryption specifies whether to encrypt data disk N.
    //
    // Empty value means the platform chooses a default, which is subject to change over time.
    // Currently the default is `disabled`.
    // +kubebuilder:validation:Enum="encrypted";"disabled"
    // +optional
    DiskEncryption AlibabaDiskEncryptionMode `name:"diskEncryption,omitempty"`

    // PerformanceLevel is the performance level of the ESSD used as as data disk N.  The N value must be the same as that in DataDisk.N.Category when DataDisk.N.Category is set to cloud_essd.
    // Empty value means no opinion and the platform chooses a default, which is subject to change over time.
    // Currently the default is `PL1`.
    // Valid values:
    //
    // PL0: A single ESSD can deliver up to 10,000 random read/write IOPS.
    // PL1: A single ESSD can deliver up to 50,000 random read/write IOPS.
    // PL2: A single ESSD can deliver up to 100,000 random read/write IOPS.
    // PL3: A single ESSD can deliver up to 1,000,000 random read/write IOPS.
    // For more information about ESSD performance levels, see ESSDs.
    // +kubebuilder:validation:Enum="PL0"; "PL1"; "PL2"; "PL3"
    // +optional
    PerformanceLevel AlibabaDiskPerformanceLevel `name:"performanceLevel,omitempty"`

    // Category describes the type of data disk N.
    // Valid values:
    // cloud_efficiency: ultra disk
    // cloud_ssd: standard SSD
    // cloud_essd: ESSD
    // cloud: basic disk
    // Empty value means no opinion and the platform chooses the a default, which is subject to change over time.
    // Currently for non-I/O optimized instances of retired instance types, the default is `cloud`.
    // Currently for other instances, the default is `cloud_efficiency`.
    // +kubebuilder:validation:Enum="cloud_efficiency"; "cloud_ssd"; "cloud_essd"; "cloud"
    // +optional
    Category AlibabaDiskCategory `name:"category,omitempty"`

    // KMSKeyID is the ID of the Key Management Service (KMS) key to be used by data disk N.
    // Empty value means no opinion and the platform chooses the a default, which is subject to change over time.
    // Currently the default is `""` which is interpreted as do not use KMSKey encryption.
    // +optional
    KMSKeyID string `name:"kmsKeyId,omitempty"`

    // DiskPreservation specifies whether to release data disk N along with the instance.
    // Empty value means no opinion and the platform chooses the a default, which is subject to change over time.
    // Currently the default is `DeleteWithInstance`
    // +kubebuilder:validation:Enum="DeleteWithInstance";"PreserveDisk"
    // +optional
    DiskPreservation AlibabaDiskPreservationPolicy `name:"diskPreservation,omitempty"`
}

func (*DataDiskProperties) DeepCopy

func (in *DataDiskProperties) DeepCopy() *DataDiskProperties

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDiskProperties.

func (*DataDiskProperties) DeepCopyInto

func (in *DataDiskProperties) DeepCopyInto(out *DataDiskProperties)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (DataDiskProperties) SwaggerDoc

func (DataDiskProperties) SwaggerDoc() map[string]string

type FailureDomains

FailureDomain represents the different configurations required to spread Machines across failure domains on different platforms. +union +kubebuilder:validation:XValidation:rule="has(self.platform) && self.platform == 'AWS' ? has(self.aws) : !has(self.aws)",message="aws configuration is required when platform is AWS, and forbidden otherwise" +kubebuilder:validation:XValidation:rule="has(self.platform) && self.platform == 'Azure' ? has(self.azure) : !has(self.azure)",message="azure configuration is required when platform is Azure, and forbidden otherwise" +kubebuilder:validation:XValidation:rule="has(self.platform) && self.platform == 'GCP' ? has(self.gcp) : !has(self.gcp)",message="gcp configuration is required when platform is GCP, and forbidden otherwise"

type FailureDomains struct {
    // Platform identifies the platform for which the FailureDomain represents.
    // Currently supported values are AWS, Azure, and GCP.
    // +unionDiscriminator
    // +kubebuilder:validation:Required
    Platform configv1.PlatformType `json:"platform"`

    // AWS configures failure domain information for the AWS platform.
    // +optional
    AWS *[]AWSFailureDomain `json:"aws,omitempty"`

    // Azure configures failure domain information for the Azure platform.
    // +optional
    Azure *[]AzureFailureDomain `json:"azure,omitempty"`

    // GCP configures failure domain information for the GCP platform.
    // +optional
    GCP *[]GCPFailureDomain `json:"gcp,omitempty"`
}

func (*FailureDomains) DeepCopy

func (in *FailureDomains) DeepCopy() *FailureDomains

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FailureDomains.

func (*FailureDomains) DeepCopyInto

func (in *FailureDomains) DeepCopyInto(out *FailureDomains)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (FailureDomains) SwaggerDoc

func (FailureDomains) SwaggerDoc() map[string]string

type GCPFailureDomain

GCPFailureDomain configures failure domain information for the GCP platform

type GCPFailureDomain struct {
    // Zone is the zone in which the GCP machine provider will create the VM.
    // +kubebuilder:validation:Required
    Zone string `json:"zone"`
}

func (*GCPFailureDomain) DeepCopy

func (in *GCPFailureDomain) DeepCopy() *GCPFailureDomain

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GCPFailureDomain.

func (*GCPFailureDomain) DeepCopyInto

func (in *GCPFailureDomain) DeepCopyInto(out *GCPFailureDomain)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (GCPFailureDomain) SwaggerDoc

func (GCPFailureDomain) SwaggerDoc() map[string]string

type IBMVPCLoadBalancerType

IBMVPCLoadBalancerType is the type of LoadBalancer to use when registering an instance with load balancers specified in LoadBalancerNames

type IBMVPCLoadBalancerType string

ApplicationLoadBalancerType is possible values for IBMVPCLoadBalancerType.

const (
    ApplicationLoadBalancerType IBMVPCLoadBalancerType = "Application" // Application Load Balancer for VPC (ALB)
)

type InstanceTenancy

InstanceTenancy indicates if instance should run on shared or single-tenant hardware.

type InstanceTenancy string
const (
    // DefaultTenancy instance runs on shared hardware
    DefaultTenancy InstanceTenancy = "default"
    // DedicatedTenancy instance runs on single-tenant hardware
    DedicatedTenancy InstanceTenancy = "dedicated"
    // HostTenancy instance runs on a Dedicated Host, which is an isolated server with configurations that you can control.
    HostTenancy InstanceTenancy = "host"
)

type LoadBalancerReference

LoadBalancerReference is a reference to a load balancer on IBM Cloud virtual private cloud(VPC).

type LoadBalancerReference struct {
    // name of the LoadBalancer in IBM Cloud VPC.
    // The name should be between 1 and 63 characters long and may consist of lowercase alphanumeric characters and hyphens only.
    // The value must not end with a hyphen.
    // It is a reference to existing LoadBalancer created by openshift installer component.
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Pattern=`^([a-z]|[a-z][-a-z0-9]*[a-z0-9]|[0-9][-a-z0-9]*([a-z]|[-a-z][-a-z0-9]*[a-z0-9]))$`
    // +kubebuilder:validation:MinLength=1
    // +kubebuilder:validation:MaxLength=63
    Name string `json:"name"`
    // type of the LoadBalancer service supported by IBM Cloud VPC.
    // Currently, only Application LoadBalancer is supported.
    // More details about Application LoadBalancer
    // https://cloud.ibm.com/docs/vpc?topic=vpc-load-balancers-about&interface=ui
    // Supported values are Application.
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Enum:="Application"
    Type IBMVPCLoadBalancerType `json:"type"`
}

func (*LoadBalancerReference) DeepCopy

func (in *LoadBalancerReference) DeepCopy() *LoadBalancerReference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerReference.

func (*LoadBalancerReference) DeepCopyInto

func (in *LoadBalancerReference) DeepCopyInto(out *LoadBalancerReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (LoadBalancerReference) SwaggerDoc

func (LoadBalancerReference) SwaggerDoc() map[string]string

type NutanixBootType

NutanixBootType is an enumeration of different boot types for Nutanix VM.

type NutanixBootType string
const (
    // NutanixLegacyBoot is the legacy BIOS boot type
    NutanixLegacyBoot NutanixBootType = "Legacy"

    // NutanixUEFIBoot is the UEFI boot type
    NutanixUEFIBoot NutanixBootType = "UEFI"

    // NutanixSecureBoot is the Secure boot type
    NutanixSecureBoot NutanixBootType = "SecureBoot"
)

type NutanixCategory

NutanixCategory identifies a pair of prism category key and value

type NutanixCategory struct {
    // key is the prism category key name
    // +kubebuilder:validation:MinLength=1
    // +kubebuilder:validation:MaxLength=64
    // +kubebuilder:validation:Required
    Key string `json:"key"`

    // value is the prism category value associated with the key
    // +kubebuilder:validation:MinLength=1
    // +kubebuilder:validation:MaxLength=64
    // +kubebuilder:validation:Required
    Value string `json:"value"`
}

func (*NutanixCategory) DeepCopy

func (in *NutanixCategory) DeepCopy() *NutanixCategory

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixCategory.

func (*NutanixCategory) DeepCopyInto

func (in *NutanixCategory) DeepCopyInto(out *NutanixCategory)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (NutanixCategory) SwaggerDoc

func (NutanixCategory) SwaggerDoc() map[string]string

type NutanixIdentifierType

NutanixIdentifierType is an enumeration of different resource identifier types.

type NutanixIdentifierType string
const (
    // NutanixIdentifierUUID is a resource identifier identifying the object by UUID.
    NutanixIdentifierUUID NutanixIdentifierType = "uuid"

    // NutanixIdentifierName is a resource identifier identifying the object by Name.
    NutanixIdentifierName NutanixIdentifierType = "name"
)

type NutanixMachineProviderConfig

NutanixMachineProviderConfig is the Schema for the nutanixmachineproviderconfigs API Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1 +k8s:openapi-gen=true

type NutanixMachineProviderConfig struct {
    metav1.TypeMeta `json:",inline"`

    // metadata is the standard object's metadata.
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    metav1.ObjectMeta `json:"metadata,omitempty"`

    // cluster is to identify the cluster (the Prism Element under management
    // of the Prism Central), in which the Machine's VM will be created.
    // The cluster identifier (uuid or name) can be obtained from the Prism Central console
    // or using the prism_central API.
    // +kubebuilder:validation:Required
    Cluster NutanixResourceIdentifier `json:"cluster"`

    // image is to identify the rhcos image uploaded to the Prism Central (PC)
    // The image identifier (uuid or name) can be obtained from the Prism Central console
    // or using the prism_central API.
    // +kubebuilder:validation:Required
    Image NutanixResourceIdentifier `json:"image"`

    // subnets holds a list of identifiers (one or more) of the cluster's network subnets
    // for the Machine's VM to connect to. The subnet identifiers (uuid or name) can be
    // obtained from the Prism Central console or using the prism_central API.
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:MinItems=1
    Subnets []NutanixResourceIdentifier `json:"subnets"`

    // vcpusPerSocket is the number of vCPUs per socket of the VM
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Minimum=1
    VCPUsPerSocket int32 `json:"vcpusPerSocket"`

    // vcpuSockets is the number of vCPU sockets of the VM
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Minimum=1
    VCPUSockets int32 `json:"vcpuSockets"`

    // memorySize is the memory size (in Quantity format) of the VM
    // The minimum memorySize is 2Gi bytes
    // +kubebuilder:validation:Required
    MemorySize resource.Quantity `json:"memorySize"`

    // systemDiskSize is size (in Quantity format) of the system disk of the VM
    // The minimum systemDiskSize is 20Gi bytes
    // +kubebuilder:validation:Required
    SystemDiskSize resource.Quantity `json:"systemDiskSize"`

    // bootType indicates the boot type (Legacy, UEFI or SecureBoot) the Machine's VM uses to boot.
    // If this field is empty or omitted, the VM will use the default boot type "Legacy" to boot.
    // "SecureBoot" depends on "UEFI" boot, i.e., enabling "SecureBoot" means that "UEFI" boot is also enabled.
    // +kubebuilder:validation:Enum="";Legacy;UEFI;SecureBoot
    // +optional
    BootType NutanixBootType `json:"bootType"`

    // project optionally identifies a Prism project for the Machine's VM to associate with.
    // +optional
    Project NutanixResourceIdentifier `json:"project"`

    // categories optionally adds one or more prism categories (each with key and value) for
    // the Machine's VM to associate with. All the category key and value pairs specified must
    // already exist in the prism central.
    // +listType=map
    // +listMapKey=key
    // +optional
    Categories []NutanixCategory `json:"categories"`

    // userDataSecret is a local reference to a secret that contains the
    // UserData to apply to the VM
    UserDataSecret *corev1.LocalObjectReference `json:"userDataSecret,omitempty"`

    // credentialsSecret is a local reference to a secret that contains the
    // credentials data to access Nutanix PC client
    // +kubebuilder:validation:Required
    CredentialsSecret *corev1.LocalObjectReference `json:"credentialsSecret"`
}

func (*NutanixMachineProviderConfig) DeepCopy

func (in *NutanixMachineProviderConfig) DeepCopy() *NutanixMachineProviderConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixMachineProviderConfig.

func (*NutanixMachineProviderConfig) DeepCopyInto

func (in *NutanixMachineProviderConfig) DeepCopyInto(out *NutanixMachineProviderConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NutanixMachineProviderConfig) DeepCopyObject

func (in *NutanixMachineProviderConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (NutanixMachineProviderConfig) SwaggerDoc

func (NutanixMachineProviderConfig) SwaggerDoc() map[string]string

type NutanixMachineProviderStatus

NutanixMachineProviderStatus is the type that will be embedded in a Machine.Status.ProviderStatus field. It contains nutanix-specific status information. Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1 +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

type NutanixMachineProviderStatus struct {
    metav1.TypeMeta `json:",inline"`

    // conditions is a set of conditions associated with the Machine to indicate
    // errors or other status
    // +optional
    Conditions []metav1.Condition `json:"conditions,omitempty"`

    // vmUUID is the Machine associated VM's UUID
    // The field is missing before the VM is created.
    // Once the VM is created, the field is filled with the VM's UUID and it will not change.
    // The vmUUID is used to find the VM when updating the Machine status,
    // and to delete the VM when the Machine is deleted.
    // +optional
    VmUUID *string `json:"vmUUID,omitempty"`
}

func (*NutanixMachineProviderStatus) DeepCopy

func (in *NutanixMachineProviderStatus) DeepCopy() *NutanixMachineProviderStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixMachineProviderStatus.

func (*NutanixMachineProviderStatus) DeepCopyInto

func (in *NutanixMachineProviderStatus) DeepCopyInto(out *NutanixMachineProviderStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NutanixMachineProviderStatus) DeepCopyObject

func (in *NutanixMachineProviderStatus) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (NutanixMachineProviderStatus) SwaggerDoc

func (NutanixMachineProviderStatus) SwaggerDoc() map[string]string

type NutanixResourceIdentifier

NutanixResourceIdentifier holds the identity of a Nutanix PC resource (cluster, image, subnet, etc.) +union

type NutanixResourceIdentifier struct {
    // Type is the identifier type to use for this resource.
    // +unionDiscriminator
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Enum:=uuid;name
    Type NutanixIdentifierType `json:"type"`

    // uuid is the UUID of the resource in the PC.
    // +optional
    UUID *string `json:"uuid,omitempty"`

    // name is the resource name in the PC
    // +optional
    Name *string `json:"name,omitempty"`
}

func (*NutanixResourceIdentifier) DeepCopy

func (in *NutanixResourceIdentifier) DeepCopy() *NutanixResourceIdentifier

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixResourceIdentifier.

func (*NutanixResourceIdentifier) DeepCopyInto

func (in *NutanixResourceIdentifier) DeepCopyInto(out *NutanixResourceIdentifier)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (NutanixResourceIdentifier) SwaggerDoc

func (NutanixResourceIdentifier) SwaggerDoc() map[string]string

type OpenShiftMachineV1Beta1MachineTemplate

OpenShiftMachineV1Beta1MachineTemplate is a template for the ControlPlaneMachineSet to create Machines from the v1beta1.machine.openshift.io API group.

type OpenShiftMachineV1Beta1MachineTemplate struct {
    // FailureDomains is the list of failure domains (sometimes called
    // availability zones) in which the ControlPlaneMachineSet should balance
    // the Control Plane Machines.
    // This will be merged into the ProviderSpec given in the template.
    // This field is optional on platforms that do not require placement information.
    // +optional
    FailureDomains FailureDomains `json:"failureDomains,omitempty"`

    // ObjectMeta is the standard object metadata
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    // Labels are required to match the ControlPlaneMachineSet selector.
    // +kubebuilder:validation:Required
    ObjectMeta ControlPlaneMachineSetTemplateObjectMeta `json:"metadata"`

    // Spec contains the desired configuration of the Control Plane Machines.
    // The ProviderSpec within contains platform specific details
    // for creating the Control Plane Machines.
    // The ProviderSe should be complete apart from the platform specific
    // failure domain field. This will be overriden when the Machines
    // are created based on the FailureDomains field.
    // +kubebuilder:validation:Required
    Spec machinev1beta1.MachineSpec `json:"spec"`
}

func (*OpenShiftMachineV1Beta1MachineTemplate) DeepCopy

func (in *OpenShiftMachineV1Beta1MachineTemplate) DeepCopy() *OpenShiftMachineV1Beta1MachineTemplate

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftMachineV1Beta1MachineTemplate.

func (*OpenShiftMachineV1Beta1MachineTemplate) DeepCopyInto

func (in *OpenShiftMachineV1Beta1MachineTemplate) DeepCopyInto(out *OpenShiftMachineV1Beta1MachineTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (OpenShiftMachineV1Beta1MachineTemplate) SwaggerDoc

func (OpenShiftMachineV1Beta1MachineTemplate) SwaggerDoc() map[string]string

type PowerVSMachineProviderConfig

PowerVSMachineProviderConfig is the type that will be embedded in a Machine.Spec.ProviderSpec field for a PowerVS virtual machine. It is used by the PowerVS machine actuator to create a single Machine.

Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1 +k8s:openapi-gen=true

type PowerVSMachineProviderConfig struct {
    metav1.TypeMeta `json:",inline"`
    // +optional
    metav1.ObjectMeta `json:"metadata,omitempty"`

    // userDataSecret contains a local reference to a secret that contains the
    // UserData to apply to the instance.
    // +optional
    UserDataSecret *PowerVSSecretReference `json:"userDataSecret,omitempty"`

    // credentialsSecret is a reference to the secret with IBM Cloud credentials.
    // +optional
    CredentialsSecret *PowerVSSecretReference `json:"credentialsSecret,omitempty"`

    // serviceInstance is the reference to the Power VS service on which the server instance(VM) will be created.
    // Power VS service is a container for all Power VS instances at a specific geographic region.
    // serviceInstance can be created via IBM Cloud catalog or CLI.
    // supported serviceInstance identifier in PowerVSResource are Name and ID and that can be obtained from IBM Cloud UI or IBM Cloud cli.
    // More detail about Power VS service instance.
    // https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-creating-power-virtual-server
    // +kubebuilder:validation:=Required
    ServiceInstance PowerVSResource `json:"serviceInstance"`

    // image is to identify the rhcos image uploaded to IBM COS bucket which is used to create the instance.
    // supported image identifier in PowerVSResource are Name and ID and that can be obtained from IBM Cloud UI or IBM Cloud cli.
    // +kubebuilder:validation:=Required
    Image PowerVSResource `json:"image"`

    // network is the reference to the Network to use for this instance.
    // supported network identifier in PowerVSResource are Name, ID and RegEx and that can be obtained from IBM Cloud UI or IBM Cloud cli.
    // +kubebuilder:validation:=Required
    Network PowerVSResource `json:"network"`

    // keyPairName is the name of the KeyPair to use for SSH.
    // The key pair will be exposed to the instance via the instance metadata service.
    // On boot, the OS will copy the public keypair into the authorized keys for the core user.
    // +kubebuilder:validation:=Required
    KeyPairName string `json:"keyPairName"`

    // systemType is the System type used to host the instance.
    // systemType determines the number of cores and memory that is available.
    // Few of the supported SystemTypes are s922,e880,e980.
    // e880 systemType available only in Dallas Datacenters.
    // e980 systemType available in Datacenters except Dallas and Washington.
    // When omitted, this means that the user has no opinion and the platform is left to choose a
    // reasonable default, which is subject to change over time. The current default is s922 which is generally available.
    // + This is not an enum because we expect other values to be added later which should be supported implicitly.
    // +optional
    SystemType string `json:"systemType,omitempty"`

    // processorType is the VM instance processor type.
    // It must be set to one of the following values: Dedicated, Capped or Shared.
    // Dedicated: resources are allocated for a specific client, The hypervisor makes a 1:1 binding of a partition’s processor to a physical processor core.
    // Shared: Shared among other clients.
    // Capped: Shared, but resources do not expand beyond those that are requested, the amount of CPU time is Capped to the value specified for the entitlement.
    // if the processorType is selected as Dedicated, then processors value cannot be fractional.
    // When omitted, this means that the user has no opinion and the platform is left to choose a
    // reasonable default, which is subject to change over time. The current default is Shared.
    // +kubebuilder:validation:Enum:="Dedicated";"Shared";"Capped";""
    // +optional
    ProcessorType PowerVSProcessorType `json:"processorType,omitempty"`

    // processors is the number of virtual processors in a virtual machine.
    // when the processorType is selected as Dedicated the processors value cannot be fractional.
    // maximum value for the Processors depends on the selected SystemType.
    // when SystemType is set to e880 or e980 maximum Processors value is 143.
    // when SystemType is set to s922 maximum Processors value is 15.
    // minimum value for Processors depends on the selected ProcessorType.
    // when ProcessorType is set as Shared or Capped, The minimum processors is 0.5.
    // when ProcessorType is set as Dedicated, The minimum processors is 1.
    // When omitted, this means that the user has no opinion and the platform is left to choose a
    // reasonable default, which is subject to change over time. The default is set based on the selected ProcessorType.
    // when ProcessorType selected as Dedicated, the default is set to 1.
    // when ProcessorType selected as Shared or Capped, the default is set to 0.5.
    // +optional
    Processors intstr.IntOrString `json:"processors,omitempty"`

    // memoryGiB is the size of a virtual machine's memory, in GiB.
    // maximum value for the MemoryGiB depends on the selected SystemType.
    // when SystemType is set to e880 maximum MemoryGiB value is 7463 GiB.
    // when SystemType is set to e980 maximum MemoryGiB value is 15307 GiB.
    // when SystemType is set to s922 maximum MemoryGiB value is 942 GiB.
    // The minimum memory is 32 GiB.
    // When omitted, this means the user has no opinion and the platform is left to choose a reasonable
    // default, which is subject to change over time. The current default is 32.
    // +optional
    MemoryGiB int32 `json:"memoryGiB,omitempty"`

    // loadBalancers is the set of load balancers to which the new control plane instance
    // should be added once it is created.
    // +optional
    LoadBalancers []LoadBalancerReference `json:"loadBalancers,omitempty"`
}

func (*PowerVSMachineProviderConfig) DeepCopy

func (in *PowerVSMachineProviderConfig) DeepCopy() *PowerVSMachineProviderConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PowerVSMachineProviderConfig.

func (*PowerVSMachineProviderConfig) DeepCopyInto

func (in *PowerVSMachineProviderConfig) DeepCopyInto(out *PowerVSMachineProviderConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PowerVSMachineProviderConfig) DeepCopyObject

func (in *PowerVSMachineProviderConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (PowerVSMachineProviderConfig) SwaggerDoc

func (PowerVSMachineProviderConfig) SwaggerDoc() map[string]string

type PowerVSMachineProviderStatus

PowerVSMachineProviderStatus is the type that will be embedded in a Machine.Status.ProviderStatus field. It contains PowerVS-specific status information.

Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1 +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

type PowerVSMachineProviderStatus struct {
    metav1.TypeMeta `json:",inline"`

    // conditions is a set of conditions associated with the Machine to indicate
    // errors or other status
    // +patchMergeKey=type
    // +patchStrategy=merge
    // +listType=map
    // +listMapKey=type
    // +optional
    Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`

    // instanceId is the instance ID of the machine created in PowerVS
    // instanceId uniquely identifies a Power VS server instance(VM) under a Power VS service.
    // This will help in updating or deleting a VM in Power VS Cloud
    // +optional
    InstanceID *string `json:"instanceId,omitempty"`

    // serviceInstanceID is the reference to the Power VS ServiceInstance on which the machine instance will be created.
    // serviceInstanceID uniquely identifies the Power VS service
    // By setting serviceInstanceID it will become easy and efficient to fetch a server instance(VM) within Power VS Cloud.
    // +optional
    ServiceInstanceID *string `json:"serviceInstanceID,omitempty"`

    // instanceState is the state of the PowerVS instance for this machine
    // Possible instance states are Active, Build, ShutOff, Reboot
    // This is used to display additional information to user regarding instance current state
    // +optional
    InstanceState *string `json:"instanceState,omitempty"`
}

func (*PowerVSMachineProviderStatus) DeepCopy

func (in *PowerVSMachineProviderStatus) DeepCopy() *PowerVSMachineProviderStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PowerVSMachineProviderStatus.

func (*PowerVSMachineProviderStatus) DeepCopyInto

func (in *PowerVSMachineProviderStatus) DeepCopyInto(out *PowerVSMachineProviderStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PowerVSMachineProviderStatus) DeepCopyObject

func (in *PowerVSMachineProviderStatus) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (PowerVSMachineProviderStatus) SwaggerDoc

func (PowerVSMachineProviderStatus) SwaggerDoc() map[string]string

type PowerVSProcessorType

PowerVSProcessorType enum attribute to identify the PowerVS instance processor type

type PowerVSProcessorType string

type PowerVSResource

PowerVSResource is a reference to a specific PowerVS resource by ID, Name or RegEx Only one of ID, Name or RegEx may be specified. Specifying more than one will result in a validation error. +union

type PowerVSResource struct {
    // Type identifies the resource type for this entry.
    // Valid values are ID, Name and RegEx
    // +kubebuilder:validation:Enum:=ID;Name;RegEx
    // +optional
    Type PowerVSResourceType `json:"type,omitempty"`
    // ID of resource
    // +optional
    ID *string `json:"id,omitempty"`
    // Name of resource
    // +optional
    Name *string `json:"name,omitempty"`
    // Regex to find resource
    // Regex contains the pattern to match to find a resource
    // +optional
    RegEx *string `json:"regex,omitempty"`
}

func (*PowerVSResource) DeepCopy

func (in *PowerVSResource) DeepCopy() *PowerVSResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PowerVSResource.

func (*PowerVSResource) DeepCopyInto

func (in *PowerVSResource) DeepCopyInto(out *PowerVSResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (PowerVSResource) SwaggerDoc

func (PowerVSResource) SwaggerDoc() map[string]string

type PowerVSResourceType

PowerVSResourceType enum attribute to identify the type of resource reference

type PowerVSResourceType string

type PowerVSSecretReference

PowerVSSecretReference contains enough information to locate the referenced secret inside the same namespace. +structType=atomic

type PowerVSSecretReference struct {
    // Name of the secret.
    // +optional
    Name string `json:"name,omitempty"`
}

func (*PowerVSSecretReference) DeepCopy

func (in *PowerVSSecretReference) DeepCopy() *PowerVSSecretReference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PowerVSSecretReference.

func (*PowerVSSecretReference) DeepCopyInto

func (in *PowerVSSecretReference) DeepCopyInto(out *PowerVSSecretReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (PowerVSSecretReference) SwaggerDoc

func (PowerVSSecretReference) SwaggerDoc() map[string]string

type SystemDiskProperties

SystemDiskProperties contains the information regarding the system disk including performance, size, name, and category

type SystemDiskProperties struct {
    // Category is the category of the system disk.
    // Valid values:
    // cloud_essd: ESSD. When the parameter is set to this value, you can use the SystemDisk.PerformanceLevel parameter to specify the performance level of the disk.
    // cloud_efficiency: ultra disk.
    // cloud_ssd: standard SSD.
    // cloud: basic disk.
    // Empty value means no opinion and the platform chooses the a default, which is subject to change over time.
    // Currently for non-I/O optimized instances of retired instance types, the default is `cloud`.
    // Currently for other instances, the default is `cloud_efficiency`.
    // +kubebuilder:validation:Enum="cloud_efficiency"; "cloud_ssd"; "cloud_essd"; "cloud"
    // +optional
    Category string `json:"category,omitempty"`

    // PerformanceLevel is the performance level of the ESSD used as the system disk.
    // Valid values:
    //
    // PL0: A single ESSD can deliver up to 10,000 random read/write IOPS.
    // PL1: A single ESSD can deliver up to 50,000 random read/write IOPS.
    // PL2: A single ESSD can deliver up to 100,000 random read/write IOPS.
    // PL3: A single ESSD can deliver up to 1,000,000 random read/write IOPS.
    // Empty value means no opinion and the platform chooses a default, which is subject to change over time.
    // Currently the default is `PL1`.
    // For more information about ESSD performance levels, see ESSDs.
    // +kubebuilder:validation:Enum="PL0"; "PL1"; "PL2"; "PL3"
    // +optional
    PerformanceLevel string `json:"performanceLevel,omitempty"`

    // Name is the name of the system disk. If the name is specified the name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).
    // Empty value means the platform chooses a default, which is subject to change over time.
    // Currently the default is `""`.
    // +kubebuilder:validation:MaxLength=128
    // +optional
    Name string `json:"name,omitempty"`

    // Size is the size of the system disk. Unit: GiB. Valid values: 20 to 500.
    // The value must be at least 20 and greater than or equal to the size of the image.
    // Empty value means the platform chooses a default, which is subject to change over time.
    // Currently the default is `40` or the size of the image depending on whichever is greater.
    // +optional
    Size int64 `json:"size,omitempty"`
}

func (*SystemDiskProperties) DeepCopy

func (in *SystemDiskProperties) DeepCopy() *SystemDiskProperties

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemDiskProperties.

func (*SystemDiskProperties) DeepCopyInto

func (in *SystemDiskProperties) DeepCopyInto(out *SystemDiskProperties)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (SystemDiskProperties) SwaggerDoc

func (SystemDiskProperties) SwaggerDoc() map[string]string

type Tag

Tag The tags of ECS Instance

type Tag struct {
    // Key is the name of the key pair
    Key string `name:"Key"`
    // Value is the value or data of the key pair
    Value string `name:"value"`
}

func (*Tag) DeepCopy

func (in *Tag) DeepCopy() *Tag

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tag.

func (*Tag) DeepCopyInto

func (in *Tag) DeepCopyInto(out *Tag)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (Tag) SwaggerDoc

func (Tag) SwaggerDoc() map[string]string