import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface KubernetesClusterMasterAttachmentConfig extends cdktf.TerraformMetaArguments { /** * ID of the cluster. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#cluster_id KubernetesClusterMasterAttachment#cluster_id} */ readonly clusterId: string; /** * When the node belongs to the podCIDR size customization mode, the maximum number of pods running on the node can be specified. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#desired_pod_numbers KubernetesClusterMasterAttachment#desired_pod_numbers} */ readonly desiredPodNumbers?: number[]; /** * Activate TencentCloud Automation Tools (TAT) service. If this parameter is not specified, the public image will default to enabling the Cloud Automation Assistant service, while other images will default to not enabling the Cloud Automation Assistant service. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#enhanced_automation_service KubernetesClusterMasterAttachment#enhanced_automation_service} */ readonly enhancedAutomationService?: boolean | cdktf.IResolvable; /** * To specify whether to enable cloud monitor service. Default is TRUE. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#enhanced_monitor_service KubernetesClusterMasterAttachment#enhanced_monitor_service} */ readonly enhancedMonitorService?: boolean | cdktf.IResolvable; /** * To specify whether to enable cloud security service. Default is TRUE. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#enhanced_security_service KubernetesClusterMasterAttachment#enhanced_security_service} */ readonly enhancedSecurityService?: boolean | cdktf.IResolvable; /** * When reinstalling the system, you can specify the HostName of the instance to be modified (this parameter must be passed when the cluster is in HostName mode, and the rule name should be consistent with the HostName of the CVM instance creation interface except that uppercase characters are not supported). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#host_name KubernetesClusterMasterAttachment#host_name} */ readonly hostName?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#id KubernetesClusterMasterAttachment#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * ID of the CVM instance, this cvm will reinstall the system. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#instance_id KubernetesClusterMasterAttachment#instance_id} */ readonly instanceId: string; /** * The key pair to use for the instance, it looks like skey-16jig7tx, it should be set if `password` not set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#key_ids KubernetesClusterMasterAttachment#key_ids} */ readonly keyIds?: string[]; /** * Node role, values: MASTER_ETCD, WORKER. MASTER_ETCD needs to be specified only when creating an INDEPENDENT_CLUSTER independent cluster. The number of MASTER_ETCD nodes is 3-7, and it is recommended to have an odd number. The minimum configuration for MASTER_ETCD is 4C8G. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#node_role KubernetesClusterMasterAttachment#node_role} */ readonly nodeRole: string; /** * Password to access, should be set if `key_ids` not set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#password KubernetesClusterMasterAttachment#password} */ readonly password?: string; /** * The security group to which the instance belongs. This parameter can be obtained by calling the sgId field in the return value of DescribeSecureGroups. If this parameter is not specified, the default security group will be bound. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#security_group_ids KubernetesClusterMasterAttachment#security_group_ids} */ readonly securityGroupIds?: string[]; /** * extra_args block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#extra_args KubernetesClusterMasterAttachment#extra_args} */ readonly extraArgs?: KubernetesClusterMasterAttachmentExtraArgs; /** * master_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#master_config KubernetesClusterMasterAttachment#master_config} */ readonly masterConfig?: KubernetesClusterMasterAttachmentMasterConfig; } export interface KubernetesClusterMasterAttachmentExtraArgs { /** * etcd custom parameters. Only supports independent clusters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#etcd KubernetesClusterMasterAttachment#etcd} */ readonly etcd?: string[]; /** * Kube apiserver custom parameters. The parameter format is ["k1=v1", "k1=v2"]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#kube_api_server KubernetesClusterMasterAttachment#kube_api_server} */ readonly kubeApiServer?: string[]; /** * Kube controller manager custom parameters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#kube_controller_manager KubernetesClusterMasterAttachment#kube_controller_manager} */ readonly kubeControllerManager?: string[]; /** * kube scheduler custom parameters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#kube_scheduler KubernetesClusterMasterAttachment#kube_scheduler} */ readonly kubeScheduler?: string[]; } export declare function kubernetesClusterMasterAttachmentExtraArgsToTerraform(struct?: KubernetesClusterMasterAttachmentExtraArgsOutputReference | KubernetesClusterMasterAttachmentExtraArgs): any; export declare function kubernetesClusterMasterAttachmentExtraArgsToHclTerraform(struct?: KubernetesClusterMasterAttachmentExtraArgsOutputReference | KubernetesClusterMasterAttachmentExtraArgs): any; export declare class KubernetesClusterMasterAttachmentExtraArgsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): KubernetesClusterMasterAttachmentExtraArgs | undefined; set internalValue(value: KubernetesClusterMasterAttachmentExtraArgs | undefined); private _etcd?; get etcd(): string[]; set etcd(value: string[]); resetEtcd(): void; get etcdInput(): string[]; private _kubeApiServer?; get kubeApiServer(): string[]; set kubeApiServer(value: string[]); resetKubeApiServer(): void; get kubeApiServerInput(): string[]; private _kubeControllerManager?; get kubeControllerManager(): string[]; set kubeControllerManager(value: string[]); resetKubeControllerManager(): void; get kubeControllerManagerInput(): string[]; private _kubeScheduler?; get kubeScheduler(): string[]; set kubeScheduler(value: string[]); resetKubeScheduler(): void; get kubeSchedulerInput(): string[]; } export interface KubernetesClusterMasterAttachmentMasterConfigDataDisk { /** * Indicate whether to auto format and mount or not. Default is `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#auto_format_and_mount KubernetesClusterMasterAttachment#auto_format_and_mount} */ readonly autoFormatAndMount?: boolean | cdktf.IResolvable; /** * The name of the device or partition to mount. NOTE: this argument doesn't support setting in node pool, or will leads to mount error. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#disk_partition KubernetesClusterMasterAttachment#disk_partition} */ readonly diskPartition?: string; /** * Volume of disk in GB. Default is `0`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#disk_size KubernetesClusterMasterAttachment#disk_size} */ readonly diskSize?: number; /** * Types of disk. Valid value: `LOCAL_BASIC`, `LOCAL_SSD`, `CLOUD_BASIC`, `CLOUD_PREMIUM`, `CLOUD_SSD`, `CLOUD_HSSD`, `CLOUD_TSSD` and `CLOUD_BSSD`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#disk_type KubernetesClusterMasterAttachment#disk_type} */ readonly diskType?: string; /** * File system, e.g. `ext3/ext4/xfs`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#file_system KubernetesClusterMasterAttachment#file_system} */ readonly fileSystem?: string; /** * Mount target. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#mount_target KubernetesClusterMasterAttachment#mount_target} */ readonly mountTarget?: string; } export declare function kubernetesClusterMasterAttachmentMasterConfigDataDiskToTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigDataDiskOutputReference | KubernetesClusterMasterAttachmentMasterConfigDataDisk): any; export declare function kubernetesClusterMasterAttachmentMasterConfigDataDiskToHclTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigDataDiskOutputReference | KubernetesClusterMasterAttachmentMasterConfigDataDisk): any; export declare class KubernetesClusterMasterAttachmentMasterConfigDataDiskOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): KubernetesClusterMasterAttachmentMasterConfigDataDisk | undefined; set internalValue(value: KubernetesClusterMasterAttachmentMasterConfigDataDisk | undefined); private _autoFormatAndMount?; get autoFormatAndMount(): boolean | cdktf.IResolvable; set autoFormatAndMount(value: boolean | cdktf.IResolvable); resetAutoFormatAndMount(): void; get autoFormatAndMountInput(): any; private _diskPartition?; get diskPartition(): string; set diskPartition(value: string); resetDiskPartition(): void; get diskPartitionInput(): string; private _diskSize?; get diskSize(): number; set diskSize(value: number); resetDiskSize(): void; get diskSizeInput(): number; private _diskType?; get diskType(): string; set diskType(value: string); resetDiskType(): void; get diskTypeInput(): string; private _fileSystem?; get fileSystem(): string; set fileSystem(value: string); resetFileSystem(): void; get fileSystemInput(): string; private _mountTarget?; get mountTarget(): string; set mountTarget(value: string); resetMountTarget(): void; get mountTargetInput(): string; } export interface KubernetesClusterMasterAttachmentMasterConfigExtraArgs { /** * Kubelet custom parameter. The parameter format is ["k1=v1", "k1=v2"]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#kubelet KubernetesClusterMasterAttachment#kubelet} */ readonly kubelet?: string[]; } export declare function kubernetesClusterMasterAttachmentMasterConfigExtraArgsToTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigExtraArgsOutputReference | KubernetesClusterMasterAttachmentMasterConfigExtraArgs): any; export declare function kubernetesClusterMasterAttachmentMasterConfigExtraArgsToHclTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigExtraArgsOutputReference | KubernetesClusterMasterAttachmentMasterConfigExtraArgs): any; export declare class KubernetesClusterMasterAttachmentMasterConfigExtraArgsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): KubernetesClusterMasterAttachmentMasterConfigExtraArgs | undefined; set internalValue(value: KubernetesClusterMasterAttachmentMasterConfigExtraArgs | undefined); private _kubelet?; get kubelet(): string[]; set kubelet(value: string[]); resetKubelet(): void; get kubeletInput(): string[]; } export interface KubernetesClusterMasterAttachmentMasterConfigGpuArgs { /** * CUDA version. Format like: `{ version: String, name: String }`. `version`: Version of GPU driver or CUDA; `name`: Name of GPU driver or CUDA. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#cuda KubernetesClusterMasterAttachment#cuda} */ readonly cuda?: { [key: string]: string; }; /** * cuDNN version. Format like: `{ version: String, name: String, doc_name: String, dev_name: String }`. `version`: cuDNN version; `name`: cuDNN name; `doc_name`: Doc name of cuDNN; `dev_name`: Dev name of cuDNN. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#cudnn KubernetesClusterMasterAttachment#cudnn} */ readonly cudnn?: { [key: string]: string; }; /** * Custom GPU driver. Format like: `{address: String}`. `address`: URL of custom GPU driver address. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#custom_driver KubernetesClusterMasterAttachment#custom_driver} */ readonly customDriver?: { [key: string]: string; }; /** * GPU driver version. Format like: `{ version: String, name: String }`. `version`: Version of GPU driver or CUDA; `name`: Name of GPU driver or CUDA. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#driver KubernetesClusterMasterAttachment#driver} */ readonly driver?: { [key: string]: string; }; /** * Whether to enable MIG. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#mig_enable KubernetesClusterMasterAttachment#mig_enable} */ readonly migEnable?: boolean | cdktf.IResolvable; } export declare function kubernetesClusterMasterAttachmentMasterConfigGpuArgsToTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigGpuArgsOutputReference | KubernetesClusterMasterAttachmentMasterConfigGpuArgs): any; export declare function kubernetesClusterMasterAttachmentMasterConfigGpuArgsToHclTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigGpuArgsOutputReference | KubernetesClusterMasterAttachmentMasterConfigGpuArgs): any; export declare class KubernetesClusterMasterAttachmentMasterConfigGpuArgsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): KubernetesClusterMasterAttachmentMasterConfigGpuArgs | undefined; set internalValue(value: KubernetesClusterMasterAttachmentMasterConfigGpuArgs | undefined); private _cuda?; get cuda(): { [key: string]: string; }; set cuda(value: { [key: string]: string; }); resetCuda(): void; get cudaInput(): { [key: string]: string; }; private _cudnn?; get cudnn(): { [key: string]: string; }; set cudnn(value: { [key: string]: string; }); resetCudnn(): void; get cudnnInput(): { [key: string]: string; }; private _customDriver?; get customDriver(): { [key: string]: string; }; set customDriver(value: { [key: string]: string; }); resetCustomDriver(): void; get customDriverInput(): { [key: string]: string; }; private _driver?; get driver(): { [key: string]: string; }; set driver(value: { [key: string]: string; }); resetDriver(): void; get driverInput(): { [key: string]: string; }; private _migEnable?; get migEnable(): boolean | cdktf.IResolvable; set migEnable(value: boolean | cdktf.IResolvable); resetMigEnable(): void; get migEnableInput(): any; } export interface KubernetesClusterMasterAttachmentMasterConfigLabels { /** * Name of map. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#name KubernetesClusterMasterAttachment#name} */ readonly name: string; /** * Value of map. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#value KubernetesClusterMasterAttachment#value} */ readonly value: string; } export declare function kubernetesClusterMasterAttachmentMasterConfigLabelsToTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigLabels | cdktf.IResolvable): any; export declare function kubernetesClusterMasterAttachmentMasterConfigLabelsToHclTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigLabels | cdktf.IResolvable): any; export declare class KubernetesClusterMasterAttachmentMasterConfigLabelsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): KubernetesClusterMasterAttachmentMasterConfigLabels | cdktf.IResolvable | undefined; set internalValue(value: KubernetesClusterMasterAttachmentMasterConfigLabels | cdktf.IResolvable | undefined); private _name?; get name(): string; set name(value: string); get nameInput(): string; private _value?; get value(): string; set value(value: string); get valueInput(): string; } export declare class KubernetesClusterMasterAttachmentMasterConfigLabelsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: KubernetesClusterMasterAttachmentMasterConfigLabels[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): KubernetesClusterMasterAttachmentMasterConfigLabelsOutputReference; } export interface KubernetesClusterMasterAttachmentMasterConfigTaints { /** * Effect of the taint. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#effect KubernetesClusterMasterAttachment#effect} */ readonly effect?: string; /** * Key of the taint. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#key KubernetesClusterMasterAttachment#key} */ readonly key?: string; /** * Value of the taint. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#value KubernetesClusterMasterAttachment#value} */ readonly value?: string; } export declare function kubernetesClusterMasterAttachmentMasterConfigTaintsToTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigTaints | cdktf.IResolvable): any; export declare function kubernetesClusterMasterAttachmentMasterConfigTaintsToHclTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigTaints | cdktf.IResolvable): any; export declare class KubernetesClusterMasterAttachmentMasterConfigTaintsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): KubernetesClusterMasterAttachmentMasterConfigTaints | cdktf.IResolvable | undefined; set internalValue(value: KubernetesClusterMasterAttachmentMasterConfigTaints | cdktf.IResolvable | undefined); private _effect?; get effect(): string; set effect(value: string); resetEffect(): void; get effectInput(): string; private _key?; get key(): string; set key(value: string); resetKey(): void; get keyInput(): string; private _value?; get value(): string; set value(value: string); resetValue(): void; get valueInput(): string; } export declare class KubernetesClusterMasterAttachmentMasterConfigTaintsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: KubernetesClusterMasterAttachmentMasterConfigTaints[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): KubernetesClusterMasterAttachmentMasterConfigTaintsOutputReference; } export interface KubernetesClusterMasterAttachmentMasterConfig { /** * Indicate to set desired pod number in node. valid when the cluster is podCIDR. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#desired_pod_number KubernetesClusterMasterAttachment#desired_pod_number} */ readonly desiredPodNumber?: number; /** * Docker graph path. Default is `/var/lib/docker`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#docker_graph_path KubernetesClusterMasterAttachment#docker_graph_path} */ readonly dockerGraphPath?: string; /** * Mount target. Default is not mounting. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#mount_target KubernetesClusterMasterAttachment#mount_target} */ readonly mountTarget?: string; /** * Set whether the joined nodes participate in scheduling, with a default value of 0, indicating participation in scheduling; Non 0 means not participating in scheduling. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#unschedulable KubernetesClusterMasterAttachment#unschedulable} */ readonly unschedulable?: number; /** * User script encoded in base64, which will be executed after the k8s component runs. The user needs to ensure the script's reentrant and retry logic. The script and its generated log files can be viewed in the node path /data/ccs_userscript/. If the node needs to be initialized before joining the schedule, it can be used in conjunction with the `unschedulable` parameter. After the final initialization of the userScript is completed, add the command "kubectl uncordon nodename --kubeconfig=/root/.kube/config" to add the node to the schedule. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#user_script KubernetesClusterMasterAttachment#user_script} */ readonly userScript?: string; /** * data_disk block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#data_disk KubernetesClusterMasterAttachment#data_disk} */ readonly dataDisk?: KubernetesClusterMasterAttachmentMasterConfigDataDisk; /** * extra_args block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#extra_args KubernetesClusterMasterAttachment#extra_args} */ readonly extraArgs?: KubernetesClusterMasterAttachmentMasterConfigExtraArgs; /** * gpu_args block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#gpu_args KubernetesClusterMasterAttachment#gpu_args} */ readonly gpuArgs?: KubernetesClusterMasterAttachmentMasterConfigGpuArgs; /** * labels block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#labels KubernetesClusterMasterAttachment#labels} */ readonly labels?: KubernetesClusterMasterAttachmentMasterConfigLabels[] | cdktf.IResolvable; /** * taints block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#taints KubernetesClusterMasterAttachment#taints} */ readonly taints?: KubernetesClusterMasterAttachmentMasterConfigTaints[] | cdktf.IResolvable; } export declare function kubernetesClusterMasterAttachmentMasterConfigToTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigOutputReference | KubernetesClusterMasterAttachmentMasterConfig): any; export declare function kubernetesClusterMasterAttachmentMasterConfigToHclTerraform(struct?: KubernetesClusterMasterAttachmentMasterConfigOutputReference | KubernetesClusterMasterAttachmentMasterConfig): any; export declare class KubernetesClusterMasterAttachmentMasterConfigOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): KubernetesClusterMasterAttachmentMasterConfig | undefined; set internalValue(value: KubernetesClusterMasterAttachmentMasterConfig | undefined); private _desiredPodNumber?; get desiredPodNumber(): number; set desiredPodNumber(value: number); resetDesiredPodNumber(): void; get desiredPodNumberInput(): number; private _dockerGraphPath?; get dockerGraphPath(): string; set dockerGraphPath(value: string); resetDockerGraphPath(): void; get dockerGraphPathInput(): string; private _mountTarget?; get mountTarget(): string; set mountTarget(value: string); resetMountTarget(): void; get mountTargetInput(): string; private _unschedulable?; get unschedulable(): number; set unschedulable(value: number); resetUnschedulable(): void; get unschedulableInput(): number; private _userScript?; get userScript(): string; set userScript(value: string); resetUserScript(): void; get userScriptInput(): string; private _dataDisk; get dataDisk(): KubernetesClusterMasterAttachmentMasterConfigDataDiskOutputReference; putDataDisk(value: KubernetesClusterMasterAttachmentMasterConfigDataDisk): void; resetDataDisk(): void; get dataDiskInput(): KubernetesClusterMasterAttachmentMasterConfigDataDisk; private _extraArgs; get extraArgs(): KubernetesClusterMasterAttachmentMasterConfigExtraArgsOutputReference; putExtraArgs(value: KubernetesClusterMasterAttachmentMasterConfigExtraArgs): void; resetExtraArgs(): void; get extraArgsInput(): KubernetesClusterMasterAttachmentMasterConfigExtraArgs; private _gpuArgs; get gpuArgs(): KubernetesClusterMasterAttachmentMasterConfigGpuArgsOutputReference; putGpuArgs(value: KubernetesClusterMasterAttachmentMasterConfigGpuArgs): void; resetGpuArgs(): void; get gpuArgsInput(): KubernetesClusterMasterAttachmentMasterConfigGpuArgs; private _labels; get labels(): KubernetesClusterMasterAttachmentMasterConfigLabelsList; putLabels(value: KubernetesClusterMasterAttachmentMasterConfigLabels[] | cdktf.IResolvable): void; resetLabels(): void; get labelsInput(): any; private _taints; get taints(): KubernetesClusterMasterAttachmentMasterConfigTaintsList; putTaints(value: KubernetesClusterMasterAttachmentMasterConfigTaints[] | cdktf.IResolvable): void; resetTaints(): void; get taintsInput(): any; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment tencentcloud_kubernetes_cluster_master_attachment} */ export declare class KubernetesClusterMasterAttachment extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_kubernetes_cluster_master_attachment"; /** * Generates CDKTF code for importing a KubernetesClusterMasterAttachment resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the KubernetesClusterMasterAttachment to import * @param importFromId The id of the existing KubernetesClusterMasterAttachment that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the KubernetesClusterMasterAttachment to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/kubernetes_cluster_master_attachment tencentcloud_kubernetes_cluster_master_attachment} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options KubernetesClusterMasterAttachmentConfig */ constructor(scope: Construct, id: string, config: KubernetesClusterMasterAttachmentConfig); private _clusterId?; get clusterId(): string; set clusterId(value: string); get clusterIdInput(): string; private _desiredPodNumbers?; get desiredPodNumbers(): number[]; set desiredPodNumbers(value: number[]); resetDesiredPodNumbers(): void; get desiredPodNumbersInput(): number[]; private _enhancedAutomationService?; get enhancedAutomationService(): boolean | cdktf.IResolvable; set enhancedAutomationService(value: boolean | cdktf.IResolvable); resetEnhancedAutomationService(): void; get enhancedAutomationServiceInput(): any; private _enhancedMonitorService?; get enhancedMonitorService(): boolean | cdktf.IResolvable; set enhancedMonitorService(value: boolean | cdktf.IResolvable); resetEnhancedMonitorService(): void; get enhancedMonitorServiceInput(): any; private _enhancedSecurityService?; get enhancedSecurityService(): boolean | cdktf.IResolvable; set enhancedSecurityService(value: boolean | cdktf.IResolvable); resetEnhancedSecurityService(): void; get enhancedSecurityServiceInput(): any; private _hostName?; get hostName(): string; set hostName(value: string); resetHostName(): void; get hostNameInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _instanceId?; get instanceId(): string; set instanceId(value: string); get instanceIdInput(): string; private _keyIds?; get keyIds(): string[]; set keyIds(value: string[]); resetKeyIds(): void; get keyIdsInput(): string[]; private _nodeRole?; get nodeRole(): string; set nodeRole(value: string); get nodeRoleInput(): string; private _password?; get password(): string; set password(value: string); resetPassword(): void; get passwordInput(): string; private _securityGroupIds?; get securityGroupIds(): string[]; set securityGroupIds(value: string[]); resetSecurityGroupIds(): void; get securityGroupIdsInput(): string[]; private _extraArgs; get extraArgs(): KubernetesClusterMasterAttachmentExtraArgsOutputReference; putExtraArgs(value: KubernetesClusterMasterAttachmentExtraArgs): void; resetExtraArgs(): void; get extraArgsInput(): KubernetesClusterMasterAttachmentExtraArgs; private _masterConfig; get masterConfig(): KubernetesClusterMasterAttachmentMasterConfigOutputReference; putMasterConfig(value: KubernetesClusterMasterAttachmentMasterConfig): void; resetMasterConfig(): void; get masterConfigInput(): KubernetesClusterMasterAttachmentMasterConfig; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }