Class ContainerAwsClusterControlPlane.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.container_aws_cluster.ContainerAwsClusterControlPlane.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ContainerAwsClusterControlPlane>
- Enclosing interface:
- ContainerAwsClusterControlPlane
@Stability(Stable) public static final class ContainerAwsClusterControlPlane.Builder extends Object implements software.amazon.jsii.Builder<ContainerAwsClusterControlPlane>
A builder forContainerAwsClusterControlPlane
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
awsServicesAuthentication
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder awsServicesAuthentication(ContainerAwsClusterControlPlaneAwsServicesAuthentication awsServicesAuthentication)
Sets the value ofContainerAwsClusterControlPlane.getAwsServicesAuthentication()- Parameters:
awsServicesAuthentication- aws_services_authentication block. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#aws_services_authentication ContainerAwsCluster#aws_services_authentication}- Returns:
this
-
configEncryption
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder configEncryption(ContainerAwsClusterControlPlaneConfigEncryption configEncryption)
Sets the value ofContainerAwsClusterControlPlane.getConfigEncryption()- Parameters:
configEncryption- config_encryption block. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#config_encryption ContainerAwsCluster#config_encryption}- Returns:
this
-
databaseEncryption
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder databaseEncryption(ContainerAwsClusterControlPlaneDatabaseEncryption databaseEncryption)
Sets the value ofContainerAwsClusterControlPlane.getDatabaseEncryption()- Parameters:
databaseEncryption- database_encryption block. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#database_encryption ContainerAwsCluster#database_encryption}- Returns:
this
-
iamInstanceProfile
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder iamInstanceProfile(String iamInstanceProfile)
Sets the value ofContainerAwsClusterControlPlane.getIamInstanceProfile()- Parameters:
iamInstanceProfile- The name of the AWS IAM instance pofile to assign to each control plane replica. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#iam_instance_profile ContainerAwsCluster#iam_instance_profile}- Returns:
this
-
subnetIds
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder subnetIds(List<String> subnetIds)
Sets the value ofContainerAwsClusterControlPlane.getSubnetIds()- Parameters:
subnetIds- The list of subnets where control plane replicas will run. This parameter is required. A replica will be provisioned on each subnet and up to three values can be provided. Each subnet must be in a different AWS Availability Zone (AZ). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#subnet_ids ContainerAwsCluster#subnet_ids}- Returns:
this
-
version
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder version(String version)
Sets the value ofContainerAwsClusterControlPlane.getVersion()- Parameters:
version- The Kubernetes version to run on control plane replicas (e.g.1.19.10-gke.1000). You can list all supported versions on a given Google Cloud region by calling . This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#version ContainerAwsCluster#version}- Returns:
this
-
instanceType
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder instanceType(String instanceType)
Sets the value ofContainerAwsClusterControlPlane.getInstanceType()- Parameters:
instanceType- Optional. The AWS instance type. When unspecified, it defaults tom5.large. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#instance_type ContainerAwsCluster#instance_type}- Returns:
this
-
mainVolume
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder mainVolume(ContainerAwsClusterControlPlaneMainVolume mainVolume)
Sets the value ofContainerAwsClusterControlPlane.getMainVolume()- Parameters:
mainVolume- main_volume block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#main_volume ContainerAwsCluster#main_volume}- Returns:
this
-
proxyConfig
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder proxyConfig(ContainerAwsClusterControlPlaneProxyConfig proxyConfig)
Sets the value ofContainerAwsClusterControlPlane.getProxyConfig()- Parameters:
proxyConfig- proxy_config block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#proxy_config ContainerAwsCluster#proxy_config}- Returns:
this
-
rootVolume
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder rootVolume(ContainerAwsClusterControlPlaneRootVolume rootVolume)
Sets the value ofContainerAwsClusterControlPlane.getRootVolume()- Parameters:
rootVolume- root_volume block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#root_volume ContainerAwsCluster#root_volume}- Returns:
this
-
securityGroupIds
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder securityGroupIds(List<String> securityGroupIds)
Sets the value ofContainerAwsClusterControlPlane.getSecurityGroupIds()- Parameters:
securityGroupIds- Optional. The IDs of additional security groups to add to control plane replicas. The Anthos Multi-Cloud API will automatically create and manage security groups with the minimum rules needed for a functioning cluster. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#security_group_ids ContainerAwsCluster#security_group_ids}- Returns:
this
-
sshConfig
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder sshConfig(ContainerAwsClusterControlPlaneSshConfig sshConfig)
Sets the value ofContainerAwsClusterControlPlane.getSshConfig()- Parameters:
sshConfig- ssh_config block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#ssh_config ContainerAwsCluster#ssh_config}- Returns:
this
-
tags
@Stability(Stable) public ContainerAwsClusterControlPlane.Builder tags(Map<String,String> tags)
Sets the value ofContainerAwsClusterControlPlane.getTags()- Parameters:
tags- Optional. A set of AWS resource tags to propagate to all underlying managed AWS resources. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/container_aws_cluster#tags ContainerAwsCluster#tags}- Returns:
this
-
build
@Stability(Stable) public ContainerAwsClusterControlPlane build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ContainerAwsClusterControlPlane>- Returns:
- a new instance of
ContainerAwsClusterControlPlane - Throws:
NullPointerException- if any required attribute was not provided
-
-