Documentation ¶
Index ¶
- func GoogleComputeRouterNat_IsConstruct(x interface{}) *bool
- func GoogleComputeRouterNat_IsTerraformElement(x interface{}) *bool
- func GoogleComputeRouterNat_IsTerraformResource(x interface{}) *bool
- func GoogleComputeRouterNat_TfResourceType() *string
- func NewGoogleComputeRouterNatLogConfigOutputReference_Override(g GoogleComputeRouterNatLogConfigOutputReference, ...)
- func NewGoogleComputeRouterNatRulesActionOutputReference_Override(g GoogleComputeRouterNatRulesActionOutputReference, ...)
- func NewGoogleComputeRouterNatRulesList_Override(g GoogleComputeRouterNatRulesList, ...)
- func NewGoogleComputeRouterNatRulesOutputReference_Override(g GoogleComputeRouterNatRulesOutputReference, ...)
- func NewGoogleComputeRouterNatSubnetworkList_Override(g GoogleComputeRouterNatSubnetworkList, ...)
- func NewGoogleComputeRouterNatSubnetworkOutputReference_Override(g GoogleComputeRouterNatSubnetworkOutputReference, ...)
- func NewGoogleComputeRouterNatTimeoutsOutputReference_Override(g GoogleComputeRouterNatTimeoutsOutputReference, ...)
- func NewGoogleComputeRouterNat_Override(g GoogleComputeRouterNat, scope constructs.Construct, id *string, ...)
- type GoogleComputeRouterNat
- type GoogleComputeRouterNatConfig
- type GoogleComputeRouterNatLogConfig
- type GoogleComputeRouterNatLogConfigOutputReference
- type GoogleComputeRouterNatRules
- type GoogleComputeRouterNatRulesAction
- type GoogleComputeRouterNatRulesActionOutputReference
- type GoogleComputeRouterNatRulesList
- type GoogleComputeRouterNatRulesOutputReference
- type GoogleComputeRouterNatSubnetwork
- type GoogleComputeRouterNatSubnetworkList
- type GoogleComputeRouterNatSubnetworkOutputReference
- type GoogleComputeRouterNatTimeouts
- type GoogleComputeRouterNatTimeoutsOutputReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GoogleComputeRouterNat_IsConstruct ¶
func GoogleComputeRouterNat_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 GoogleComputeRouterNat_IsTerraformElement ¶
func GoogleComputeRouterNat_IsTerraformElement(x interface{}) *bool
Experimental.
func GoogleComputeRouterNat_IsTerraformResource ¶
func GoogleComputeRouterNat_IsTerraformResource(x interface{}) *bool
Experimental.
func GoogleComputeRouterNat_TfResourceType ¶
func GoogleComputeRouterNat_TfResourceType() *string
func NewGoogleComputeRouterNatLogConfigOutputReference_Override ¶
func NewGoogleComputeRouterNatLogConfigOutputReference_Override(g GoogleComputeRouterNatLogConfigOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewGoogleComputeRouterNatRulesActionOutputReference_Override ¶
func NewGoogleComputeRouterNatRulesActionOutputReference_Override(g GoogleComputeRouterNatRulesActionOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewGoogleComputeRouterNatRulesList_Override ¶
func NewGoogleComputeRouterNatRulesList_Override(g GoogleComputeRouterNatRulesList, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool)
func NewGoogleComputeRouterNatRulesOutputReference_Override ¶
func NewGoogleComputeRouterNatRulesOutputReference_Override(g GoogleComputeRouterNatRulesOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool)
func NewGoogleComputeRouterNatSubnetworkList_Override ¶
func NewGoogleComputeRouterNatSubnetworkList_Override(g GoogleComputeRouterNatSubnetworkList, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool)
func NewGoogleComputeRouterNatSubnetworkOutputReference_Override ¶
func NewGoogleComputeRouterNatSubnetworkOutputReference_Override(g GoogleComputeRouterNatSubnetworkOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool)
func NewGoogleComputeRouterNatTimeoutsOutputReference_Override ¶
func NewGoogleComputeRouterNatTimeoutsOutputReference_Override(g GoogleComputeRouterNatTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewGoogleComputeRouterNat_Override ¶
func NewGoogleComputeRouterNat_Override(g GoogleComputeRouterNat, scope constructs.Construct, id *string, config *GoogleComputeRouterNatConfig)
Create a new {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat google_compute_router_nat} Resource.
Types ¶
type GoogleComputeRouterNat ¶
type GoogleComputeRouterNat 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{}) // Experimental. DependsOn() *[]*string // Experimental. SetDependsOn(val *[]*string) DrainNatIps() *[]*string SetDrainNatIps(val *[]*string) DrainNatIpsInput() *[]*string EnableDynamicPortAllocation() interface{} SetEnableDynamicPortAllocation(val interface{}) EnableDynamicPortAllocationInput() interface{} EnableEndpointIndependentMapping() interface{} SetEnableEndpointIndependentMapping(val interface{}) EnableEndpointIndependentMappingInput() interface{} // Experimental. ForEach() cdktf.ITerraformIterator // Experimental. SetForEach(val cdktf.ITerraformIterator) // Experimental. Fqn() *string // Experimental. FriendlyUniqueId() *string IcmpIdleTimeoutSec() *float64 SetIcmpIdleTimeoutSec(val *float64) IcmpIdleTimeoutSecInput() *float64 Id() *string SetId(val *string) IdInput() *string // Experimental. Lifecycle() *cdktf.TerraformResourceLifecycle // Experimental. SetLifecycle(val *cdktf.TerraformResourceLifecycle) LogConfig() GoogleComputeRouterNatLogConfigOutputReference LogConfigInput() *GoogleComputeRouterNatLogConfig MaxPortsPerVm() *float64 SetMaxPortsPerVm(val *float64) MaxPortsPerVmInput() *float64 MinPortsPerVm() *float64 SetMinPortsPerVm(val *float64) MinPortsPerVmInput() *float64 Name() *string SetName(val *string) NameInput() *string NatIpAllocateOption() *string SetNatIpAllocateOption(val *string) NatIpAllocateOptionInput() *string NatIps() *[]*string SetNatIps(val *[]*string) NatIpsInput() *[]*string // The tree node. Node() constructs.Node 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 Router() *string SetRouter(val *string) RouterInput() *string Rules() GoogleComputeRouterNatRulesList RulesInput() interface{} SourceSubnetworkIpRangesToNat() *string SetSourceSubnetworkIpRangesToNat(val *string) SourceSubnetworkIpRangesToNatInput() *string Subnetwork() GoogleComputeRouterNatSubnetworkList SubnetworkInput() interface{} TcpEstablishedIdleTimeoutSec() *float64 SetTcpEstablishedIdleTimeoutSec(val *float64) TcpEstablishedIdleTimeoutSecInput() *float64 TcpTimeWaitTimeoutSec() *float64 SetTcpTimeWaitTimeoutSec(val *float64) TcpTimeWaitTimeoutSecInput() *float64 TcpTransitoryIdleTimeoutSec() *float64 SetTcpTransitoryIdleTimeoutSec(val *float64) TcpTransitoryIdleTimeoutSecInput() *float64 // Experimental. TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata // Experimental. TerraformMetaArguments() *map[string]interface{} // Experimental. TerraformResourceType() *string Timeouts() GoogleComputeRouterNatTimeoutsOutputReference TimeoutsInput() interface{} UdpIdleTimeoutSec() *float64 SetUdpIdleTimeoutSec(val *float64) UdpIdleTimeoutSecInput() *float64 // 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. InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) PutLogConfig(value *GoogleComputeRouterNatLogConfig) PutRules(value interface{}) PutSubnetwork(value interface{}) PutTimeouts(value *GoogleComputeRouterNatTimeouts) ResetDrainNatIps() ResetEnableDynamicPortAllocation() ResetEnableEndpointIndependentMapping() ResetIcmpIdleTimeoutSec() ResetId() ResetLogConfig() ResetMaxPortsPerVm() ResetMinPortsPerVm() ResetNatIps() // Resets a previously passed logical Id to use the auto-generated logical id again. // Experimental. ResetOverrideLogicalId() ResetProject() ResetRegion() ResetRules() ResetSubnetwork() ResetTcpEstablishedIdleTimeoutSec() ResetTcpTimeWaitTimeoutSec() ResetTcpTransitoryIdleTimeoutSec() ResetTimeouts() ResetUdpIdleTimeoutSec() 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-beta/4.79.0/docs/resources/google_compute_router_nat google_compute_router_nat}.
func NewGoogleComputeRouterNat ¶
func NewGoogleComputeRouterNat(scope constructs.Construct, id *string, config *GoogleComputeRouterNatConfig) GoogleComputeRouterNat
Create a new {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat google_compute_router_nat} Resource.
type GoogleComputeRouterNatConfig ¶
type GoogleComputeRouterNatConfig 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 NAT service. The name must be 1-63 characters long and comply with RFC1035. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#name GoogleComputeRouterNat#name} Name *string `field:"required" json:"name" yaml:"name"` // How external IPs should be allocated for this NAT. // // Valid values are // 'AUTO_ONLY' for only allowing NAT IPs allocated by Google Cloud // Platform, or 'MANUAL_ONLY' for only user-allocated NAT IP addresses. Possible values: ["MANUAL_ONLY", "AUTO_ONLY"] // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#nat_ip_allocate_option GoogleComputeRouterNat#nat_ip_allocate_option} NatIpAllocateOption *string `field:"required" json:"natIpAllocateOption" yaml:"natIpAllocateOption"` // The name of the Cloud Router in which this NAT will be configured. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#router GoogleComputeRouterNat#router} Router *string `field:"required" json:"router" yaml:"router"` // How NAT should be configured per Subnetwork. // // If 'ALL_SUBNETWORKS_ALL_IP_RANGES', all of the // IP ranges in every Subnetwork are allowed to Nat. // If 'ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES', all of the primary IP // ranges in every Subnetwork are allowed to Nat. // 'LIST_OF_SUBNETWORKS': A list of Subnetworks are allowed to Nat // (specified in the field subnetwork below). Note that if this field // contains ALL_SUBNETWORKS_ALL_IP_RANGES or // ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any // other RouterNat section in any Router for this network in this region. Possible values: ["ALL_SUBNETWORKS_ALL_IP_RANGES", "ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES", "LIST_OF_SUBNETWORKS"] // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#source_subnetwork_ip_ranges_to_nat GoogleComputeRouterNat#source_subnetwork_ip_ranges_to_nat} SourceSubnetworkIpRangesToNat *string `field:"required" json:"sourceSubnetworkIpRangesToNat" yaml:"sourceSubnetworkIpRangesToNat"` // A list of URLs of the IP resources to be drained. // // These IPs must be // valid static external IPs that have been assigned to the NAT. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#drain_nat_ips GoogleComputeRouterNat#drain_nat_ips} DrainNatIps *[]*string `field:"optional" json:"drainNatIps" yaml:"drainNatIps"` // Enable Dynamic Port Allocation. // // If minPortsPerVm is set, minPortsPerVm must be set to a power of two greater than or equal to 32. // If minPortsPerVm is not set, a minimum of 32 ports will be allocated to a VM from this NAT config. // If maxPortsPerVm is set, maxPortsPerVm must be set to a power of two greater than minPortsPerVm. // If maxPortsPerVm is not set, a maximum of 65536 ports will be allocated to a VM from this NAT config. // // Mutually exclusive with enableEndpointIndependentMapping. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#enable_dynamic_port_allocation GoogleComputeRouterNat#enable_dynamic_port_allocation} EnableDynamicPortAllocation interface{} `field:"optional" json:"enableDynamicPortAllocation" yaml:"enableDynamicPortAllocation"` // Specifies if endpoint independent mapping is enabled. This is enabled by default. For more information see the [official documentation](https://cloud.google.com/nat/docs/overview#specs-rfcs). // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#enable_endpoint_independent_mapping GoogleComputeRouterNat#enable_endpoint_independent_mapping} EnableEndpointIndependentMapping interface{} `field:"optional" json:"enableEndpointIndependentMapping" yaml:"enableEndpointIndependentMapping"` // Timeout (in seconds) for ICMP connections. Defaults to 30s if not set. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#icmp_idle_timeout_sec GoogleComputeRouterNat#icmp_idle_timeout_sec} IcmpIdleTimeoutSec *float64 `field:"optional" json:"icmpIdleTimeoutSec" yaml:"icmpIdleTimeoutSec"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#id GoogleComputeRouterNat#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"` // log_config block. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#log_config GoogleComputeRouterNat#log_config} LogConfig *GoogleComputeRouterNatLogConfig `field:"optional" json:"logConfig" yaml:"logConfig"` // Maximum number of ports allocated to a VM from this NAT. // // This field can only be set when enableDynamicPortAllocation is enabled. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#max_ports_per_vm GoogleComputeRouterNat#max_ports_per_vm} MaxPortsPerVm *float64 `field:"optional" json:"maxPortsPerVm" yaml:"maxPortsPerVm"` // Minimum number of ports allocated to a VM from this NAT. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#min_ports_per_vm GoogleComputeRouterNat#min_ports_per_vm} MinPortsPerVm *float64 `field:"optional" json:"minPortsPerVm" yaml:"minPortsPerVm"` // Self-links of NAT IPs. Only valid if natIpAllocateOption is set to MANUAL_ONLY. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#nat_ips GoogleComputeRouterNat#nat_ips} NatIps *[]*string `field:"optional" json:"natIps" yaml:"natIps"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#project GoogleComputeRouterNat#project}. Project *string `field:"optional" json:"project" yaml:"project"` // Region where the router and NAT reside. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#region GoogleComputeRouterNat#region} Region *string `field:"optional" json:"region" yaml:"region"` // rules block. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#rules GoogleComputeRouterNat#rules} Rules interface{} `field:"optional" json:"rules" yaml:"rules"` // subnetwork block. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#subnetwork GoogleComputeRouterNat#subnetwork} Subnetwork interface{} `field:"optional" json:"subnetwork" yaml:"subnetwork"` // Timeout (in seconds) for TCP established connections. Defaults to 1200s if not set. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#tcp_established_idle_timeout_sec GoogleComputeRouterNat#tcp_established_idle_timeout_sec} TcpEstablishedIdleTimeoutSec *float64 `field:"optional" json:"tcpEstablishedIdleTimeoutSec" yaml:"tcpEstablishedIdleTimeoutSec"` // Timeout (in seconds) for TCP connections that are in TIME_WAIT state. Defaults to 120s if not set. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#tcp_time_wait_timeout_sec GoogleComputeRouterNat#tcp_time_wait_timeout_sec} TcpTimeWaitTimeoutSec *float64 `field:"optional" json:"tcpTimeWaitTimeoutSec" yaml:"tcpTimeWaitTimeoutSec"` // Timeout (in seconds) for TCP transitory connections. Defaults to 30s if not set. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#tcp_transitory_idle_timeout_sec GoogleComputeRouterNat#tcp_transitory_idle_timeout_sec} TcpTransitoryIdleTimeoutSec *float64 `field:"optional" json:"tcpTransitoryIdleTimeoutSec" yaml:"tcpTransitoryIdleTimeoutSec"` // timeouts block. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#timeouts GoogleComputeRouterNat#timeouts} Timeouts *GoogleComputeRouterNatTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"` // Timeout (in seconds) for UDP connections. Defaults to 30s if not set. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#udp_idle_timeout_sec GoogleComputeRouterNat#udp_idle_timeout_sec} UdpIdleTimeoutSec *float64 `field:"optional" json:"udpIdleTimeoutSec" yaml:"udpIdleTimeoutSec"` }
type GoogleComputeRouterNatLogConfig ¶
type GoogleComputeRouterNatLogConfig struct { // Indicates whether or not to export logs. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#enable GoogleComputeRouterNat#enable} Enable interface{} `field:"required" json:"enable" yaml:"enable"` // Specifies the desired filtering of logs on this NAT. Possible values: ["ERRORS_ONLY", "TRANSLATIONS_ONLY", "ALL"]. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#filter GoogleComputeRouterNat#filter} Filter *string `field:"required" json:"filter" yaml:"filter"` }
type GoogleComputeRouterNatLogConfigOutputReference ¶
type GoogleComputeRouterNatLogConfigOutputReference 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) // 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 Enable() interface{} SetEnable(val interface{}) EnableInput() interface{} Filter() *string SetFilter(val *string) FilterInput() *string // Experimental. Fqn() *string InternalValue() *GoogleComputeRouterNatLogConfig SetInternalValue(val *GoogleComputeRouterNatLogConfig) // Experimental. TerraformAttribute() *string // Experimental. SetTerraformAttribute(val *string) // Experimental. TerraformResource() cdktf.IInterpolatingParent // Experimental. SetTerraformResource(val cdktf.IInterpolatingParent) // 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 // 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 NewGoogleComputeRouterNatLogConfigOutputReference ¶
func NewGoogleComputeRouterNatLogConfigOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleComputeRouterNatLogConfigOutputReference
type GoogleComputeRouterNatRules ¶
type GoogleComputeRouterNatRules struct { // CEL expression that specifies the match condition that egress traffic from a VM is evaluated against. // // If it evaluates to true, the corresponding action is enforced. // // The following examples are valid match expressions for public NAT: // // "inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.0/16')" // // "destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'" // // The following example is a valid match expression for private NAT: // // "nexthop.hub == 'https://networkconnectivity.googleapis.com/v1alpha1/projects/my-project/global/hub/hub-1'" // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#match GoogleComputeRouterNat#match} Match *string `field:"required" json:"match" yaml:"match"` // An integer uniquely identifying a rule in the list. // // The rule number must be a positive value between 0 and 65000, and must be unique among rules within a NAT. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#rule_number GoogleComputeRouterNat#rule_number} RuleNumber *float64 `field:"required" json:"ruleNumber" yaml:"ruleNumber"` // action block. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#action GoogleComputeRouterNat#action} Action *GoogleComputeRouterNatRulesAction `field:"optional" json:"action" yaml:"action"` // An optional description of this rule. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#description GoogleComputeRouterNat#description} Description *string `field:"optional" json:"description" yaml:"description"` }
type GoogleComputeRouterNatRulesAction ¶
type GoogleComputeRouterNatRulesAction struct { // A list of URLs of the IP resources used for this NAT rule. // // These IP addresses must be valid static external IP addresses assigned to the project. // This field is used for public NAT. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#source_nat_active_ips GoogleComputeRouterNat#source_nat_active_ips} SourceNatActiveIps *[]*string `field:"optional" json:"sourceNatActiveIps" yaml:"sourceNatActiveIps"` // A list of URLs of the IP resources to be drained. // // These IPs must be valid static external IPs that have been assigned to the NAT. // These IPs should be used for updating/patching a NAT rule only. // This field is used for public NAT. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#source_nat_drain_ips GoogleComputeRouterNat#source_nat_drain_ips} SourceNatDrainIps *[]*string `field:"optional" json:"sourceNatDrainIps" yaml:"sourceNatDrainIps"` }
type GoogleComputeRouterNatRulesActionOutputReference ¶
type GoogleComputeRouterNatRulesActionOutputReference 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) // 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 // Experimental. Fqn() *string InternalValue() *GoogleComputeRouterNatRulesAction SetInternalValue(val *GoogleComputeRouterNatRulesAction) SourceNatActiveIps() *[]*string SetSourceNatActiveIps(val *[]*string) SourceNatActiveIpsInput() *[]*string SourceNatDrainIps() *[]*string SetSourceNatDrainIps(val *[]*string) SourceNatDrainIpsInput() *[]*string // Experimental. TerraformAttribute() *string // Experimental. SetTerraformAttribute(val *string) // Experimental. TerraformResource() cdktf.IInterpolatingParent // Experimental. SetTerraformResource(val cdktf.IInterpolatingParent) // 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 ResetSourceNatActiveIps() ResetSourceNatDrainIps() // 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 NewGoogleComputeRouterNatRulesActionOutputReference ¶
func NewGoogleComputeRouterNatRulesActionOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleComputeRouterNatRulesActionOutputReference
type GoogleComputeRouterNatRulesList ¶
type GoogleComputeRouterNatRulesList interface { cdktf.ComplexList // 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 // Experimental. Fqn() *string InternalValue() interface{} SetInternalValue(val interface{}) // The attribute on the parent resource this class is referencing. TerraformAttribute() *string SetTerraformAttribute(val *string) // The parent resource. TerraformResource() cdktf.IInterpolatingParent SetTerraformResource(val cdktf.IInterpolatingParent) // whether the list is wrapping a set (will add tolist() to be able to access an item via an index). WrapsSet() *bool SetWrapsSet(val *bool) // Experimental. ComputeFqn() *string Get(index *float64) GoogleComputeRouterNatRulesOutputReference // 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 NewGoogleComputeRouterNatRulesList ¶
func NewGoogleComputeRouterNatRulesList(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool) GoogleComputeRouterNatRulesList
type GoogleComputeRouterNatRulesOutputReference ¶
type GoogleComputeRouterNatRulesOutputReference interface { cdktf.ComplexObject Action() GoogleComputeRouterNatRulesActionOutputReference ActionInput() *GoogleComputeRouterNatRulesAction // 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) // 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 Description() *string SetDescription(val *string) DescriptionInput() *string // Experimental. Fqn() *string InternalValue() interface{} SetInternalValue(val interface{}) Match() *string SetMatch(val *string) MatchInput() *string RuleNumber() *float64 SetRuleNumber(val *float64) RuleNumberInput() *float64 // Experimental. TerraformAttribute() *string // Experimental. SetTerraformAttribute(val *string) // Experimental. TerraformResource() cdktf.IInterpolatingParent // Experimental. SetTerraformResource(val cdktf.IInterpolatingParent) // 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 PutAction(value *GoogleComputeRouterNatRulesAction) ResetAction() ResetDescription() // 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 NewGoogleComputeRouterNatRulesOutputReference ¶
func NewGoogleComputeRouterNatRulesOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool) GoogleComputeRouterNatRulesOutputReference
type GoogleComputeRouterNatSubnetwork ¶
type GoogleComputeRouterNatSubnetwork struct { // Self-link of subnetwork to NAT. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#name GoogleComputeRouterNat#name} Name *string `field:"required" json:"name" yaml:"name"` // List of options for which source IPs in the subnetwork should have NAT enabled. Supported values include: 'ALL_IP_RANGES', 'LIST_OF_SECONDARY_IP_RANGES', 'PRIMARY_IP_RANGE'. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#source_ip_ranges_to_nat GoogleComputeRouterNat#source_ip_ranges_to_nat} SourceIpRangesToNat *[]*string `field:"required" json:"sourceIpRangesToNat" yaml:"sourceIpRangesToNat"` // List of the secondary ranges of the subnetwork that are allowed to use NAT. // // This can be populated only if // 'LIST_OF_SECONDARY_IP_RANGES' is one of the values in // sourceIpRangesToNat // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#secondary_ip_range_names GoogleComputeRouterNat#secondary_ip_range_names} SecondaryIpRangeNames *[]*string `field:"optional" json:"secondaryIpRangeNames" yaml:"secondaryIpRangeNames"` }
type GoogleComputeRouterNatSubnetworkList ¶
type GoogleComputeRouterNatSubnetworkList interface { cdktf.ComplexList // 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 // Experimental. Fqn() *string InternalValue() interface{} SetInternalValue(val interface{}) // The attribute on the parent resource this class is referencing. TerraformAttribute() *string SetTerraformAttribute(val *string) // The parent resource. TerraformResource() cdktf.IInterpolatingParent SetTerraformResource(val cdktf.IInterpolatingParent) // whether the list is wrapping a set (will add tolist() to be able to access an item via an index). WrapsSet() *bool SetWrapsSet(val *bool) // Experimental. ComputeFqn() *string Get(index *float64) GoogleComputeRouterNatSubnetworkOutputReference // 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 NewGoogleComputeRouterNatSubnetworkList ¶
func NewGoogleComputeRouterNatSubnetworkList(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool) GoogleComputeRouterNatSubnetworkList
type GoogleComputeRouterNatSubnetworkOutputReference ¶
type GoogleComputeRouterNatSubnetworkOutputReference 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) // 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 // Experimental. Fqn() *string InternalValue() interface{} SetInternalValue(val interface{}) Name() *string SetName(val *string) NameInput() *string SecondaryIpRangeNames() *[]*string SetSecondaryIpRangeNames(val *[]*string) SecondaryIpRangeNamesInput() *[]*string SourceIpRangesToNat() *[]*string SetSourceIpRangesToNat(val *[]*string) SourceIpRangesToNatInput() *[]*string // Experimental. TerraformAttribute() *string // Experimental. SetTerraformAttribute(val *string) // Experimental. TerraformResource() cdktf.IInterpolatingParent // Experimental. SetTerraformResource(val cdktf.IInterpolatingParent) // 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 ResetSecondaryIpRangeNames() // 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 NewGoogleComputeRouterNatSubnetworkOutputReference ¶
func NewGoogleComputeRouterNatSubnetworkOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool) GoogleComputeRouterNatSubnetworkOutputReference
type GoogleComputeRouterNatTimeouts ¶
type GoogleComputeRouterNatTimeouts struct { // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#create GoogleComputeRouterNat#create}. Create *string `field:"optional" json:"create" yaml:"create"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#delete GoogleComputeRouterNat#delete}. Delete *string `field:"optional" json:"delete" yaml:"delete"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google-beta/4.79.0/docs/resources/google_compute_router_nat#update GoogleComputeRouterNat#update}. Update *string `field:"optional" json:"update" yaml:"update"` }
type GoogleComputeRouterNatTimeoutsOutputReference ¶
type GoogleComputeRouterNatTimeoutsOutputReference 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 NewGoogleComputeRouterNatTimeoutsOutputReference ¶
func NewGoogleComputeRouterNatTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleComputeRouterNatTimeoutsOutputReference
Source Files ¶
- GoogleComputeRouterNat.go
- GoogleComputeRouterNatConfig.go
- GoogleComputeRouterNatLogConfig.go
- GoogleComputeRouterNatLogConfigOutputReference.go
- GoogleComputeRouterNatLogConfigOutputReference__checks.go
- GoogleComputeRouterNatRules.go
- GoogleComputeRouterNatRulesAction.go
- GoogleComputeRouterNatRulesActionOutputReference.go
- GoogleComputeRouterNatRulesActionOutputReference__checks.go
- GoogleComputeRouterNatRulesList.go
- GoogleComputeRouterNatRulesList__checks.go
- GoogleComputeRouterNatRulesOutputReference.go
- GoogleComputeRouterNatRulesOutputReference__checks.go
- GoogleComputeRouterNatSubnetwork.go
- GoogleComputeRouterNatSubnetworkList.go
- GoogleComputeRouterNatSubnetworkList__checks.go
- GoogleComputeRouterNatSubnetworkOutputReference.go
- GoogleComputeRouterNatSubnetworkOutputReference__checks.go
- GoogleComputeRouterNatTimeouts.go
- GoogleComputeRouterNatTimeoutsOutputReference.go
- GoogleComputeRouterNatTimeoutsOutputReference__checks.go
- GoogleComputeRouterNat__checks.go
- main.go