Class ComposerEnvironmentConfigNodeConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.composer_environment.ComposerEnvironmentConfigNodeConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComposerEnvironmentConfigNodeConfig>
- Enclosing interface:
- ComposerEnvironmentConfigNodeConfig
@Stability(Stable) public static final class ComposerEnvironmentConfigNodeConfig.Builder extends Object implements software.amazon.jsii.Builder<ComposerEnvironmentConfigNodeConfig>
A builder forComposerEnvironmentConfigNodeConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
diskSizeGb
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder diskSizeGb(Number diskSizeGb)
Sets the value ofComposerEnvironmentConfigNodeConfig.getDiskSizeGb()- Parameters:
diskSizeGb- The disk size in GB used for node VMs. Minimum size is 20GB. If unspecified, defaults to 100GB. Cannot be updated. This field is supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#disk_size_gb ComposerEnvironment#disk_size_gb}- Returns:
this
-
enableIpMasqAgent
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder enableIpMasqAgent(Boolean enableIpMasqAgent)
Sets the value ofComposerEnvironmentConfigNodeConfig.getEnableIpMasqAgent()- Parameters:
enableIpMasqAgent- Deploys 'ip-masq-agent' daemon set in the GKE cluster and defines nonMasqueradeCIDRs equals to pod IP range so IP masquerading is used for all destination addresses, except between pods traffic. See: https://cloud.google.com/kubernetes-engine/docs/how-to/ip-masquerade-agent Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#enable_ip_masq_agent ComposerEnvironment#enable_ip_masq_agent}- Returns:
this
-
enableIpMasqAgent
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder enableIpMasqAgent(com.hashicorp.cdktf.IResolvable enableIpMasqAgent)
Sets the value ofComposerEnvironmentConfigNodeConfig.getEnableIpMasqAgent()- Parameters:
enableIpMasqAgent- Deploys 'ip-masq-agent' daemon set in the GKE cluster and defines nonMasqueradeCIDRs equals to pod IP range so IP masquerading is used for all destination addresses, except between pods traffic. See: https://cloud.google.com/kubernetes-engine/docs/how-to/ip-masquerade-agent Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#enable_ip_masq_agent ComposerEnvironment#enable_ip_masq_agent}- Returns:
this
-
ipAllocationPolicy
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder ipAllocationPolicy(com.hashicorp.cdktf.IResolvable ipAllocationPolicy)
Sets the value ofComposerEnvironmentConfigNodeConfig.getIpAllocationPolicy()- Parameters:
ipAllocationPolicy- Configuration for controlling how IPs are allocated in the GKE cluster. Cannot be updated. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#ip_allocation_policy ComposerEnvironment#ip_allocation_policy}- Returns:
this
-
ipAllocationPolicy
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder ipAllocationPolicy(List<? extends ComposerEnvironmentConfigNodeConfigIpAllocationPolicy> ipAllocationPolicy)
Sets the value ofComposerEnvironmentConfigNodeConfig.getIpAllocationPolicy()- Parameters:
ipAllocationPolicy- Configuration for controlling how IPs are allocated in the GKE cluster. Cannot be updated. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#ip_allocation_policy ComposerEnvironment#ip_allocation_policy}- Returns:
this
-
machineType
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder machineType(String machineType)
Sets the value ofComposerEnvironmentConfigNodeConfig.getMachineType()- Parameters:
machineType- The Compute Engine machine type used for cluster instances, specified as a name or relative resource name. For example: "projects/{project}/zones/{zone}/machineTypes/{machineType}". Must belong to the enclosing environment's project and region/zone. This field is supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#machine_type ComposerEnvironment#machine_type}- Returns:
this
-
network
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder network(String network)
Sets the value ofComposerEnvironmentConfigNodeConfig.getNetwork()- Parameters:
network- The Compute Engine machine type used for cluster instances, specified as a name or relative resource name. For example: "projects/{project}/zones/{zone}/machineTypes/{machineType}". Must belong to the enclosing environment's project and region/zone. The network must belong to the environment's project. If unspecified, the "default" network ID in the environment's project is used. If a Custom Subnet Network is provided, subnetwork must also be provided. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#network ComposerEnvironment#network}- Returns:
this
-
oauthScopes
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder oauthScopes(List<String> oauthScopes)
Sets the value ofComposerEnvironmentConfigNodeConfig.getOauthScopes()- Parameters:
oauthScopes- The set of Google API scopes to be made available on all node VMs. Cannot be updated. If empty, defaults to ["https://www.googleapis.com/auth/cloud-platform"]. This field is supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#oauth_scopes ComposerEnvironment#oauth_scopes}- Returns:
this
-
serviceAccount
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder serviceAccount(String serviceAccount)
Sets the value ofComposerEnvironmentConfigNodeConfig.getServiceAccount()- Parameters:
serviceAccount- The Google Cloud Platform Service Account to be used by the node VMs. If a service account is not specified, the "default" Compute Engine service account is used. Cannot be updated. If given, note that the service account must have roles/composer.worker for any GCP resources created under the Cloud Composer Environment. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#service_account ComposerEnvironment#service_account}- Returns:
this
-
subnetwork
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder subnetwork(String subnetwork)
Sets the value ofComposerEnvironmentConfigNodeConfig.getSubnetwork()- Parameters:
subnetwork- The Compute Engine subnetwork to be used for machine communications, specified as a self-link, relative resource name (e.g. "projects/{project}/regions/{region}/subnetworks/{subnetwork}"), or by name. If subnetwork is provided, network must also be provided and the subnetwork must belong to the enclosing environment's project and region. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#subnetwork ComposerEnvironment#subnetwork}- Returns:
this
-
tags
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder tags(List<String> tags)
Sets the value ofComposerEnvironmentConfigNodeConfig.getTags()- Parameters:
tags- The list of instance tags applied to all node VMs. Tags are used to identify valid sources or targets for network firewalls. Each tag within the list must comply with RFC1035. Cannot be updated. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#tags ComposerEnvironment#tags}- Returns:
this
-
zone
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig.Builder zone(String zone)
Sets the value ofComposerEnvironmentConfigNodeConfig.getZone()- Parameters:
zone- The Compute Engine zone in which to deploy the VMs running the Apache Airflow software, specified as the zone name or relative resource name (e.g. "projects/{project}/zones/{zone}"). Must belong to the enclosing environment's project and region. This field is supported for Cloud Composer environments in versions composer-1..-airflow-..*. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/composer_environment#zone ComposerEnvironment#zone}- Returns:
this
-
build
@Stability(Stable) public ComposerEnvironmentConfigNodeConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComposerEnvironmentConfigNodeConfig>- Returns:
- a new instance of
ComposerEnvironmentConfigNodeConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-