v1beta1

package
v0.4.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 26, 2023 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=mrs.flexibleengine.upbound.io +versionName=v1beta1

Index

Constants

View Source
const (
	CRDGroup   = "mrs.flexibleengine.upbound.io"
	CRDVersion = "v1beta1"
)

Package type metadata.

Variables

View Source
var (
	Cluster_Kind             = "Cluster"
	Cluster_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Cluster_Kind}.String()
	Cluster_KindAPIVersion   = Cluster_Kind + "." + CRDGroupVersion.String()
	Cluster_GroupVersionKind = CRDGroupVersion.WithKind(Cluster_Kind)
)

Repository type metadata.

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	Job_Kind             = "Job"
	Job_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Job_Kind}.String()
	Job_KindAPIVersion   = Job_Kind + "." + CRDGroupVersion.String()
	Job_GroupVersionKind = CRDGroupVersion.WithKind(Job_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type AnalysisCoreNodesObservation

type AnalysisCoreNodesObservation struct {

	// The host list of this nodes group in the cluster.
	HostIps []*string `json:"hostIps,omitempty" tf:"host_ips,omitempty"`
}

func (*AnalysisCoreNodesObservation) DeepCopy

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

func (*AnalysisCoreNodesObservation) DeepCopyInto

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

type AnalysisCoreNodesParameters

type AnalysisCoreNodesParameters struct {

	// Specifies the roles deployed in a node group. This argument is mandatory
	// when the cluster type is CUSTOM. Each character string represents a role expression.
	// +kubebuilder:validation:Optional
	AssignedRoles []*string `json:"assignedRoles,omitempty" tf:"assigned_roles,omitempty"`

	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// +kubebuilder:validation:Required
	DataVolumeCount *float64 `json:"dataVolumeCount" tf:"data_volume_count,omitempty"`

	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Optional
	DataVolumeSize *float64 `json:"dataVolumeSize,omitempty" tf:"data_volume_size,omitempty"`

	// Specifies the data disk flavor of the nodes.
	// Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// The following disk types are supported:
	// +kubebuilder:validation:Optional
	DataVolumeType *string `json:"dataVolumeType,omitempty" tf:"data_volume_type,omitempty"`

	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	Flavor *string `json:"flavor" tf:"flavor,omitempty"`

	// Specifies the number of nodes for the node group.
	// Only the core group and task group updations are allowed. The number of nodes after scaling cannot be
	// less than the number of nodes originally created.
	// +kubebuilder:validation:Required
	NodeNumber *float64 `json:"nodeNumber" tf:"node_number,omitempty"`

	// Specifies the system disk size of the nodes. Changing this will create
	// a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeSize *float64 `json:"rootVolumeSize" tf:"root_volume_size,omitempty"`

	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeType *string `json:"rootVolumeType" tf:"root_volume_type,omitempty"`
}

func (*AnalysisCoreNodesParameters) DeepCopy

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

func (*AnalysisCoreNodesParameters) DeepCopyInto

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

type AnalysisTaskNodesObservation

type AnalysisTaskNodesObservation struct {

	// The host list of this nodes group in the cluster.
	HostIps []*string `json:"hostIps,omitempty" tf:"host_ips,omitempty"`
}

func (*AnalysisTaskNodesObservation) DeepCopy

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

func (*AnalysisTaskNodesObservation) DeepCopyInto

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

type AnalysisTaskNodesParameters

type AnalysisTaskNodesParameters struct {

	// Specifies the roles deployed in a node group. This argument is mandatory
	// when the cluster type is CUSTOM. Each character string represents a role expression.
	// +kubebuilder:validation:Optional
	AssignedRoles []*string `json:"assignedRoles,omitempty" tf:"assigned_roles,omitempty"`

	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// +kubebuilder:validation:Required
	DataVolumeCount *float64 `json:"dataVolumeCount" tf:"data_volume_count,omitempty"`

	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Optional
	DataVolumeSize *float64 `json:"dataVolumeSize,omitempty" tf:"data_volume_size,omitempty"`

	// Specifies the data disk flavor of the nodes.
	// Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// The following disk types are supported:
	// +kubebuilder:validation:Optional
	DataVolumeType *string `json:"dataVolumeType,omitempty" tf:"data_volume_type,omitempty"`

	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	Flavor *string `json:"flavor" tf:"flavor,omitempty"`

	// Specifies the number of nodes for the node group.
	// Only the core group and task group updations are allowed. The number of nodes after scaling cannot be
	// less than the number of nodes originally created.
	// +kubebuilder:validation:Required
	NodeNumber *float64 `json:"nodeNumber" tf:"node_number,omitempty"`

	// Specifies the system disk size of the nodes. Changing this will create
	// a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeSize *float64 `json:"rootVolumeSize" tf:"root_volume_size,omitempty"`

	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeType *string `json:"rootVolumeType" tf:"root_volume_type,omitempty"`
}

func (*AnalysisTaskNodesParameters) DeepCopy

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

func (*AnalysisTaskNodesParameters) DeepCopyInto

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

type Cluster

type Cluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ClusterSpec   `json:"spec"`
	Status            ClusterStatus `json:"status,omitempty"`
}

Cluster is the Schema for the Clusters API. ""page_title: "flexibleengine_mrs_cluster_v2" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,flexibleengine}

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

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

func (*Cluster) DeepCopyInto

func (in *Cluster) DeepCopyInto(out *Cluster)

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

func (*Cluster) DeepCopyObject

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

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

func (*Cluster) GetCondition

func (mg *Cluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Cluster.

func (*Cluster) GetConnectionDetailsMapping

func (tr *Cluster) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Cluster

func (*Cluster) GetDeletionPolicy

func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Cluster.

func (*Cluster) GetID

func (tr *Cluster) GetID() string

GetID returns ID of underlying Terraform resource of this Cluster

func (*Cluster) GetObservation

func (tr *Cluster) GetObservation() (map[string]any, error)

GetObservation of this Cluster

func (*Cluster) GetParameters

func (tr *Cluster) GetParameters() (map[string]any, error)

GetParameters of this Cluster

func (*Cluster) GetProviderConfigReference

func (mg *Cluster) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Cluster.

func (*Cluster) GetProviderReference

func (mg *Cluster) GetProviderReference() *xpv1.Reference

GetProviderReference of this Cluster. Deprecated: Use GetProviderConfigReference.

func (*Cluster) GetPublishConnectionDetailsTo

func (mg *Cluster) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Cluster.

func (*Cluster) GetTerraformResourceType

func (mg *Cluster) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Cluster

func (*Cluster) GetTerraformSchemaVersion

func (tr *Cluster) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Cluster) GetWriteConnectionSecretToReference

func (mg *Cluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Cluster.

func (*Cluster) LateInitialize

func (tr *Cluster) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Cluster using its observed tfState. returns True if there are any spec changes for the resource.

func (*Cluster) ResolveReferences

func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Cluster.

func (*Cluster) SetConditions

func (mg *Cluster) SetConditions(c ...xpv1.Condition)

SetConditions of this Cluster.

func (*Cluster) SetDeletionPolicy

func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Cluster.

func (*Cluster) SetObservation

func (tr *Cluster) SetObservation(obs map[string]any) error

SetObservation for this Cluster

func (*Cluster) SetParameters

func (tr *Cluster) SetParameters(params map[string]any) error

SetParameters for this Cluster

func (*Cluster) SetProviderConfigReference

func (mg *Cluster) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Cluster.

func (*Cluster) SetProviderReference

func (mg *Cluster) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this Cluster. Deprecated: Use SetProviderConfigReference.

func (*Cluster) SetPublishConnectionDetailsTo

func (mg *Cluster) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Cluster.

func (*Cluster) SetWriteConnectionSecretToReference

func (mg *Cluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Cluster.

type ClusterList

type ClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Cluster `json:"items"`
}

ClusterList contains a list of Clusters

func (*ClusterList) DeepCopy

func (in *ClusterList) DeepCopy() *ClusterList

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

func (*ClusterList) DeepCopyInto

func (in *ClusterList) DeepCopyInto(out *ClusterList)

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

func (*ClusterList) DeepCopyObject

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

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

func (*ClusterList) GetItems

func (l *ClusterList) GetItems() []resource.Managed

GetItems of this ClusterList.

type ClusterObservation

type ClusterObservation struct {

	// Specifies a list of the informations about the analysis core nodes in the
	// MRS cluster.
	// The nodes object structure of the analysis_core_nodes is documented below.
	// +kubebuilder:validation:Optional
	AnalysisCoreNodes []AnalysisCoreNodesObservation `json:"analysisCoreNodes,omitempty" tf:"analysis_core_nodes,omitempty"`

	// Specifies a list of the informations about the analysis task nodes in the
	// MRS cluster.
	// The nodes object structure of the analysis_task_nodes is documented below.
	// +kubebuilder:validation:Optional
	AnalysisTaskNodes []AnalysisTaskNodesObservation `json:"analysisTaskNodes,omitempty" tf:"analysis_task_nodes,omitempty"`

	// The charging start time which is the start time of billing, in RFC-3339 format.
	ChargingStartTime *string `json:"chargingStartTime,omitempty" tf:"charging_start_time,omitempty"`

	Components []ComponentsObservation `json:"components,omitempty" tf:"components,omitempty"`

	// The cluster creation time, in RFC-3339 format.
	CreateTime *string `json:"createTime,omitempty" tf:"create_time,omitempty"`

	// Specifies a list of the informations about the custom nodes in the MRS cluster.
	// The nodes object structure of the custom_nodes is documented below.
	// Unlike other nodes, it needs to specify group_name.
	// +kubebuilder:validation:Optional
	CustomNodes []CustomNodesObservation `json:"customNodes,omitempty" tf:"custom_nodes,omitempty"`

	// The cluster ID in UUID format.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The IP address of the master node.
	MasterNodeIP *string `json:"masterNodeIp,omitempty" tf:"master_node_ip,omitempty"`

	// Specifies a list of the informations about the master nodes in the
	// MRS cluster.
	// The nodes object structure of the master_nodes is documented below.
	// Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	MasterNodes []MasterNodesObservation `json:"masterNodes,omitempty" tf:"master_nodes,omitempty"`

	// The preferred private IP address of the master node.
	PrivateIP *string `json:"privateIp,omitempty" tf:"private_ip,omitempty"`

	// The cluster state, which include: running, frozen, abnormal and failed.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// Specifies a list of the informations about the streaming core nodes in the
	// MRS cluster.
	// The nodes object structure of the streaming_core_nodes is documented below.
	// +kubebuilder:validation:Optional
	StreamingCoreNodes []StreamingCoreNodesObservation `json:"streamingCoreNodes,omitempty" tf:"streaming_core_nodes,omitempty"`

	// Specifies a list of the informations about the streaming task nodes in the
	// MRS cluster.
	// The nodes object structure of the streaming_task_nodes is documented below.
	// +kubebuilder:validation:Optional
	StreamingTaskNodes []StreamingTaskNodesObservation `json:"streamingTaskNodes,omitempty" tf:"streaming_task_nodes,omitempty"`

	// The total number of nodes deployed in the cluster.
	TotalNodeNumber *float64 `json:"totalNodeNumber,omitempty" tf:"total_node_number,omitempty"`

	// The cluster update time, in RFC-3339 format.
	UpdateTime *string `json:"updateTime,omitempty" tf:"update_time,omitempty"`
}

func (*ClusterObservation) DeepCopy

func (in *ClusterObservation) DeepCopy() *ClusterObservation

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

func (*ClusterObservation) DeepCopyInto

func (in *ClusterObservation) DeepCopyInto(out *ClusterObservation)

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

type ClusterParameters

type ClusterParameters struct {

	// Specifies a list of the informations about the analysis core nodes in the
	// MRS cluster.
	// The nodes object structure of the analysis_core_nodes is documented below.
	// +kubebuilder:validation:Optional
	AnalysisCoreNodes []AnalysisCoreNodesParameters `json:"analysisCoreNodes,omitempty" tf:"analysis_core_nodes,omitempty"`

	// Specifies a list of the informations about the analysis task nodes in the
	// MRS cluster.
	// The nodes object structure of the analysis_task_nodes is documented below.
	// +kubebuilder:validation:Optional
	AnalysisTaskNodes []AnalysisTaskNodesParameters `json:"analysisTaskNodes,omitempty" tf:"analysis_task_nodes,omitempty"`

	// Specifies the availability zone in which to create the cluster.
	// Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	AvailabilityZone *string `json:"availabilityZone" tf:"availability_zone,omitempty"`

	// Specifies the list of component names.
	// Changing this will create a new MRS cluster resource. The supported components are as follows:
	// +kubebuilder:validation:Required
	ComponentList []*string `json:"componentList" tf:"component_list,omitempty"`

	// Specifies a list of the informations about the custom nodes in the MRS cluster.
	// The nodes object structure of the custom_nodes is documented below.
	// Unlike other nodes, it needs to specify group_name.
	// +kubebuilder:validation:Optional
	CustomNodes []CustomNodesParameters `json:"customNodes,omitempty" tf:"custom_nodes,omitempty"`

	// Specifies the EIP ID which bound to the MRS cluster.
	// The EIP must have been created and must be in the same region as the cluster.
	// Changing this will create a new MRS cluster resource.
	// +crossplane:generate:reference:type=github.com/FlexibleEngineCloud/provider-flexibleengine/apis/eip/v1beta1.EIP
	// +kubebuilder:validation:Optional
	EIPID *string `json:"eipId,omitempty" tf:"eip_id,omitempty"`

	// Reference to a EIP in eip to populate eipId.
	// +kubebuilder:validation:Optional
	EIPIDRef *v1.Reference `json:"eipIdRef,omitempty" tf:"-"`

	// Selector for a EIP in eip to populate eipId.
	// +kubebuilder:validation:Optional
	EIPIDSelector *v1.Selector `json:"eipIdSelector,omitempty" tf:"-"`

	// Specifies whether logs are collected when cluster installation fails.
	// Default to true. If log_collection set true, the OBS buckets will be created and only used to collect logs that
	// record MRS cluster creation failures. Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Optional
	LogCollection *bool `json:"logCollection,omitempty" tf:"log_collection,omitempty"`

	// Specifies the administrator password, which is used to login to
	// the cluster management page. The password can contain 8 to 26 charactors and cannot be the username or the username
	// spelled backwards. The password must contain lowercase letters, uppercase letters, digits, spaces and the special
	// characters: !?,.:-_{}[]@$^+=/. Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	ManagerAdminPwdSecretRef v1.SecretKeySelector `json:"managerAdminPwdSecretRef" tf:"-"`

	// Specifies a list of the informations about the master nodes in the
	// MRS cluster.
	// The nodes object structure of the master_nodes is documented below.
	// Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	MasterNodes []MasterNodesParameters `json:"masterNodes" tf:"master_nodes,omitempty"`

	// Specifies the name of the MRS cluster. The name can contain 2 to 64
	// characters, which may consist of letters, digits, underscores (_) and hyphens (-). Changing this will create a new
	// MRS cluster resource.
	// +kubebuilder:validation:Required
	Name *string `json:"name" tf:"name,omitempty"`

	// Specifies the name of a key pair, which is used to login to the each
	// nodes(ECSs). Changing this will create a new MRS cluster resource.
	// +crossplane:generate:reference:type=github.com/FlexibleEngineCloud/provider-flexibleengine/apis/ecs/v1beta1.KeyPair
	// +kubebuilder:validation:Optional
	NodeKeyPair *string `json:"nodeKeyPair,omitempty" tf:"node_key_pair,omitempty"`

	// Reference to a KeyPair in ecs to populate nodeKeyPair.
	// +kubebuilder:validation:Optional
	NodeKeyPairRef *v1.Reference `json:"nodeKeyPairRef,omitempty" tf:"-"`

	// Selector for a KeyPair in ecs to populate nodeKeyPair.
	// +kubebuilder:validation:Optional
	NodeKeyPairSelector *v1.Selector `json:"nodeKeyPairSelector,omitempty" tf:"-"`

	// Specifies the EIP address which bound to the MRS cluster.
	// The EIP must have been created and must be in the same region as the cluster.
	// Changing this will create a new MRS cluster resource.
	// +crossplane:generate:reference:type=github.com/FlexibleEngineCloud/provider-flexibleengine/apis/eip/v1beta1.EIP
	// +crossplane:generate:reference:extractor=github.com/FlexibleEngineCloud/provider-flexibleengine/pkg/tools.ExtractorParamPathfunc(true, "address")
	// +kubebuilder:validation:Optional
	PublicIP *string `json:"publicIp,omitempty" tf:"public_ip,omitempty"`

	// Reference to a EIP in eip to populate publicIp.
	// +kubebuilder:validation:Optional
	PublicIPRef *v1.Reference `json:"publicIpRef,omitempty" tf:"-"`

	// Selector for a EIP in eip to populate publicIp.
	// +kubebuilder:validation:Optional
	PublicIPSelector *v1.Selector `json:"publicIpSelector,omitempty" tf:"-"`

	// The region in which to create the MRS cluster resource. If omitted, the
	// provider-level region will be used. Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Optional
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// Specifies whether the running mode of the MRS cluster is secure,
	// default to true.
	// +kubebuilder:validation:Optional
	SafeMode *bool `json:"safeMode,omitempty" tf:"safe_mode,omitempty"`

	// References to SecurityGroup in vpc to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDRefs []v1.Reference `json:"securityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in vpc to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDSelector *v1.Selector `json:"securityGroupIdSelector,omitempty" tf:"-"`

	// Specifies an array of one or more security group ID to attach to the
	// MRS cluster. If using the specified security group, the group need to open the specified port (9022) rules.
	// +crossplane:generate:reference:type=github.com/FlexibleEngineCloud/provider-flexibleengine/apis/vpc/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SecurityGroupIDSelector
	// +kubebuilder:validation:Optional
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// Specifies a list of the informations about the streaming core nodes in the
	// MRS cluster.
	// The nodes object structure of the streaming_core_nodes is documented below.
	// +kubebuilder:validation:Optional
	StreamingCoreNodes []StreamingCoreNodesParameters `json:"streamingCoreNodes,omitempty" tf:"streaming_core_nodes,omitempty"`

	// Specifies a list of the informations about the streaming task nodes in the
	// MRS cluster.
	// The nodes object structure of the streaming_task_nodes is documented below.
	// +kubebuilder:validation:Optional
	StreamingTaskNodes []StreamingTaskNodesParameters `json:"streamingTaskNodes,omitempty" tf:"streaming_task_nodes,omitempty"`

	// Specifies the ID of the VPC Subnet which bound to the MRS cluster.
	// Changing this will create a new MRS cluster resource.
	// +crossplane:generate:reference:type=github.com/FlexibleEngineCloud/provider-flexibleengine/apis/vpc/v1beta1.VPCSubnet
	// +crossplane:generate:reference:extractor=github.com/FlexibleEngineCloud/provider-flexibleengine/pkg/tools.ExtractorParamPathfunc(true, "id")
	// +crossplane:generate:reference:refFieldName=SubnetIDRef
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	// +kubebuilder:validation:Optional
	SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"`

	// Reference to a VPCSubnet in vpc to populate subnetId.
	// +kubebuilder:validation:Optional
	SubnetIDRef *v1.Reference `json:"subnetIdRef,omitempty" tf:"-"`

	// Selector for a VPCSubnet in vpc to populate subnetId.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// Specifies the key/value pairs to associate with the cluster.
	// +kubebuilder:validation:Optional
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Specifies the template used for node deployment when the cluster type is
	// CUSTOM.
	// +kubebuilder:validation:Optional
	TemplateID *string `json:"templateId,omitempty" tf:"template_id,omitempty"`

	// Specifies the type of the MRS cluster. The valid values are ANALYSIS,
	// STREAMING, MIXED and CUSTOM (supported in MRS 3.x only), default to ANALYSIS.
	// Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Specifies the ID of the VPC which bound to the MRS cluster.
	// Changing this will create a new MRS cluster resource.
	// +crossplane:generate:reference:type=github.com/FlexibleEngineCloud/provider-flexibleengine/apis/vpc/v1beta1.VPC
	// +kubebuilder:validation:Optional
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`

	// Reference to a VPC in vpc to populate vpcId.
	// +kubebuilder:validation:Optional
	VPCIDRef *v1.Reference `json:"vpcIdRef,omitempty" tf:"-"`

	// Selector for a VPC in vpc to populate vpcId.
	// +kubebuilder:validation:Optional
	VPCIDSelector *v1.Selector `json:"vpcIdSelector,omitempty" tf:"-"`

	// Specifies the MRS cluster version. Currently, MRS 1.8.9,
	// MRS 2.0.1, and MRS 3.1.0-LTS.1 are supported. Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	Version *string `json:"version" tf:"version,omitempty"`
}

func (*ClusterParameters) DeepCopy

func (in *ClusterParameters) DeepCopy() *ClusterParameters

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

func (*ClusterParameters) DeepCopyInto

func (in *ClusterParameters) DeepCopyInto(out *ClusterParameters)

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

type ClusterSpec

type ClusterSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ClusterParameters `json:"forProvider"`
}

ClusterSpec defines the desired state of Cluster

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

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

type ClusterStatus

type ClusterStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ClusterObservation `json:"atProvider,omitempty"`
}

ClusterStatus defines the observed state of Cluster.

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

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

func (*ClusterStatus) DeepCopyInto

func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)

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

type ComponentsObservation

type ComponentsObservation struct {

	// Component description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The cluster ID in UUID format.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Specifies the name of the MRS cluster. The name can contain 2 to 64
	// characters, which may consist of letters, digits, underscores (_) and hyphens (-). Changing this will create a new
	// MRS cluster resource.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the MRS cluster version. Currently, MRS 1.8.9,
	// MRS 2.0.1, and MRS 3.1.0-LTS.1 are supported. Changing this will create a new MRS cluster resource.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ComponentsObservation) DeepCopy

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

func (*ComponentsObservation) DeepCopyInto

func (in *ComponentsObservation) DeepCopyInto(out *ComponentsObservation)

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

type ComponentsParameters

type ComponentsParameters struct {
}

func (*ComponentsParameters) DeepCopy

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

func (*ComponentsParameters) DeepCopyInto

func (in *ComponentsParameters) DeepCopyInto(out *ComponentsParameters)

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

type CustomNodesObservation

type CustomNodesObservation struct {

	// The host list of this nodes group in the cluster.
	HostIps []*string `json:"hostIps,omitempty" tf:"host_ips,omitempty"`
}

func (*CustomNodesObservation) DeepCopy

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

func (*CustomNodesObservation) DeepCopyInto

func (in *CustomNodesObservation) DeepCopyInto(out *CustomNodesObservation)

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

type CustomNodesParameters

type CustomNodesParameters struct {

	// Specifies the roles deployed in a node group. This argument is mandatory
	// when the cluster type is CUSTOM. Each character string represents a role expression.
	// +kubebuilder:validation:Optional
	AssignedRoles []*string `json:"assignedRoles,omitempty" tf:"assigned_roles,omitempty"`

	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// +kubebuilder:validation:Required
	DataVolumeCount *float64 `json:"dataVolumeCount" tf:"data_volume_count,omitempty"`

	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Optional
	DataVolumeSize *float64 `json:"dataVolumeSize,omitempty" tf:"data_volume_size,omitempty"`

	// Specifies the data disk flavor of the nodes.
	// Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// The following disk types are supported:
	// +kubebuilder:validation:Optional
	DataVolumeType *string `json:"dataVolumeType,omitempty" tf:"data_volume_type,omitempty"`

	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	Flavor *string `json:"flavor" tf:"flavor,omitempty"`

	// Specifies the name of nodes for the node group.
	// This argument is mandatory when the cluster type is CUSTOM.
	// +kubebuilder:validation:Required
	GroupName *string `json:"groupName" tf:"group_name,omitempty"`

	// Specifies the number of nodes for the node group.
	// Only the core group and task group updations are allowed. The number of nodes after scaling cannot be
	// less than the number of nodes originally created.
	// +kubebuilder:validation:Required
	NodeNumber *float64 `json:"nodeNumber" tf:"node_number,omitempty"`

	// Specifies the system disk size of the nodes. Changing this will create
	// a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeSize *float64 `json:"rootVolumeSize" tf:"root_volume_size,omitempty"`

	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeType *string `json:"rootVolumeType" tf:"root_volume_type,omitempty"`
}

func (*CustomNodesParameters) DeepCopy

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

func (*CustomNodesParameters) DeepCopyInto

func (in *CustomNodesParameters) DeepCopyInto(out *CustomNodesParameters)

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

type Job

type Job struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              JobSpec   `json:"spec"`
	Status            JobStatus `json:"status,omitempty"`
}

Job is the Schema for the Jobs API. ""page_title: "flexibleengine_mrs_job_v2" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,flexibleengine}

func (*Job) DeepCopy

func (in *Job) DeepCopy() *Job

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

func (*Job) DeepCopyInto

func (in *Job) DeepCopyInto(out *Job)

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

func (*Job) DeepCopyObject

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

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

func (*Job) GetCondition

func (mg *Job) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Job.

func (*Job) GetConnectionDetailsMapping

func (tr *Job) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Job

func (*Job) GetDeletionPolicy

func (mg *Job) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Job.

func (*Job) GetID

func (tr *Job) GetID() string

GetID returns ID of underlying Terraform resource of this Job

func (*Job) GetObservation

func (tr *Job) GetObservation() (map[string]any, error)

GetObservation of this Job

func (*Job) GetParameters

func (tr *Job) GetParameters() (map[string]any, error)

GetParameters of this Job

func (*Job) GetProviderConfigReference

func (mg *Job) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Job.

func (*Job) GetProviderReference

func (mg *Job) GetProviderReference() *xpv1.Reference

GetProviderReference of this Job. Deprecated: Use GetProviderConfigReference.

func (*Job) GetPublishConnectionDetailsTo

func (mg *Job) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Job.

func (*Job) GetTerraformResourceType

func (mg *Job) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Job

func (*Job) GetTerraformSchemaVersion

func (tr *Job) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Job) GetWriteConnectionSecretToReference

func (mg *Job) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Job.

func (*Job) LateInitialize

func (tr *Job) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Job using its observed tfState. returns True if there are any spec changes for the resource.

func (*Job) ResolveReferences

func (mg *Job) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Job.

func (*Job) SetConditions

func (mg *Job) SetConditions(c ...xpv1.Condition)

SetConditions of this Job.

func (*Job) SetDeletionPolicy

func (mg *Job) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Job.

func (*Job) SetObservation

func (tr *Job) SetObservation(obs map[string]any) error

SetObservation for this Job

func (*Job) SetParameters

func (tr *Job) SetParameters(params map[string]any) error

SetParameters for this Job

func (*Job) SetProviderConfigReference

func (mg *Job) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Job.

func (*Job) SetProviderReference

func (mg *Job) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this Job. Deprecated: Use SetProviderConfigReference.

func (*Job) SetPublishConnectionDetailsTo

func (mg *Job) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Job.

func (*Job) SetWriteConnectionSecretToReference

func (mg *Job) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Job.

type JobList

type JobList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Job `json:"items"`
}

JobList contains a list of Jobs

func (*JobList) DeepCopy

func (in *JobList) DeepCopy() *JobList

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

func (*JobList) DeepCopyInto

func (in *JobList) DeepCopyInto(out *JobList)

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

func (*JobList) DeepCopyObject

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

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

func (*JobList) GetItems

func (l *JobList) GetItems() []resource.Managed

GetItems of this JobList.

type JobObservation

type JobObservation struct {

	// The completion time of the MRS job.
	FinishTime *string `json:"finishTime,omitempty" tf:"finish_time,omitempty"`

	// ID of the MRS job in UUID format.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The creation time of the MRS job.
	StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"`

	// Status of the MRS job.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// The submission time of the MRS job.
	SubmitTime *string `json:"submitTime,omitempty" tf:"submit_time,omitempty"`
}

func (*JobObservation) DeepCopy

func (in *JobObservation) DeepCopy() *JobObservation

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

func (*JobObservation) DeepCopyInto

func (in *JobObservation) DeepCopyInto(out *JobObservation)

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

type JobParameters

type JobParameters struct {

	// Specifies an ID of the MRS cluster to which the job belongs to.
	// Changing this will create a new MRS job resource.
	// +crossplane:generate:reference:type=Cluster
	// +kubebuilder:validation:Optional
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	// Reference to a Cluster to populate clusterId.
	// +kubebuilder:validation:Optional
	ClusterIDRef *v1.Reference `json:"clusterIdRef,omitempty" tf:"-"`

	// Selector for a Cluster to populate clusterId.
	// +kubebuilder:validation:Optional
	ClusterIDSelector *v1.Selector `json:"clusterIdSelector,omitempty" tf:"-"`

	// Specifies the name of the MRS job. The name can contain 1 to 64
	// characters, which may consist of letters, digits, underscores (_) and hyphens (-).
	// Changing this will create a new MRS job resource.
	// +kubebuilder:validation:Required
	Name *string `json:"name" tf:"name,omitempty"`

	// Specifies the parameters for the MRS job. Add an at sign (@) before
	// each parameter can prevent the parameters being saved in plaintext format. Each parameters are separated with spaces.
	// This parameter can be set when type is Flink, MRS or SparkSubmit. Changing this will create a new
	// MRS job resource.
	// +kubebuilder:validation:Optional
	Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"`

	// Specifies the the key/value pairs of the program parameters, such as
	// thread, memory, and vCPUs, are used to optimize resource usage and improve job execution performance. This parameter
	// can be set when type is Flink, SparkSubmit, SparkSql, SparkScript, HiveSql or
	// HiveScript. Changing this will create a new MRS job resource.
	// +kubebuilder:validation:Optional
	ProgramParameters map[string]*string `json:"programParameters,omitempty" tf:"program_parameters,omitempty"`

	// Specifies the .jar package path or .py file path for program execution.
	// The parameter must meet the following requirements:
	// +kubebuilder:validation:Optional
	ProgramPath *string `json:"programPath,omitempty" tf:"program_path,omitempty"`

	// Specifies the region in which to create the MRS job resource.
	// If omitted, the provider-level region will be used. Changing this will create a new MRS job resource.
	// +kubebuilder:validation:Optional
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// Specifies the SQL command or file path. Only required if type is HiveSql
	// or SparkSql. Changing this will create a new MRS job resource.
	// +kubebuilder:validation:Optional
	SQL *string `json:"sql,omitempty" tf:"sql,omitempty"`

	// Specifies the key/value pairs used to modify service configuration.
	// Parameter configurations of services are available on the Service Configuration tab page of MRS Manager.
	// Changing this will create a new MRS job resource.
	// +kubebuilder:validation:Optional
	ServiceParameters map[string]*string `json:"serviceParameters,omitempty" tf:"service_parameters,omitempty"`

	// Specifies the job type. The valid values are MapReduce,
	// Flink, HiveSql, HiveScript, SparkSubmit, SparkSql and SparkScript.
	// +kubebuilder:validation:Required
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*JobParameters) DeepCopy

func (in *JobParameters) DeepCopy() *JobParameters

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

func (*JobParameters) DeepCopyInto

func (in *JobParameters) DeepCopyInto(out *JobParameters)

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

type JobSpec

type JobSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     JobParameters `json:"forProvider"`
}

