Represents a {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway google_network_services_gateway}.
from cdktf_cdktf_provider_google_beta import google_network_services_gateway
googleNetworkServicesGateway.GoogleNetworkServicesGateway(
scope: Construct,
id: str,
connection: SSHProvisionerConnection | WinrmProvisionerConnection = None,
count: typing.Union[int, float] | TerraformCount = None,
depends_on: typing.List[ITerraformDependable] = None,
for_each: ITerraformIterator = None,
lifecycle: TerraformResourceLifecycle = None,
provider: TerraformProvider = None,
provisioners: typing.List[FileProvisioner | LocalExecProvisioner | RemoteExecProvisioner] = None,
name: str,
ports: typing.List[typing.Union[int, float]],
type: str,
addresses: typing.List[str] = None,
certificate_urls: typing.List[str] = None,
delete_swg_autogen_router_on_destroy: bool | IResolvable = None,
description: str = None,
envoy_headers: str = None,
gateway_security_policy: str = None,
id: str = None,
ip_version: str = None,
labels: typing.Mapping[str] = None,
location: str = None,
network: str = None,
project: str = None,
routing_mode: str = None,
scope: str = None,
server_tls_policy: str = None,
subnetwork: str = None,
timeouts: GoogleNetworkServicesGatewayTimeouts = None
)| Name | Type | Description |
|---|---|---|
scope |
constructs.Construct |
The scope in which to define this construct. |
id |
str |
The scoped construct ID. |
connection |
cdktf.SSHProvisionerConnection | cdktf.WinrmProvisionerConnection |
No description. |
count |
typing.Union[int, float] | cdktf.TerraformCount |
No description. |
depends_on |
typing.List[cdktf.ITerraformDependable] |
No description. |
for_each |
cdktf.ITerraformIterator |
No description. |
lifecycle |
cdktf.TerraformResourceLifecycle |
No description. |
provider |
cdktf.TerraformProvider |
No description. |
provisioners |
typing.List[cdktf.FileProvisioner | cdktf.LocalExecProvisioner | cdktf.RemoteExecProvisioner] |
No description. |
name |
str |
Name of the Gateway resource. |
ports |
typing.List[typing.Union[int, float]] |
One or more port numbers (1-65535), on which the Gateway will receive traffic. |
type |
str |
Immutable. The type of the customer managed gateway. Possible values: ["OPEN_MESH", "SECURE_WEB_GATEWAY"]. |
addresses |
typing.List[str] |
Zero or one IPv4 or IPv6 address on which the Gateway will receive the traffic. |
certificate_urls |
typing.List[str] |
A fully-qualified Certificates URL reference. |
delete_swg_autogen_router_on_destroy |
bool | cdktf.IResolvable |
When deleting a gateway of type 'SECURE_WEB_GATEWAY', this boolean option will also delete auto generated router by the gateway creation. |
description |
str |
A free-text description of the resource. Max length 1024 characters. |
envoy_headers |
str |
Determines if envoy will insert internal debug headers into upstream requests. |
gateway_security_policy |
str |
A fully-qualified GatewaySecurityPolicy URL reference. |
id |
str |
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#id GoogleNetworkServicesGateway#id}. |
ip_version |
str |
The IP Version that will be used by this gateway. Possible values: ["IPV4", "IPV6"]. |
labels |
typing.Mapping[str] |
Set of label tags associated with the Gateway resource. |
location |
str |
The location of the gateway. The default value is 'global'. |
network |
str |
The relative resource name identifying the VPC network that is using this configuration. For example: 'projects/* /global/networks/network-1'. |
project |
str |
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#project GoogleNetworkServicesGateway#project}. |
routing_mode |
str |
The routing mode of the Gateway. |
scope |
str |
Immutable. |
server_tls_policy |
str |
A fully-qualified ServerTLSPolicy URL reference. Specifies how TLS traffic is terminated. If empty, TLS termination is disabled. |
subnetwork |
str |
The relative resource name identifying the subnetwork in which this SWG is allocated. For example: projects/* /regions/us-central1/subnetworks/network-1. |
timeouts |
GoogleNetworkServicesGatewayTimeouts |
timeouts block. |
- Type: constructs.Construct
The scope in which to define this construct.
- Type: str
The scoped construct ID.
Must be unique amongst siblings in the same scope
- Type: cdktf.SSHProvisionerConnection | cdktf.WinrmProvisionerConnection
- Type: typing.Union[int, float] | cdktf.TerraformCount
- Type: typing.List[cdktf.ITerraformDependable]
- Type: cdktf.ITerraformIterator
- Type: cdktf.TerraformResourceLifecycle
- Type: cdktf.TerraformProvider
- Type: typing.List[cdktf.FileProvisioner | cdktf.LocalExecProvisioner | cdktf.RemoteExecProvisioner]
- Type: str
Name of the Gateway resource.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#name GoogleNetworkServicesGateway#name}
- Type: typing.List[typing.Union[int, float]]
One or more port numbers (1-65535), on which the Gateway will receive traffic.
The proxy binds to the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 1 port. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6 and support multiple ports.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#ports GoogleNetworkServicesGateway#ports}
- Type: str
Immutable. The type of the customer managed gateway. Possible values: ["OPEN_MESH", "SECURE_WEB_GATEWAY"].
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#type GoogleNetworkServicesGateway#type}
- Type: typing.List[str]
Zero or one IPv4 or IPv6 address on which the Gateway will receive the traffic.
When no address is provided, an IP from the subnetwork is allocated.
This field only applies to gateways of type 'SECURE_WEB_GATEWAY'. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#addresses GoogleNetworkServicesGateway#addresses}
- Type: typing.List[str]
A fully-qualified Certificates URL reference.
The proxy presents a Certificate (selected based on SNI) when establishing a TLS connection. This feature only applies to gateways of type 'SECURE_WEB_GATEWAY'.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#certificate_urls GoogleNetworkServicesGateway#certificate_urls}
- Type: bool | cdktf.IResolvable
When deleting a gateway of type 'SECURE_WEB_GATEWAY', this boolean option will also delete auto generated router by the gateway creation.
If there is no other gateway of type 'SECURE_WEB_GATEWAY' remaining for that region and network it will be deleted.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#delete_swg_autogen_router_on_destroy GoogleNetworkServicesGateway#delete_swg_autogen_router_on_destroy}
- Type: str
A free-text description of the resource. Max length 1024 characters.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#description GoogleNetworkServicesGateway#description}
- Type: str
Determines if envoy will insert internal debug headers into upstream requests.
Other Envoy headers may still be injected. By default, envoy will not insert any debug headers. Possible values: ["NONE", "DEBUG_HEADERS"]
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#envoy_headers GoogleNetworkServicesGateway#envoy_headers}
- Type: str
A fully-qualified GatewaySecurityPolicy URL reference.
Defines how a server should apply security policy to inbound (VM to Proxy) initiated connections. For example: 'projects/* /locations/* /gatewaySecurityPolicies/swg-policy'. This policy is specific to gateways of type 'SECURE_WEB_GATEWAY'.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#gateway_security_policy GoogleNetworkServicesGateway#gateway_security_policy}
Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
- Type: str
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#id GoogleNetworkServicesGateway#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.
- Type: str
The IP Version that will be used by this gateway. Possible values: ["IPV4", "IPV6"].
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#ip_version GoogleNetworkServicesGateway#ip_version}
- Type: typing.Mapping[str]
Set of label tags associated with the Gateway resource.
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-beta/6.50.0/docs/resources/google_network_services_gateway#labels GoogleNetworkServicesGateway#labels}
- Type: str
The location of the gateway. The default value is 'global'.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#location GoogleNetworkServicesGateway#location}
- Type: str
The relative resource name identifying the VPC network that is using this configuration. For example: 'projects/* /global/networks/network-1'.
Currently, this field is specific to gateways of type 'SECURE_WEB_GATEWAY'.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#network GoogleNetworkServicesGateway#network}
Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
- Type: str
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#project GoogleNetworkServicesGateway#project}.
- Type: str
The routing mode of the Gateway.
This field is configurable only for gateways of type SECURE_WEB_GATEWAY. This field is required for gateways of type SECURE_WEB_GATEWAY. Possible values: ["NEXT_HOP_ROUTING_MODE"]
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#routing_mode GoogleNetworkServicesGateway#routing_mode}
- Type: str
Immutable.
Scope determines how configuration across multiple Gateway instances are merged. The configuration for multiple Gateway instances with the same scope will be merged as presented as a single coniguration to the proxy/load balancer.
Max length 64 characters. Scope should start with a letter and can only have letters, numbers, hyphens.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#scope GoogleNetworkServicesGateway#scope}
- Type: str
A fully-qualified ServerTLSPolicy URL reference. Specifies how TLS traffic is terminated. If empty, TLS termination is disabled.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#server_tls_policy GoogleNetworkServicesGateway#server_tls_policy}
- Type: str
The relative resource name identifying the subnetwork in which this SWG is allocated. For example: projects/* /regions/us-central1/subnetworks/network-1.
Currently, this field is specific to gateways of type 'SECURE_WEB_GATEWAY'.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#subnetwork GoogleNetworkServicesGateway#subnetwork}
Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
timeouts block.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#timeouts GoogleNetworkServicesGateway#timeouts}
| Name | Description |
|---|---|
to_string |
Returns a string representation of this construct. |
add_override |
No description. |
override_logical_id |
Overrides the auto-generated logical ID with a specific ID. |
reset_override_logical_id |
Resets a previously passed logical Id to use the auto-generated logical id again. |
to_hcl_terraform |
No description. |
to_metadata |
No description. |
to_terraform |
Adds this resource to the terraform JSON output. |
add_move_target |
Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move. |
get_any_map_attribute |
No description. |
get_boolean_attribute |
No description. |
get_boolean_map_attribute |
No description. |
get_list_attribute |
No description. |
get_number_attribute |
No description. |
get_number_list_attribute |
No description. |
get_number_map_attribute |
No description. |
get_string_attribute |
No description. |
get_string_map_attribute |
No description. |
has_resource_move |
No description. |
import_from |
No description. |
interpolation_for_attribute |
No description. |
move_from_id |
Move the resource corresponding to "id" to this resource. |
move_to |
Moves this resource to the target resource given by moveTarget. |
move_to_id |
Moves this resource to the resource corresponding to "id". |
put_timeouts |
No description. |
reset_addresses |
No description. |
reset_certificate_urls |
No description. |
reset_delete_swg_autogen_router_on_destroy |
No description. |
reset_description |
No description. |
reset_envoy_headers |
No description. |
reset_gateway_security_policy |
No description. |
reset_id |
No description. |
reset_ip_version |
No description. |
reset_labels |
No description. |
reset_location |
No description. |
reset_network |
No description. |
reset_project |
No description. |
reset_routing_mode |
No description. |
reset_scope |
No description. |
reset_server_tls_policy |
No description. |
reset_subnetwork |
No description. |
reset_timeouts |
No description. |
def to_string() -> strReturns a string representation of this construct.
def add_override(
path: str,
value: typing.Any
) -> None- Type: str
- Type: typing.Any
def override_logical_id(
new_logical_id: str
) -> NoneOverrides the auto-generated logical ID with a specific ID.
- Type: str
The new logical ID to use for this stack element.
def reset_override_logical_id() -> NoneResets a previously passed logical Id to use the auto-generated logical id again.
def to_hcl_terraform() -> typing.Anydef to_metadata() -> typing.Anydef to_terraform() -> typing.AnyAdds this resource to the terraform JSON output.
def add_move_target(
move_target: str
) -> NoneAdds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.
- Type: str
The string move target that will correspond to this resource.
def get_any_map_attribute(
terraform_attribute: str
) -> typing.Mapping[typing.Any]- Type: str
def get_boolean_attribute(
terraform_attribute: str
) -> IResolvable- Type: str
def get_boolean_map_attribute(
terraform_attribute: str
) -> typing.Mapping[bool]- Type: str
def get_list_attribute(
terraform_attribute: str
) -> typing.List[str]- Type: str
def get_number_attribute(
terraform_attribute: str
) -> typing.Union[int, float]- Type: str
def get_number_list_attribute(
terraform_attribute: str
) -> typing.List[typing.Union[int, float]]- Type: str
def get_number_map_attribute(
terraform_attribute: str
) -> typing.Mapping[typing.Union[int, float]]- Type: str
def get_string_attribute(
terraform_attribute: str
) -> str- Type: str
def get_string_map_attribute(
terraform_attribute: str
) -> typing.Mapping[str]- Type: str
def has_resource_move() -> TerraformResourceMoveByTarget | TerraformResourceMoveByIddef import_from(
id: str,
provider: TerraformProvider = None
) -> None- Type: str
- Type: cdktf.TerraformProvider
def interpolation_for_attribute(
terraform_attribute: str
) -> IResolvable- Type: str
def move_from_id(
id: str
) -> NoneMove the resource corresponding to "id" to this resource.
Note that the resource being moved from must be marked as moved using it's instance function.
- Type: str
Full id of resource being moved from, e.g. "aws_s3_bucket.example".
def move_to(
move_target: str,
index: str | typing.Union[int, float] = None
) -> NoneMoves this resource to the target resource given by moveTarget.
- Type: str
The previously set user defined string set by .addMoveTarget() corresponding to the resource to move to.
- Type: str | typing.Union[int, float]
Optional The index corresponding to the key the resource is to appear in the foreach of a resource to move to.
def move_to_id(
id: str
) -> NoneMoves this resource to the resource corresponding to "id".
- Type: str
Full id of resource to move to, e.g. "aws_s3_bucket.example".
def put_timeouts(
create: str = None,
delete: str = None,
update: str = None
) -> None- Type: str
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#create GoogleNetworkServicesGateway#create}.
- Type: str
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#delete GoogleNetworkServicesGateway#delete}.
- Type: str
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#update GoogleNetworkServicesGateway#update}.
def reset_addresses() -> Nonedef reset_certificate_urls() -> Nonedef reset_delete_swg_autogen_router_on_destroy() -> Nonedef reset_description() -> Nonedef reset_envoy_headers() -> Nonedef reset_gateway_security_policy() -> Nonedef reset_id() -> Nonedef reset_ip_version() -> Nonedef reset_labels() -> Nonedef reset_location() -> Nonedef reset_network() -> Nonedef reset_project() -> Nonedef reset_routing_mode() -> Nonedef reset_scope() -> Nonedef reset_server_tls_policy() -> Nonedef reset_subnetwork() -> Nonedef reset_timeouts() -> None| Name | Description |
|---|---|
is_construct |
Checks if x is a construct. |
is_terraform_element |
No description. |
is_terraform_resource |
No description. |
generate_config_for_import |
Generates CDKTF code for importing a GoogleNetworkServicesGateway resource upon running "cdktf plan ". |
from cdktf_cdktf_provider_google_beta import google_network_services_gateway
googleNetworkServicesGateway.GoogleNetworkServicesGateway.is_construct(
x: typing.Any
)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.
- Type: typing.Any
Any object.
from cdktf_cdktf_provider_google_beta import google_network_services_gateway
googleNetworkServicesGateway.GoogleNetworkServicesGateway.is_terraform_element(
x: typing.Any
)- Type: typing.Any
from cdktf_cdktf_provider_google_beta import google_network_services_gateway
googleNetworkServicesGateway.GoogleNetworkServicesGateway.is_terraform_resource(
x: typing.Any
)- Type: typing.Any
from cdktf_cdktf_provider_google_beta import google_network_services_gateway
googleNetworkServicesGateway.GoogleNetworkServicesGateway.generate_config_for_import(
scope: Construct,
import_to_id: str,
import_from_id: str,
provider: TerraformProvider = None
)Generates CDKTF code for importing a GoogleNetworkServicesGateway resource upon running "cdktf plan ".
- Type: constructs.Construct
The scope in which to define this construct.
- Type: str
The construct id used in the generated config for the GoogleNetworkServicesGateway to import.
- Type: str
The id of the existing GoogleNetworkServicesGateway that should be imported.
Refer to the {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#import import section} in the documentation of this resource for the id to use
- Type: cdktf.TerraformProvider
? Optional instance of the provider where the GoogleNetworkServicesGateway to import is found.
| Name | Type | Description |
|---|---|---|
node |
constructs.Node |
The tree node. |
cdktf_stack |
cdktf.TerraformStack |
No description. |
fqn |
str |
No description. |
friendly_unique_id |
str |
No description. |
terraform_meta_arguments |
typing.Mapping[typing.Any] |
No description. |
terraform_resource_type |
str |
No description. |
terraform_generator_metadata |
cdktf.TerraformProviderGeneratorMetadata |
No description. |
connection |
cdktf.SSHProvisionerConnection | cdktf.WinrmProvisionerConnection |
No description. |
count |
typing.Union[int, float] | cdktf.TerraformCount |
No description. |
depends_on |
typing.List[str] |
No description. |
for_each |
cdktf.ITerraformIterator |
No description. |
lifecycle |
cdktf.TerraformResourceLifecycle |
No description. |
provider |
cdktf.TerraformProvider |
No description. |
provisioners |
typing.List[cdktf.FileProvisioner | cdktf.LocalExecProvisioner | cdktf.RemoteExecProvisioner] |
No description. |
create_time |
str |
No description. |
effective_labels |
cdktf.StringMap |
No description. |
self_link |
str |
No description. |
terraform_labels |
cdktf.StringMap |
No description. |
timeouts |
GoogleNetworkServicesGatewayTimeoutsOutputReference |
No description. |
update_time |
str |
No description. |
addresses_input |
typing.List[str] |
No description. |
certificate_urls_input |
typing.List[str] |
No description. |
delete_swg_autogen_router_on_destroy_input |
bool | cdktf.IResolvable |
No description. |
description_input |
str |
No description. |
envoy_headers_input |
str |
No description. |
gateway_security_policy_input |
str |
No description. |
id_input |
str |
No description. |
ip_version_input |
str |
No description. |
labels_input |
typing.Mapping[str] |
No description. |
location_input |
str |
No description. |
name_input |
str |
No description. |
network_input |
str |
No description. |
ports_input |
typing.List[typing.Union[int, float]] |
No description. |
project_input |
str |
No description. |
routing_mode_input |
str |
No description. |
scope_input |
str |
No description. |
server_tls_policy_input |
str |
No description. |
subnetwork_input |
str |
No description. |
timeouts_input |
cdktf.IResolvable | GoogleNetworkServicesGatewayTimeouts |
No description. |
type_input |
str |
No description. |
addresses |
typing.List[str] |
No description. |
certificate_urls |
typing.List[str] |
No description. |
delete_swg_autogen_router_on_destroy |
bool | cdktf.IResolvable |
No description. |
description |
str |
No description. |
envoy_headers |
str |
No description. |
gateway_security_policy |
str |
No description. |
id |
str |
No description. |
ip_version |
str |
No description. |
labels |
typing.Mapping[str] |
No description. |
location |
str |
No description. |
name |
str |
No description. |
network |
str |
No description. |
ports |
typing.List[typing.Union[int, float]] |
No description. |
project |
str |
No description. |
routing_mode |
str |
No description. |
scope |
str |
No description. |
server_tls_policy |
str |
No description. |
subnetwork |
str |
No description. |
type |
str |
No description. |
node: Node- Type: constructs.Node
The tree node.
cdktf_stack: TerraformStack- Type: cdktf.TerraformStack
fqn: str- Type: str
friendly_unique_id: str- Type: str
terraform_meta_arguments: typing.Mapping[typing.Any]- Type: typing.Mapping[typing.Any]
terraform_resource_type: str- Type: str
terraform_generator_metadata: TerraformProviderGeneratorMetadata- Type: cdktf.TerraformProviderGeneratorMetadata
connection: SSHProvisionerConnection | WinrmProvisionerConnection- Type: cdktf.SSHProvisionerConnection | cdktf.WinrmProvisionerConnection
count: typing.Union[int, float] | TerraformCount- Type: typing.Union[int, float] | cdktf.TerraformCount
depends_on: typing.List[str]- Type: typing.List[str]
for_each: ITerraformIterator- Type: cdktf.ITerraformIterator
lifecycle: TerraformResourceLifecycle- Type: cdktf.TerraformResourceLifecycle
provider: TerraformProvider- Type: cdktf.TerraformProvider
provisioners: typing.List[FileProvisioner | LocalExecProvisioner | RemoteExecProvisioner]- Type: typing.List[cdktf.FileProvisioner | cdktf.LocalExecProvisioner | cdktf.RemoteExecProvisioner]
create_time: str- Type: str
effective_labels: StringMap- Type: cdktf.StringMap
self_link: str- Type: str
terraform_labels: StringMap- Type: cdktf.StringMap
timeouts: GoogleNetworkServicesGatewayTimeoutsOutputReferenceupdate_time: str- Type: str
addresses_input: typing.List[str]- Type: typing.List[str]
certificate_urls_input: typing.List[str]- Type: typing.List[str]
delete_swg_autogen_router_on_destroy_input: bool | IResolvable- Type: bool | cdktf.IResolvable
description_input: str- Type: str
envoy_headers_input: str- Type: str
gateway_security_policy_input: str- Type: str
id_input: str- Type: str
ip_version_input: str- Type: str
labels_input: typing.Mapping[str]- Type: typing.Mapping[str]
location_input: str- Type: str
name_input: str- Type: str
network_input: str- Type: str
ports_input: typing.List[typing.Union[int, float]]- Type: typing.List[typing.Union[int, float]]
project_input: str- Type: str
routing_mode_input: str- Type: str
scope_input: str- Type: str
server_tls_policy_input: str- Type: str
subnetwork_input: str- Type: str
timeouts_input: IResolvable | GoogleNetworkServicesGatewayTimeouts- Type: cdktf.IResolvable | GoogleNetworkServicesGatewayTimeouts
type_input: str- Type: str
addresses: typing.List[str]- Type: typing.List[str]
certificate_urls: typing.List[str]- Type: typing.List[str]
delete_swg_autogen_router_on_destroy: bool | IResolvable- Type: bool | cdktf.IResolvable
description: str- Type: str
envoy_headers: str- Type: str
gateway_security_policy: str- Type: str
id: str- Type: str
ip_version: str- Type: str
labels: typing.Mapping[str]- Type: typing.Mapping[str]
location: str- Type: str
name: str- Type: str
network: str- Type: str
ports: typing.List[typing.Union[int, float]]- Type: typing.List[typing.Union[int, float]]
project: str- Type: str
routing_mode: str- Type: str
scope: str- Type: str
server_tls_policy: str- Type: str
subnetwork: str- Type: str
type: str- Type: str
| Name | Type | Description |
|---|---|---|
tfResourceType |
str |
No description. |
tfResourceType: str- Type: str
from cdktf_cdktf_provider_google_beta import google_network_services_gateway
googleNetworkServicesGateway.GoogleNetworkServicesGatewayConfig(
connection: SSHProvisionerConnection | WinrmProvisionerConnection = None,
count: typing.Union[int, float] | TerraformCount = None,
depends_on: typing.List[ITerraformDependable] = None,
for_each: ITerraformIterator = None,
lifecycle: TerraformResourceLifecycle = None,
provider: TerraformProvider = None,
provisioners: typing.List[FileProvisioner | LocalExecProvisioner | RemoteExecProvisioner] = None,
name: str,
ports: typing.List[typing.Union[int, float]],
type: str,
addresses: typing.List[str] = None,
certificate_urls: typing.List[str] = None,
delete_swg_autogen_router_on_destroy: bool | IResolvable = None,
description: str = None,
envoy_headers: str = None,
gateway_security_policy: str = None,
id: str = None,
ip_version: str = None,
labels: typing.Mapping[str] = None,
location: str = None,
network: str = None,
project: str = None,
routing_mode: str = None,
scope: str = None,
server_tls_policy: str = None,
subnetwork: str = None,
timeouts: GoogleNetworkServicesGatewayTimeouts = None
)| Name | Type | Description |
|---|---|---|
connection |
cdktf.SSHProvisionerConnection | cdktf.WinrmProvisionerConnection |
No description. |
count |
typing.Union[int, float] | cdktf.TerraformCount |
No description. |
depends_on |
typing.List[cdktf.ITerraformDependable] |
No description. |
for_each |
cdktf.ITerraformIterator |
No description. |
lifecycle |
cdktf.TerraformResourceLifecycle |
No description. |
provider |
cdktf.TerraformProvider |
No description. |
provisioners |
typing.List[cdktf.FileProvisioner | cdktf.LocalExecProvisioner | cdktf.RemoteExecProvisioner] |
No description. |
name |
str |
Name of the Gateway resource. |
ports |
typing.List[typing.Union[int, float]] |
One or more port numbers (1-65535), on which the Gateway will receive traffic. |
type |
str |
Immutable. The type of the customer managed gateway. Possible values: ["OPEN_MESH", "SECURE_WEB_GATEWAY"]. |
addresses |
typing.List[str] |
Zero or one IPv4 or IPv6 address on which the Gateway will receive the traffic. |
certificate_urls |
typing.List[str] |
A fully-qualified Certificates URL reference. |
delete_swg_autogen_router_on_destroy |
bool | cdktf.IResolvable |
When deleting a gateway of type 'SECURE_WEB_GATEWAY', this boolean option will also delete auto generated router by the gateway creation. |
description |
str |
A free-text description of the resource. Max length 1024 characters. |
envoy_headers |
str |
Determines if envoy will insert internal debug headers into upstream requests. |
gateway_security_policy |
str |
A fully-qualified GatewaySecurityPolicy URL reference. |
id |
str |
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#id GoogleNetworkServicesGateway#id}. |
ip_version |
str |
The IP Version that will be used by this gateway. Possible values: ["IPV4", "IPV6"]. |
labels |
typing.Mapping[str] |
Set of label tags associated with the Gateway resource. |
location |
str |
The location of the gateway. The default value is 'global'. |
network |
str |
The relative resource name identifying the VPC network that is using this configuration. For example: 'projects/* /global/networks/network-1'. |
project |
str |
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#project GoogleNetworkServicesGateway#project}. |
routing_mode |
str |
The routing mode of the Gateway. |
scope |
str |
Immutable. |
server_tls_policy |
str |
A fully-qualified ServerTLSPolicy URL reference. Specifies how TLS traffic is terminated. If empty, TLS termination is disabled. |
subnetwork |
str |
The relative resource name identifying the subnetwork in which this SWG is allocated. For example: projects/* /regions/us-central1/subnetworks/network-1. |
timeouts |
GoogleNetworkServicesGatewayTimeouts |
timeouts block. |
connection: SSHProvisionerConnection | WinrmProvisionerConnection- Type: cdktf.SSHProvisionerConnection | cdktf.WinrmProvisionerConnection
count: typing.Union[int, float] | TerraformCount- Type: typing.Union[int, float] | cdktf.TerraformCount
depends_on: typing.List[ITerraformDependable]- Type: typing.List[cdktf.ITerraformDependable]
for_each: ITerraformIterator- Type: cdktf.ITerraformIterator
lifecycle: TerraformResourceLifecycle- Type: cdktf.TerraformResourceLifecycle
provider: TerraformProvider- Type: cdktf.TerraformProvider
provisioners: typing.List[FileProvisioner | LocalExecProvisioner | RemoteExecProvisioner]- Type: typing.List[cdktf.FileProvisioner | cdktf.LocalExecProvisioner | cdktf.RemoteExecProvisioner]
name: str- Type: str
Name of the Gateway resource.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#name GoogleNetworkServicesGateway#name}
ports: typing.List[typing.Union[int, float]]- Type: typing.List[typing.Union[int, float]]
One or more port numbers (1-65535), on which the Gateway will receive traffic.
The proxy binds to the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 1 port. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6 and support multiple ports.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#ports GoogleNetworkServicesGateway#ports}
type: str- Type: str
Immutable. The type of the customer managed gateway. Possible values: ["OPEN_MESH", "SECURE_WEB_GATEWAY"].
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#type GoogleNetworkServicesGateway#type}
addresses: typing.List[str]- Type: typing.List[str]
Zero or one IPv4 or IPv6 address on which the Gateway will receive the traffic.
When no address is provided, an IP from the subnetwork is allocated.
This field only applies to gateways of type 'SECURE_WEB_GATEWAY'. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#addresses GoogleNetworkServicesGateway#addresses}
certificate_urls: typing.List[str]- Type: typing.List[str]
A fully-qualified Certificates URL reference.
The proxy presents a Certificate (selected based on SNI) when establishing a TLS connection. This feature only applies to gateways of type 'SECURE_WEB_GATEWAY'.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#certificate_urls GoogleNetworkServicesGateway#certificate_urls}
delete_swg_autogen_router_on_destroy: bool | IResolvable- Type: bool | cdktf.IResolvable
When deleting a gateway of type 'SECURE_WEB_GATEWAY', this boolean option will also delete auto generated router by the gateway creation.
If there is no other gateway of type 'SECURE_WEB_GATEWAY' remaining for that region and network it will be deleted.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#delete_swg_autogen_router_on_destroy GoogleNetworkServicesGateway#delete_swg_autogen_router_on_destroy}
description: str- Type: str
A free-text description of the resource. Max length 1024 characters.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#description GoogleNetworkServicesGateway#description}
envoy_headers: str- Type: str
Determines if envoy will insert internal debug headers into upstream requests.
Other Envoy headers may still be injected. By default, envoy will not insert any debug headers. Possible values: ["NONE", "DEBUG_HEADERS"]
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#envoy_headers GoogleNetworkServicesGateway#envoy_headers}
gateway_security_policy: str- Type: str
A fully-qualified GatewaySecurityPolicy URL reference.
Defines how a server should apply security policy to inbound (VM to Proxy) initiated connections. For example: 'projects/* /locations/* /gatewaySecurityPolicies/swg-policy'. This policy is specific to gateways of type 'SECURE_WEB_GATEWAY'.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#gateway_security_policy GoogleNetworkServicesGateway#gateway_security_policy}
Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
id: str- Type: str
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#id GoogleNetworkServicesGateway#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.
ip_version: str- Type: str
The IP Version that will be used by this gateway. Possible values: ["IPV4", "IPV6"].
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#ip_version GoogleNetworkServicesGateway#ip_version}
labels: typing.Mapping[str]- Type: typing.Mapping[str]
Set of label tags associated with the Gateway resource.
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-beta/6.50.0/docs/resources/google_network_services_gateway#labels GoogleNetworkServicesGateway#labels}
location: str- Type: str
The location of the gateway. The default value is 'global'.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#location GoogleNetworkServicesGateway#location}
network: str- Type: str
The relative resource name identifying the VPC network that is using this configuration. For example: 'projects/* /global/networks/network-1'.
Currently, this field is specific to gateways of type 'SECURE_WEB_GATEWAY'.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#network GoogleNetworkServicesGateway#network}
Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
project: str- Type: str
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#project GoogleNetworkServicesGateway#project}.
routing_mode: str- Type: str
The routing mode of the Gateway.
This field is configurable only for gateways of type SECURE_WEB_GATEWAY. This field is required for gateways of type SECURE_WEB_GATEWAY. Possible values: ["NEXT_HOP_ROUTING_MODE"]
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#routing_mode GoogleNetworkServicesGateway#routing_mode}
scope: str- Type: str
Immutable.
Scope determines how configuration across multiple Gateway instances are merged. The configuration for multiple Gateway instances with the same scope will be merged as presented as a single coniguration to the proxy/load balancer.
Max length 64 characters. Scope should start with a letter and can only have letters, numbers, hyphens.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#scope GoogleNetworkServicesGateway#scope}
server_tls_policy: str- Type: str
A fully-qualified ServerTLSPolicy URL reference. Specifies how TLS traffic is terminated. If empty, TLS termination is disabled.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#server_tls_policy GoogleNetworkServicesGateway#server_tls_policy}
subnetwork: str- Type: str
The relative resource name identifying the subnetwork in which this SWG is allocated. For example: projects/* /regions/us-central1/subnetworks/network-1.
Currently, this field is specific to gateways of type 'SECURE_WEB_GATEWAY'.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#subnetwork GoogleNetworkServicesGateway#subnetwork}
Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.
timeouts: GoogleNetworkServicesGatewayTimeoutstimeouts block.
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#timeouts GoogleNetworkServicesGateway#timeouts}
from cdktf_cdktf_provider_google_beta import google_network_services_gateway
googleNetworkServicesGateway.GoogleNetworkServicesGatewayTimeouts(
create: str = None,
delete: str = None,
update: str = None
)| Name | Type | Description |
|---|---|---|
create |
str |
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#create GoogleNetworkServicesGateway#create}. |
delete |
str |
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#delete GoogleNetworkServicesGateway#delete}. |
update |
str |
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#update GoogleNetworkServicesGateway#update}. |
create: str- Type: str
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#create GoogleNetworkServicesGateway#create}.
delete: str- Type: str
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#delete GoogleNetworkServicesGateway#delete}.
update: str- Type: str
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/6.50.0/docs/resources/google_network_services_gateway#update GoogleNetworkServicesGateway#update}.
from cdktf_cdktf_provider_google_beta import google_network_services_gateway
googleNetworkServicesGateway.GoogleNetworkServicesGatewayTimeoutsOutputReference(
terraform_resource: IInterpolatingParent,
terraform_attribute: str
)| Name | Type | Description |
|---|---|---|
terraform_resource |
cdktf.IInterpolatingParent |
The parent resource. |
terraform_attribute |
str |
The attribute on the parent resource this class is referencing. |
- Type: cdktf.IInterpolatingParent
The parent resource.
- Type: str
The attribute on the parent resource this class is referencing.
| Name | Description |
|---|---|
compute_fqn |
No description. |
get_any_map_attribute |
No description. |
get_boolean_attribute |
No description. |
get_boolean_map_attribute |
No description. |
get_list_attribute |
No description. |
get_number_attribute |
No description. |
get_number_list_attribute |
No description. |
get_number_map_attribute |
No description. |
get_string_attribute |
No description. |
get_string_map_attribute |
No description. |
interpolation_for_attribute |
No description. |
resolve |
Produce the Token's value at resolution time. |
to_string |
Return a string representation of this resolvable object. |
reset_create |
No description. |
reset_delete |
No description. |
reset_update |
No description. |
def compute_fqn() -> strdef get_any_map_attribute(
terraform_attribute: str
) -> typing.Mapping[typing.Any]- Type: str
def get_boolean_attribute(
terraform_attribute: str
) -> IResolvable- Type: str
def get_boolean_map_attribute(
terraform_attribute: str
) -> typing.Mapping[bool]- Type: str
def get_list_attribute(
terraform_attribute: str
) -> typing.List[str]- Type: str
def get_number_attribute(
terraform_attribute: str
) -> typing.Union[int, float]- Type: str
def get_number_list_attribute(
terraform_attribute: str
) -> typing.List[typing.Union[int, float]]- Type: str
def get_number_map_attribute(
terraform_attribute: str
) -> typing.Mapping[typing.Union[int, float]]- Type: str
def get_string_attribute(
terraform_attribute: str
) -> str- Type: str
def get_string_map_attribute(
terraform_attribute: str
) -> typing.Mapping[str]- Type: str
def interpolation_for_attribute(
property: str
) -> IResolvable- Type: str
def resolve(
_context: IResolveContext
) -> typing.AnyProduce the Token's value at resolution time.
- Type: cdktf.IResolveContext
def to_string() -> strReturn a string representation of this resolvable object.
Returns a reversible string representation.
def reset_create() -> Nonedef reset_delete() -> Nonedef reset_update() -> None| Name | Type | Description |
|---|---|---|
creation_stack |
typing.List[str] |
The creation stack of this resolvable which will be appended to errors thrown during resolution. |
fqn |
str |
No description. |
create_input |
str |
No description. |
delete_input |
str |
No description. |
update_input |
str |
No description. |
create |
str |
No description. |
delete |
str |
No description. |
update |
str |
No description. |
internal_value |
cdktf.IResolvable | GoogleNetworkServicesGatewayTimeouts |
No description. |
creation_stack: typing.List[str]- Type: typing.List[str]
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.
fqn: str- Type: str
create_input: str- Type: str
delete_input: str- Type: str
update_input: str- Type: str
create: str- Type: str
delete: str- Type: str
update: str- Type: str
internal_value: IResolvable | GoogleNetworkServicesGatewayTimeouts- Type: cdktf.IResolvable | GoogleNetworkServicesGatewayTimeouts