Interface ComputeSubnetworkConfig
-
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable,com.hashicorp.cdktf.TerraformMetaArguments
- All Known Implementing Classes:
ComputeSubnetworkConfig.Jsii$Proxy
@Generated(value="jsii-pacmak/1.102.0 (build e354887)", date="2024-08-31T03:59:19.011Z") @Stability(Stable) public interface ComputeSubnetworkConfig extends software.amazon.jsii.JsiiSerializable, com.hashicorp.cdktf.TerraformMetaArguments
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classComputeSubnetworkConfig.BuilderA builder forComputeSubnetworkConfigstatic classComputeSubnetworkConfig.Jsii$ProxyAn implementation forComputeSubnetworkConfig
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description static ComputeSubnetworkConfig.Builderbuilder()default StringgetDescription()An optional description of this resource.default StringgetExternalIpv6Prefix()The range of external IPv6 addresses that are owned by this subnetwork.default StringgetId()Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#id ComputeSubnetwork#id}.StringgetIpCidrRange()The range of internal addresses that are owned by this subnetwork.default StringgetIpv6AccessType()The access type of IPv6 address this subnet holds.default ComputeSubnetworkLogConfiggetLogConfig()log_config block.StringgetName()The name of the resource, provided by the client when initially creating the resource.StringgetNetwork()The network this subnet belongs to.default ObjectgetPrivateIpGoogleAccess()When enabled, VMs in this subnetwork without external IP addresses can access Google APIs and services by using Private Google Access.default StringgetPrivateIpv6GoogleAccess()The private IPv6 google access type for the VMs in this subnet.default StringgetProject()Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#project ComputeSubnetwork#project}.default StringgetPurpose()The purpose of the resource.default StringgetRegion()The GCP region for this subnetwork.default StringgetRole()The role of subnetwork.default ObjectgetSecondaryIpRange()An array of configurations for secondary IP ranges for VM instances contained in this subnetwork.default ObjectgetSendSecondaryIpRangeIfEmpty()Controls the removal behavior of secondary_ip_range.default StringgetStackType()The stack type for this subnet to identify whether the IPv6 feature is enabled or not.default ComputeSubnetworkTimeoutsgetTimeouts()timeouts block.
-
-
-
Method Detail
-
getIpCidrRange
@Stability(Stable) @NotNull String getIpCidrRange()
The range of internal addresses that are owned by this subnetwork.Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.168.0.0/16. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#ip_cidr_range ComputeSubnetwork#ip_cidr_range}
-
getName
@Stability(Stable) @NotNull String getName()
The name of the resource, provided by the client when initially creating the resource.The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z](%5B-a-z0-9%5D*%5Ba-z0-9%5D)?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#name ComputeSubnetwork#name}
-
getNetwork
@Stability(Stable) @NotNull String getNetwork()
The network this subnet belongs to. Only networks that are in the distributed mode can have subnetworks.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#network ComputeSubnetwork#network}
-
getDescription
@Stability(Stable) @Nullable default String getDescription()
An optional description of this resource.Provide this property when you create the resource. This field can be set only at resource creation time. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#description ComputeSubnetwork#description}
-
getExternalIpv6Prefix
@Stability(Stable) @Nullable default String getExternalIpv6Prefix()
The range of external IPv6 addresses that are owned by this subnetwork.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#external_ipv6_prefix ComputeSubnetwork#external_ipv6_prefix}
-
getId
@Stability(Stable) @Nullable default String getId()
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#id ComputeSubnetwork#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.
-
getIpv6AccessType
@Stability(Stable) @Nullable default String getIpv6AccessType()
The access type of IPv6 address this subnet holds.It's immutable and can only be specified during creation or the first time the subnet is updated into IPV4_IPV6 dual stack. If the ipv6_type is EXTERNAL then this subnet cannot enable direct path. Possible values: ["EXTERNAL", "INTERNAL"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#ipv6_access_type ComputeSubnetwork#ipv6_access_type}
-
getLogConfig
@Stability(Stable) @Nullable default ComputeSubnetworkLogConfig getLogConfig()
log_config block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#log_config ComputeSubnetwork#log_config}
-
getPrivateIpGoogleAccess
@Stability(Stable) @Nullable default Object getPrivateIpGoogleAccess()
When enabled, VMs in this subnetwork without external IP addresses can access Google APIs and services by using Private Google Access.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#private_ip_google_access ComputeSubnetwork#private_ip_google_access}
-
getPrivateIpv6GoogleAccess
@Stability(Stable) @Nullable default String getPrivateIpv6GoogleAccess()
The private IPv6 google access type for the VMs in this subnet.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#private_ipv6_google_access ComputeSubnetwork#private_ipv6_google_access}
-
getProject
@Stability(Stable) @Nullable default String getProject()
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#project ComputeSubnetwork#project}.
-
getPurpose
@Stability(Stable) @Nullable default String getPurpose()
The purpose of the resource.This field can be either 'PRIVATE_RFC_1918', 'REGIONAL_MANAGED_PROXY', 'GLOBAL_MANAGED_PROXY', 'PRIVATE_SERVICE_CONNECT' or 'PRIVATE_NAT'([Beta](https://terraform.io/docs/providers/google/guides/provider_versions.html)). A subnet with purpose set to 'REGIONAL_MANAGED_PROXY' is a user-created subnetwork that is reserved for regional Envoy-based load balancers. A subnetwork in a given region with purpose set to 'GLOBAL_MANAGED_PROXY' is a proxy-only subnet and is shared between all the cross-regional Envoy-based load balancers. A subnetwork with purpose set to 'PRIVATE_SERVICE_CONNECT' reserves the subnet for hosting a Private Service Connect published service. A subnetwork with purpose set to 'PRIVATE_NAT' is used as source range for Private NAT gateways. Note that 'REGIONAL_MANAGED_PROXY' is the preferred setting for all regional Envoy load balancers. If unspecified, the purpose defaults to 'PRIVATE_RFC_1918'. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#purpose ComputeSubnetwork#purpose}
-
getRegion
@Stability(Stable) @Nullable default String getRegion()
The GCP region for this subnetwork.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#region ComputeSubnetwork#region}
-
getRole
@Stability(Stable) @Nullable default String getRole()
The role of subnetwork.Currently, this field is only used when 'purpose' is 'REGIONAL_MANAGED_PROXY'. The value can be set to 'ACTIVE' or 'BACKUP'. An 'ACTIVE' subnetwork is one that is currently being used for Envoy-based load balancers in a region. A 'BACKUP' subnetwork is one that is ready to be promoted to 'ACTIVE' or is currently draining. Possible values: ["ACTIVE", "BACKUP"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#role ComputeSubnetwork#role}
-
getSecondaryIpRange
@Stability(Stable) @Nullable default Object getSecondaryIpRange()
An array of configurations for secondary IP ranges for VM instances contained in this subnetwork.The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges. **Note**: This field uses [attr-as-block mode](https://www.terraform.io/docs/configuration/attr-as-blocks.html) to avoid breaking users during the 0.12 upgrade. To explicitly send a list of zero objects, set 'send_secondary_ip_range_if_empty = true' Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#secondary_ip_range ComputeSubnetwork#secondary_ip_range}
-
getSendSecondaryIpRangeIfEmpty
@Stability(Stable) @Nullable default Object getSendSecondaryIpRangeIfEmpty()
Controls the removal behavior of secondary_ip_range.When false, removing secondary_ip_range from config will not produce a diff as the provider will default to the API's value. When true, the provider will treat removing secondary_ip_range as sending an empty list of secondary IP ranges to the API. Defaults to false. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#send_secondary_ip_range_if_empty ComputeSubnetwork#send_secondary_ip_range_if_empty}
-
getStackType
@Stability(Stable) @Nullable default String getStackType()
The stack type for this subnet to identify whether the IPv6 feature is enabled or not.If not specified IPV4_ONLY will be used. Possible values: ["IPV4_ONLY", "IPV4_IPV6"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#stack_type ComputeSubnetwork#stack_type}
-
getTimeouts
@Stability(Stable) @Nullable default ComputeSubnetworkTimeouts getTimeouts()
timeouts block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_subnetwork#timeouts ComputeSubnetwork#timeouts}
-
builder
@Stability(Stable) static ComputeSubnetworkConfig.Builder builder()
- Returns:
- a
ComputeSubnetworkConfig.BuilderofComputeSubnetworkConfig
-
-