JobSpec defines the desired state of Job

func (*JobSpec) DeepCopy

func (in *JobSpec) DeepCopy() *JobSpec

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

func (*JobSpec) DeepCopyInto

func (in *JobSpec) DeepCopyInto(out *JobSpec)

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

type JobStatus

type JobStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        JobObservation `json:"atProvider,omitempty"`
}

JobStatus defines the observed state of Job.

func (*JobStatus) DeepCopy

func (in *JobStatus) DeepCopy() *JobStatus

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

func (*JobStatus) DeepCopyInto

func (in *JobStatus) DeepCopyInto(out *JobStatus)

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

type MasterNodesObservation

type MasterNodesObservation struct {

	// The host list of this nodes group in the cluster.
	HostIps []*string `json:"hostIps,omitempty" tf:"host_ips,omitempty"`
}

func (*MasterNodesObservation) DeepCopy

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

func (*MasterNodesObservation) DeepCopyInto

func (in *MasterNodesObservation) DeepCopyInto(out *MasterNodesObservation)

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

type MasterNodesParameters

type MasterNodesParameters struct {

	// Specifies the roles deployed in a node group. This argument is mandatory
	// when the cluster type is CUSTOM. Each character string represents a role expression.
	// +kubebuilder:validation:Optional
	AssignedRoles []*string `json:"assignedRoles,omitempty" tf:"assigned_roles,omitempty"`

	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// +kubebuilder:validation:Required
	DataVolumeCount *float64 `json:"dataVolumeCount" tf:"data_volume_count,omitempty"`

	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Optional
	DataVolumeSize *float64 `json:"dataVolumeSize,omitempty" tf:"data_volume_size,omitempty"`

	// Specifies the data disk flavor of the nodes.
	// Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// The following disk types are supported:
	// +kubebuilder:validation:Optional
	DataVolumeType *string `json:"dataVolumeType,omitempty" tf:"data_volume_type,omitempty"`

	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	Flavor *string `json:"flavor" tf:"flavor,omitempty"`

	// Specifies the number of nodes for the node group.
	// Only the core group and task group updations are allowed. The number of nodes after scaling cannot be
	// less than the number of nodes originally created.
	// +kubebuilder:validation:Required
	NodeNumber *float64 `json:"nodeNumber" tf:"node_number,omitempty"`

	// Specifies the system disk size of the nodes. Changing this will create
	// a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeSize *float64 `json:"rootVolumeSize" tf:"root_volume_size,omitempty"`

	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeType *string `json:"rootVolumeType" tf:"root_volume_type,omitempty"`
}

