Class ComputeVpnTunnel.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_vpn_tunnel.ComputeVpnTunnel.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeVpnTunnel>
- Enclosing class:
- ComputeVpnTunnel
@Stability(Stable) public static final class ComputeVpnTunnel.Builder extends Object implements software.amazon.jsii.Builder<ComputeVpnTunnel>
A fluent builder forComputeVpnTunnel.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ComputeVpnTunnelbuild()ComputeVpnTunnel.Builderconnection(com.hashicorp.cdktf.SSHProvisionerConnection connection)ComputeVpnTunnel.Builderconnection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)ComputeVpnTunnel.Buildercount(com.hashicorp.cdktf.TerraformCount count)ComputeVpnTunnel.Buildercount(Number count)static ComputeVpnTunnel.Buildercreate(software.constructs.Construct scope, String id)ComputeVpnTunnel.BuilderdependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)ComputeVpnTunnel.Builderdescription(String description)An optional description of this resource.ComputeVpnTunnel.BuilderforEach(com.hashicorp.cdktf.ITerraformIterator forEach)ComputeVpnTunnel.Builderid(String id)Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#id ComputeVpnTunnel#id}.ComputeVpnTunnel.BuilderikeVersion(Number ikeVersion)IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway.ComputeVpnTunnel.Builderlabels(Map<String,String> labels)Labels to apply to this VpnTunnel.ComputeVpnTunnel.Builderlifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)ComputeVpnTunnel.BuilderlocalTrafficSelector(List<String> localTrafficSelector)Local traffic selector to use when establishing the VPN tunnel with peer VPN gateway.ComputeVpnTunnel.Buildername(String name)Name of the resource.ComputeVpnTunnel.BuilderpeerExternalGateway(String peerExternalGateway)URL of the peer side external VPN gateway to which this VPN tunnel is connected.ComputeVpnTunnel.BuilderpeerExternalGatewayInterface(Number peerExternalGatewayInterface)The interface ID of the external VPN gateway to which this VPN tunnel is connected.ComputeVpnTunnel.BuilderpeerGcpGateway(String peerGcpGateway)URL of the peer side HA GCP VPN gateway to which this VPN tunnel is connected.ComputeVpnTunnel.BuilderpeerIp(String peerIp)IP address of the peer VPN gateway.ComputeVpnTunnel.Builderproject(String project)Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#project ComputeVpnTunnel#project}.ComputeVpnTunnel.Builderprovider(com.hashicorp.cdktf.TerraformProvider provider)ComputeVpnTunnel.Builderprovisioners(List<? extends Object> provisioners)ComputeVpnTunnel.Builderregion(String region)The region where the tunnel is located.ComputeVpnTunnel.BuilderremoteTrafficSelector(List<String> remoteTrafficSelector)Remote traffic selector to use when establishing the VPN tunnel with peer VPN gateway.ComputeVpnTunnel.Builderrouter(String router)URL of router resource to be used for dynamic routing.ComputeVpnTunnel.BuildersharedSecret(String sharedSecret)Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway.ComputeVpnTunnel.BuildertargetVpnGateway(String targetVpnGateway)URL of the Target VPN gateway with which this VPN tunnel is associated.ComputeVpnTunnel.Buildertimeouts(ComputeVpnTunnelTimeouts timeouts)timeouts block.ComputeVpnTunnel.BuildervpnGateway(String vpnGateway)URL of the VPN gateway with which this VPN tunnel is associated.ComputeVpnTunnel.BuildervpnGatewayInterface(Number vpnGatewayInterface)The interface ID of the VPN gateway with which this VPN tunnel is associated.
-
-
-
Method Detail
-
create
@Stability(Stable) public static ComputeVpnTunnel.Builder create(software.constructs.Construct scope, String id)
- Parameters:
scope- The scope in which to define this construct. This parameter is required.id- The scoped construct ID. This parameter is required.- Returns:
- a new instance of
ComputeVpnTunnel.Builder.
-
connection
@Stability(Experimental) public ComputeVpnTunnel.Builder connection(com.hashicorp.cdktf.SSHProvisionerConnection connection)
- Parameters:
connection- This parameter is required.- Returns:
this
-
connection
@Stability(Experimental) public ComputeVpnTunnel.Builder connection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
- Parameters:
connection- This parameter is required.- Returns:
this
-
count
@Stability(Experimental) public ComputeVpnTunnel.Builder count(Number count)
- Parameters:
count- This parameter is required.- Returns:
this
-
count
@Stability(Experimental) public ComputeVpnTunnel.Builder count(com.hashicorp.cdktf.TerraformCount count)
- Parameters:
count- This parameter is required.- Returns:
this
-
dependsOn
@Stability(Experimental) public ComputeVpnTunnel.Builder dependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
- Parameters:
dependsOn- This parameter is required.- Returns:
this
-
forEach
@Stability(Experimental) public ComputeVpnTunnel.Builder forEach(com.hashicorp.cdktf.ITerraformIterator forEach)
- Parameters:
forEach- This parameter is required.- Returns:
this
-
lifecycle
@Stability(Experimental) public ComputeVpnTunnel.Builder lifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
- Parameters:
lifecycle- This parameter is required.- Returns:
this
-
provider
@Stability(Experimental) public ComputeVpnTunnel.Builder provider(com.hashicorp.cdktf.TerraformProvider provider)
- Parameters:
provider- This parameter is required.- Returns:
this
-
provisioners
@Stability(Experimental) public ComputeVpnTunnel.Builder provisioners(List<? extends Object> provisioners)
- Parameters:
provisioners- This parameter is required.- Returns:
this
-
name
@Stability(Stable) public ComputeVpnTunnel.Builder name(String name)
Name of 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_vpn_tunnel#name ComputeVpnTunnel#name}
- Parameters:
name- Name of the resource. This parameter is required.- Returns:
this
-
sharedSecret
@Stability(Stable) public ComputeVpnTunnel.Builder sharedSecret(String sharedSecret)
Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#shared_secret ComputeVpnTunnel#shared_secret}
- Parameters:
sharedSecret- Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway. This parameter is required.- Returns:
this
-
description
@Stability(Stable) public ComputeVpnTunnel.Builder description(String description)
An optional description of this resource.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#description ComputeVpnTunnel#description}
- Parameters:
description- An optional description of this resource. This parameter is required.- Returns:
this
-
id
@Stability(Stable) public ComputeVpnTunnel.Builder id(String id)
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#id ComputeVpnTunnel#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.
- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#id ComputeVpnTunnel#id}. This parameter is required.- Returns:
this
-
ikeVersion
@Stability(Stable) public ComputeVpnTunnel.Builder ikeVersion(Number ikeVersion)
IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway.Acceptable IKE versions are 1 or 2. Default version is 2. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#ike_version ComputeVpnTunnel#ike_version}
- Parameters:
ikeVersion- IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway. This parameter is required.- Returns:
this
-
labels
@Stability(Stable) public ComputeVpnTunnel.Builder labels(Map<String,String> labels)
Labels to apply to this VpnTunnel.**Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#labels ComputeVpnTunnel#labels}
- Parameters:
labels- Labels to apply to this VpnTunnel. This parameter is required.- Returns:
this
-
localTrafficSelector
@Stability(Stable) public ComputeVpnTunnel.Builder localTrafficSelector(List<String> localTrafficSelector)
Local traffic selector to use when establishing the VPN tunnel with peer VPN gateway.The value should be a CIDR formatted string, for example '192.168.0.0/16'. The ranges should be disjoint. Only IPv4 is supported. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#local_traffic_selector ComputeVpnTunnel#local_traffic_selector}
- Parameters:
localTrafficSelector- Local traffic selector to use when establishing the VPN tunnel with peer VPN gateway. This parameter is required.- Returns:
this
-
peerExternalGateway
@Stability(Stable) public ComputeVpnTunnel.Builder peerExternalGateway(String peerExternalGateway)
URL of the peer side external VPN gateway to which this VPN tunnel is connected.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#peer_external_gateway ComputeVpnTunnel#peer_external_gateway}
- Parameters:
peerExternalGateway- URL of the peer side external VPN gateway to which this VPN tunnel is connected. This parameter is required.- Returns:
this
-
peerExternalGatewayInterface
@Stability(Stable) public ComputeVpnTunnel.Builder peerExternalGatewayInterface(Number peerExternalGatewayInterface)
The interface ID of the external VPN gateway to which this VPN tunnel is connected.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#peer_external_gateway_interface ComputeVpnTunnel#peer_external_gateway_interface}
- Parameters:
peerExternalGatewayInterface- The interface ID of the external VPN gateway to which this VPN tunnel is connected. This parameter is required.- Returns:
this
-
peerGcpGateway
@Stability(Stable) public ComputeVpnTunnel.Builder peerGcpGateway(String peerGcpGateway)
URL of the peer side HA GCP VPN gateway to which this VPN tunnel is connected.If provided, the VPN tunnel will automatically use the same vpn_gateway_interface ID in the peer GCP VPN gateway. This field must reference a 'google_compute_ha_vpn_gateway' resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#peer_gcp_gateway ComputeVpnTunnel#peer_gcp_gateway}
- Parameters:
peerGcpGateway- URL of the peer side HA GCP VPN gateway to which this VPN tunnel is connected. This parameter is required.- Returns:
this
-
peerIp
@Stability(Stable) public ComputeVpnTunnel.Builder peerIp(String peerIp)
IP address of the peer VPN gateway. Only IPv4 is supported.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#peer_ip ComputeVpnTunnel#peer_ip}
- Parameters:
peerIp- IP address of the peer VPN gateway. Only IPv4 is supported. This parameter is required.- Returns:
this
-
project
@Stability(Stable) public ComputeVpnTunnel.Builder project(String project)
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#project ComputeVpnTunnel#project}.- Parameters:
project- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#project ComputeVpnTunnel#project}. This parameter is required.- Returns:
this
-
region
@Stability(Stable) public ComputeVpnTunnel.Builder region(String region)
The region where the tunnel is located. If unset, is set to the region of 'target_vpn_gateway'.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#region ComputeVpnTunnel#region}
- Parameters:
region- The region where the tunnel is located. If unset, is set to the region of 'target_vpn_gateway'. This parameter is required.- Returns:
this
-
remoteTrafficSelector
@Stability(Stable) public ComputeVpnTunnel.Builder remoteTrafficSelector(List<String> remoteTrafficSelector)
Remote traffic selector to use when establishing the VPN tunnel with peer VPN gateway.The value should be a CIDR formatted string, for example '192.168.0.0/16'. The ranges should be disjoint. Only IPv4 is supported. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#remote_traffic_selector ComputeVpnTunnel#remote_traffic_selector}
- Parameters:
remoteTrafficSelector- Remote traffic selector to use when establishing the VPN tunnel with peer VPN gateway. This parameter is required.- Returns:
this
-
router
@Stability(Stable) public ComputeVpnTunnel.Builder router(String router)
URL of router resource to be used for dynamic routing.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#router ComputeVpnTunnel#router}
- Parameters:
router- URL of router resource to be used for dynamic routing. This parameter is required.- Returns:
this
-
targetVpnGateway
@Stability(Stable) public ComputeVpnTunnel.Builder targetVpnGateway(String targetVpnGateway)
URL of the Target VPN gateway with which this VPN tunnel is associated.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#target_vpn_gateway ComputeVpnTunnel#target_vpn_gateway}
- Parameters:
targetVpnGateway- URL of the Target VPN gateway with which this VPN tunnel is associated. This parameter is required.- Returns:
this
-
timeouts
@Stability(Stable) public ComputeVpnTunnel.Builder timeouts(ComputeVpnTunnelTimeouts timeouts)
timeouts block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#timeouts ComputeVpnTunnel#timeouts}
- Parameters:
timeouts- timeouts block. This parameter is required.- Returns:
this
-
vpnGateway
@Stability(Stable) public ComputeVpnTunnel.Builder vpnGateway(String vpnGateway)
URL of the VPN gateway with which this VPN tunnel is associated.This must be used if a High Availability VPN gateway resource is created. This field must reference a 'google_compute_ha_vpn_gateway' resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#vpn_gateway ComputeVpnTunnel#vpn_gateway}
- Parameters:
vpnGateway- URL of the VPN gateway with which this VPN tunnel is associated. This parameter is required.- Returns:
this
-
vpnGatewayInterface
@Stability(Stable) public ComputeVpnTunnel.Builder vpnGatewayInterface(Number vpnGatewayInterface)
The interface ID of the VPN gateway with which this VPN tunnel is associated.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_vpn_tunnel#vpn_gateway_interface ComputeVpnTunnel#vpn_gateway_interface}
- Parameters:
vpnGatewayInterface- The interface ID of the VPN gateway with which this VPN tunnel is associated. This parameter is required.- Returns:
this
-
build
@Stability(Stable) public ComputeVpnTunnel build()
- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeVpnTunnel>- Returns:
- a newly built instance of
ComputeVpnTunnel.
-
-