Documentation ¶
Index ¶
- func ComputeVpnTunnel_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func ComputeVpnTunnel_IsConstruct(x interface{}) *bool
- func ComputeVpnTunnel_IsTerraformElement(x interface{}) *bool
- func ComputeVpnTunnel_IsTerraformResource(x interface{}) *bool
- func ComputeVpnTunnel_TfResourceType() *string
- func NewComputeVpnTunnelTimeoutsOutputReference_Override(c ComputeVpnTunnelTimeoutsOutputReference, ...)
- func NewComputeVpnTunnel_Override(c ComputeVpnTunnel, scope constructs.Construct, id *string, ...)
- type ComputeVpnTunnel
- type ComputeVpnTunnelConfig
- type ComputeVpnTunnelTimeouts
- type ComputeVpnTunnelTimeoutsOutputReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ComputeVpnTunnel_GenerateConfigForImport ¶
func ComputeVpnTunnel_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource
Generates CDKTF code for importing a ComputeVpnTunnel resource upon running "cdktf plan <stack-name>".
func ComputeVpnTunnel_IsConstruct ¶
func ComputeVpnTunnel_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func ComputeVpnTunnel_IsTerraformElement ¶
func ComputeVpnTunnel_IsTerraformElement(x interface{}) *bool
Experimental.
func ComputeVpnTunnel_IsTerraformResource ¶
func ComputeVpnTunnel_IsTerraformResource(x interface{}) *bool
Experimental.
func ComputeVpnTunnel_TfResourceType ¶
func ComputeVpnTunnel_TfResourceType() *string
func NewComputeVpnTunnelTimeoutsOutputReference_Override ¶
func NewComputeVpnTunnelTimeoutsOutputReference_Override(c ComputeVpnTunnelTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewComputeVpnTunnel_Override ¶
func NewComputeVpnTunnel_Override(c ComputeVpnTunnel, scope constructs.Construct, id *string, config *ComputeVpnTunnelConfig)
Create a new {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel google_compute_vpn_tunnel} Resource.
Types ¶
type ComputeVpnTunnel ¶
type ComputeVpnTunnel interface { cdktf.TerraformResource // Experimental. CdktfStack() cdktf.TerraformStack // Experimental. Connection() interface{} // Experimental. SetConnection(val interface{}) // Experimental. ConstructNodeMetadata() *map[string]interface{} // Experimental. Count() interface{} // Experimental. SetCount(val interface{}) CreationTimestamp() *string // Experimental. DependsOn() *[]*string // Experimental. SetDependsOn(val *[]*string) Description() *string SetDescription(val *string) DescriptionInput() *string DetailedStatus() *string EffectiveLabels() cdktf.StringMap // Experimental. ForEach() cdktf.ITerraformIterator // Experimental. SetForEach(val cdktf.ITerraformIterator) // Experimental. Fqn() *string // Experimental. FriendlyUniqueId() *string Id() *string SetId(val *string) IdInput() *string IkeVersion() *float64 SetIkeVersion(val *float64) IkeVersionInput() *float64 Labels() *map[string]*string SetLabels(val *map[string]*string) LabelsInput() *map[string]*string // Experimental. Lifecycle() *cdktf.TerraformResourceLifecycle // Experimental. SetLifecycle(val *cdktf.TerraformResourceLifecycle) LocalTrafficSelector() *[]*string SetLocalTrafficSelector(val *[]*string) LocalTrafficSelectorInput() *[]*string Name() *string SetName(val *string) NameInput() *string // The tree node. Node() constructs.Node PeerExternalGateway() *string SetPeerExternalGateway(val *string) PeerExternalGatewayInput() *string PeerExternalGatewayInterface() *float64 SetPeerExternalGatewayInterface(val *float64) PeerExternalGatewayInterfaceInput() *float64 PeerGcpGateway() *string SetPeerGcpGateway(val *string) PeerGcpGatewayInput() *string PeerIp() *string SetPeerIp(val *string) PeerIpInput() *string Project() *string SetProject(val *string) ProjectInput() *string // Experimental. Provider() cdktf.TerraformProvider // Experimental. SetProvider(val cdktf.TerraformProvider) // Experimental. Provisioners() *[]interface{} // Experimental. SetProvisioners(val *[]interface{}) // Experimental. RawOverrides() interface{} Region() *string SetRegion(val *string) RegionInput() *string RemoteTrafficSelector() *[]*string SetRemoteTrafficSelector(val *[]*string) RemoteTrafficSelectorInput() *[]*string Router() *string SetRouter(val *string) RouterInput() *string SelfLink() *string TargetVpnGateway() *string SetTargetVpnGateway(val *string) TargetVpnGatewayInput() *string // Experimental. TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata TerraformLabels() cdktf.StringMap // Experimental. TerraformMetaArguments() *map[string]interface{} // Experimental. TerraformResourceType() *string Timeouts() ComputeVpnTunnelTimeoutsOutputReference TimeoutsInput() interface{} TunnelId() *string VpnGateway() *string SetVpnGateway(val *string) VpnGatewayInput() *string VpnGatewayInterface() *float64 SetVpnGatewayInterface(val *float64) VpnGatewayInterfaceInput() *float64 // Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move. // Experimental. AddMoveTarget(moveTarget *string) // Experimental. AddOverride(path *string, value interface{}) // Experimental. GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{} // Experimental. GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable // Experimental. GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool // Experimental. GetListAttribute(terraformAttribute *string) *[]*string // Experimental. GetNumberAttribute(terraformAttribute *string) *float64 // Experimental. GetNumberListAttribute(terraformAttribute *string) *[]*float64 // Experimental. GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64 // Experimental. GetStringAttribute(terraformAttribute *string) *string // Experimental. GetStringMapAttribute(terraformAttribute *string) *map[string]*string // Experimental. ImportFrom(id *string, provider cdktf.TerraformProvider) // Experimental. InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable // Moves this resource to the target resource given by moveTarget. // Experimental. MoveTo(moveTarget *string, index interface{}) // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) PutTimeouts(value *ComputeVpnTunnelTimeouts) ResetDescription() ResetId() ResetIkeVersion() ResetLabels() ResetLocalTrafficSelector() // Resets a previously passed logical Id to use the auto-generated logical id again. // Experimental. ResetOverrideLogicalId() ResetPeerExternalGateway() ResetPeerExternalGatewayInterface() ResetPeerGcpGateway() ResetPeerIp() ResetProject() ResetRegion() ResetRemoteTrafficSelector() ResetRouter() ResetTargetVpnGateway() ResetTimeouts() ResetVpnGateway() ResetVpnGatewayInterface() SynthesizeAttributes() *map[string]interface{} // Experimental. ToMetadata() interface{} // Returns a string representation of this construct. ToString() *string // Adds this resource to the terraform JSON output. // Experimental. ToTerraform() interface{} }
Represents a {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel google_compute_vpn_tunnel}.
func NewComputeVpnTunnel ¶
func NewComputeVpnTunnel(scope constructs.Construct, id *string, config *ComputeVpnTunnelConfig) ComputeVpnTunnel
Create a new {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel google_compute_vpn_tunnel} Resource.
type ComputeVpnTunnelConfig ¶
type ComputeVpnTunnelConfig struct { // Experimental. Connection interface{} `field:"optional" json:"connection" yaml:"connection"` // Experimental. Count interface{} `field:"optional" json:"count" yaml:"count"` // Experimental. DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"` // Experimental. ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"` // Experimental. Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"` // Experimental. Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"` // Experimental. Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"` // 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]([-a-z0-9]*[a-z0-9])?' 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.7.0/docs/resources/compute_vpn_tunnel#name ComputeVpnTunnel#name} Name *string `field:"required" json:"name" yaml:"name"` // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel#shared_secret ComputeVpnTunnel#shared_secret} SharedSecret *string `field:"required" json:"sharedSecret" yaml:"sharedSecret"` // An optional description of this resource. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel#description ComputeVpnTunnel#description} Description *string `field:"optional" json:"description" yaml:"description"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/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. Id *string `field:"optional" json:"id" yaml:"id"` // 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.7.0/docs/resources/compute_vpn_tunnel#ike_version ComputeVpnTunnel#ike_version} IkeVersion *float64 `field:"optional" json:"ikeVersion" yaml:"ikeVersion"` // 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.7.0/docs/resources/compute_vpn_tunnel#labels ComputeVpnTunnel#labels} Labels *map[string]*string `field:"optional" json:"labels" yaml:"labels"` // 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.7.0/docs/resources/compute_vpn_tunnel#local_traffic_selector ComputeVpnTunnel#local_traffic_selector} LocalTrafficSelector *[]*string `field:"optional" json:"localTrafficSelector" yaml:"localTrafficSelector"` // 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.7.0/docs/resources/compute_vpn_tunnel#peer_external_gateway ComputeVpnTunnel#peer_external_gateway} PeerExternalGateway *string `field:"optional" json:"peerExternalGateway" yaml:"peerExternalGateway"` // 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.7.0/docs/resources/compute_vpn_tunnel#peer_external_gateway_interface ComputeVpnTunnel#peer_external_gateway_interface} PeerExternalGatewayInterface *float64 `field:"optional" json:"peerExternalGatewayInterface" yaml:"peerExternalGatewayInterface"` // 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.7.0/docs/resources/compute_vpn_tunnel#peer_gcp_gateway ComputeVpnTunnel#peer_gcp_gateway} PeerGcpGateway *string `field:"optional" json:"peerGcpGateway" yaml:"peerGcpGateway"` // IP address of the peer VPN gateway. Only IPv4 is supported. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel#peer_ip ComputeVpnTunnel#peer_ip} PeerIp *string `field:"optional" json:"peerIp" yaml:"peerIp"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel#project ComputeVpnTunnel#project}. Project *string `field:"optional" json:"project" yaml:"project"` // 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.7.0/docs/resources/compute_vpn_tunnel#region ComputeVpnTunnel#region} Region *string `field:"optional" json:"region" yaml:"region"` // 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.7.0/docs/resources/compute_vpn_tunnel#remote_traffic_selector ComputeVpnTunnel#remote_traffic_selector} RemoteTrafficSelector *[]*string `field:"optional" json:"remoteTrafficSelector" yaml:"remoteTrafficSelector"` // URL of router resource to be used for dynamic routing. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel#router ComputeVpnTunnel#router} Router *string `field:"optional" json:"router" yaml:"router"` // 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.7.0/docs/resources/compute_vpn_tunnel#target_vpn_gateway ComputeVpnTunnel#target_vpn_gateway} TargetVpnGateway *string `field:"optional" json:"targetVpnGateway" yaml:"targetVpnGateway"` // timeouts block. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel#timeouts ComputeVpnTunnel#timeouts} Timeouts *ComputeVpnTunnelTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"` // 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.7.0/docs/resources/compute_vpn_tunnel#vpn_gateway ComputeVpnTunnel#vpn_gateway} VpnGateway *string `field:"optional" json:"vpnGateway" yaml:"vpnGateway"` // 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.7.0/docs/resources/compute_vpn_tunnel#vpn_gateway_interface ComputeVpnTunnel#vpn_gateway_interface} VpnGatewayInterface *float64 `field:"optional" json:"vpnGatewayInterface" yaml:"vpnGatewayInterface"` }
type ComputeVpnTunnelTimeouts ¶
type ComputeVpnTunnelTimeouts struct { // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel#create ComputeVpnTunnel#create}. Create *string `field:"optional" json:"create" yaml:"create"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel#delete ComputeVpnTunnel#delete}. Delete *string `field:"optional" json:"delete" yaml:"delete"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.7.0/docs/resources/compute_vpn_tunnel#update ComputeVpnTunnel#update}. Update *string `field:"optional" json:"update" yaml:"update"` }
type ComputeVpnTunnelTimeoutsOutputReference ¶
type ComputeVpnTunnelTimeoutsOutputReference interface { cdktf.ComplexObject // the index of the complex object in a list. // Experimental. ComplexObjectIndex() interface{} // Experimental. SetComplexObjectIndex(val interface{}) // set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items. // Experimental. ComplexObjectIsFromSet() *bool // Experimental. SetComplexObjectIsFromSet(val *bool) Create() *string SetCreate(val *string) CreateInput() *string // The creation stack of this resolvable which will be appended to errors thrown during resolution. // // If this returns an empty array the stack will not be attached. // Experimental. CreationStack() *[]*string Delete() *string SetDelete(val *string) DeleteInput() *string // Experimental. Fqn() *string InternalValue() interface{} SetInternalValue(val interface{}) // Experimental. TerraformAttribute() *string // Experimental. SetTerraformAttribute(val *string) // Experimental. TerraformResource() cdktf.IInterpolatingParent // Experimental. SetTerraformResource(val cdktf.IInterpolatingParent) Update() *string SetUpdate(val *string) UpdateInput() *string // Experimental. ComputeFqn() *string // Experimental. GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{} // Experimental. GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable // Experimental. GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool // Experimental. GetListAttribute(terraformAttribute *string) *[]*string // Experimental. GetNumberAttribute(terraformAttribute *string) *float64 // Experimental. GetNumberListAttribute(terraformAttribute *string) *[]*float64 // Experimental. GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64 // Experimental. GetStringAttribute(terraformAttribute *string) *string // Experimental. GetStringMapAttribute(terraformAttribute *string) *map[string]*string // Experimental. InterpolationAsList() cdktf.IResolvable // Experimental. InterpolationForAttribute(property *string) cdktf.IResolvable ResetCreate() ResetDelete() ResetUpdate() // Produce the Token's value at resolution time. // Experimental. Resolve(_context cdktf.IResolveContext) interface{} // Return a string representation of this resolvable object. // // Returns a reversible string representation. // Experimental. ToString() *string }
func NewComputeVpnTunnelTimeoutsOutputReference ¶
func NewComputeVpnTunnelTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) ComputeVpnTunnelTimeoutsOutputReference