func (*MasterNodesParameters) DeepCopy

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

func (*MasterNodesParameters) DeepCopyInto

func (in *MasterNodesParameters) DeepCopyInto(out *MasterNodesParameters)

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

type StreamingCoreNodesObservation

type StreamingCoreNodesObservation struct {

	// The host list of this nodes group in the cluster.
	HostIps []*string `json:"hostIps,omitempty" tf:"host_ips,omitempty"`
}

func (*StreamingCoreNodesObservation) DeepCopy

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

func (*StreamingCoreNodesObservation) DeepCopyInto

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

type StreamingCoreNodesParameters

type StreamingCoreNodesParameters struct {

	// Specifies the roles deployed in a node group. This argument is mandatory
	// when the cluster type is CUSTOM. Each character string represents a role expression.
	// +kubebuilder:validation:Optional
	AssignedRoles []*string `json:"assignedRoles,omitempty" tf:"assigned_roles,omitempty"`

	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// +kubebuilder:validation:Required
	DataVolumeCount *float64 `json:"dataVolumeCount" tf:"data_volume_count,omitempty"`

	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Optional
	DataVolumeSize *float64 `json:"dataVolumeSize,omitempty" tf:"data_volume_size,omitempty"`

	// Specifies the data disk flavor of the nodes.
	// Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// The following disk types are supported:
	// +kubebuilder:validation:Optional
	DataVolumeType *string `json:"dataVolumeType,omitempty" tf:"data_volume_type,omitempty"`

	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	Flavor *string `json:"flavor" tf:"flavor,omitempty"`

	// Specifies the number of nodes for the node group.
	// Only the core group and task group updations are allowed. The number of nodes after scaling cannot be
	// less than the number of nodes originally created.
	// +kubebuilder:validation:Required
	NodeNumber *float64 `json:"nodeNumber" tf:"node_number,omitempty"`

	// Specifies the system disk size of the nodes. Changing this will create
	// a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeSize *float64 `json:"rootVolumeSize" tf:"root_volume_size,omitempty"`

	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeType *string `json:"rootVolumeType" tf:"root_volume_type,omitempty"`
}

func (*StreamingCoreNodesParameters) DeepCopy

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

func (*StreamingCoreNodesParameters) DeepCopyInto

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

type StreamingTaskNodesObservation

type StreamingTaskNodesObservation struct {

	// The host list of this nodes group in the cluster.
	HostIps []*string `json:"hostIps,omitempty" tf:"host_ips,omitempty"`
}

func (*StreamingTaskNodesObservation) DeepCopy

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

func (*StreamingTaskNodesObservation) DeepCopyInto

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

type StreamingTaskNodesParameters

type StreamingTaskNodesParameters struct {

	// Specifies the roles deployed in a node group. This argument is mandatory
	// when the cluster type is CUSTOM. Each character string represents a role expression.
	// +kubebuilder:validation:Optional
	AssignedRoles []*string `json:"assignedRoles,omitempty" tf:"assigned_roles,omitempty"`

	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// +kubebuilder:validation:Required
	DataVolumeCount *float64 `json:"dataVolumeCount" tf:"data_volume_count,omitempty"`

	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Optional
	DataVolumeSize *float64 `json:"dataVolumeSize,omitempty" tf:"data_volume_size,omitempty"`

	// Specifies the data disk flavor of the nodes.
	// Required if data_volume_count is greater than zero. Changing this will create a new MRS cluster resource.
	// The following disk types are supported:
	// +kubebuilder:validation:Optional
	DataVolumeType *string `json:"dataVolumeType,omitempty" tf:"data_volume_type,omitempty"`

	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	Flavor *string `json:"flavor" tf:"flavor,omitempty"`

	// Specifies the number of nodes for the node group.
	// Only the core group and task group updations are allowed. The number of nodes after scaling cannot be
	// less than the number of nodes originally created.
	// +kubebuilder:validation:Required
	NodeNumber *float64 `json:"nodeNumber" tf:"node_number,omitempty"`

	// Specifies the system disk size of the nodes. Changing this will create
	// a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeSize *float64 `json:"rootVolumeSize" tf:"root_volume_size,omitempty"`

	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MRS cluster resource.
	// +kubebuilder:validation:Required
	RootVolumeType *string `json:"rootVolumeType" tf:"root_volume_type,omitempty"`
}

func (*StreamingTaskNodesParameters) DeepCopy

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

func (*StreamingTaskNodesParameters) DeepCopyInto

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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL