@@ -91,6 +91,18 @@ examples:
91
91
address_name1 : ' nat-address1'
92
92
address_name2 : ' nat-address2'
93
93
address_name3 : ' nat-address3'
94
+ - !ruby/object:Provider::Terraform::Examples
95
+ name : ' router_nat_private'
96
+ primary_resource_id : ' nat_type'
97
+ skip_test : true
98
+ min_version : beta
99
+ vars :
100
+ router_name : ' my-router'
101
+ nat_name : ' my-router-nat'
102
+ network_name : ' my-network'
103
+ subnet_name : ' my-subnetwork'
104
+ hub_name : ' my-hub'
105
+ spoke_name : ' my-spoke'
94
106
custom_code : !ruby/object:Provider::Terraform::CustomCode
95
107
constants : ' templates/terraform/constants/router_nat.go.erb'
96
108
custom_diff : [
@@ -128,7 +140,7 @@ properties:
128
140
function : ' verify.ValidateRFC1035Name(2, 63)'
129
141
- !ruby/object:Api::Type::Enum
130
142
name : ' natIpAllocateOption'
131
- required : true
143
+ required : false
132
144
description : |
133
145
How external IPs should be allocated for this NAT. Valid values are
134
146
`AUTO_ONLY` for only allowing NAT IPs allocated by Google Cloud
@@ -368,10 +380,57 @@ properties:
368
380
description :
369
381
' A reference to an address associated with this NAT'
370
382
custom_expand : ' templates/terraform/custom_expand/array_resourceref_with_validation.go.erb'
383
+ - !ruby/object:Api::Type::Array
384
+ name : ' sourceNatActiveRanges'
385
+ min_version : beta
386
+ description : |
387
+ A list of URLs of the subnetworks used as source ranges for this NAT Rule.
388
+ These subnetworks must have purpose set to PRIVATE_NAT.
389
+ This field is used for private NAT.
390
+ is_set : true
391
+ set_hash_func : computeRouterNatRulesSubnetHash
392
+ custom_flatten : ' templates/terraform/custom_flatten/nat_rules_subnets_set.erb'
393
+ item_type : !ruby/object:Api::Type::ResourceRef
394
+ name : ' subnet'
395
+ resource : ' Subnetwork'
396
+ imports : ' selfLink'
397
+ description :
398
+ ' A reference to a subnetwork address associated with this NAT'
399
+ custom_expand : ' templates/terraform/custom_expand/array_resourceref_with_validation.go.erb'
400
+ - !ruby/object:Api::Type::Array
401
+ name : ' sourceNatDrainRanges'
402
+ min_version : beta
403
+ description : |
404
+ A list of URLs of subnetworks representing source ranges to be drained.
405
+ This is only supported on patch/update, and these subnetworks must have previously been used as active ranges in this NAT Rule.
406
+ This field is used for private NAT.
407
+ is_set : true
408
+ set_hash_func : computeRouterNatRulesSubnetHash
409
+ custom_flatten : ' templates/terraform/custom_flatten/nat_rules_subnets_set.erb'
410
+ item_type : !ruby/object:Api::Type::ResourceRef
411
+ name : ' subnet'
412
+ resource : ' Subnetwork'
413
+ imports : ' selfLink'
414
+ description :
415
+ ' A reference to a subnetwork address associated with this NAT'
416
+ custom_expand : ' templates/terraform/custom_expand/array_resourceref_with_validation.go.erb'
371
417
- !ruby/object:Api::Type::Boolean
372
418
name : enableEndpointIndependentMapping
373
419
description : |
374
420
Specifies if endpoint independent mapping is enabled. This is enabled by default. For more information
375
421
see the [official documentation](https://cloud.google.com/nat/docs/overview#specs-rfcs).
376
422
default_value : true
377
423
send_empty_value : true
424
+ - !ruby/object:Api::Type::Enum
425
+ name : ' type'
426
+ immutable : true
427
+ min_version : beta
428
+ description : |
429
+ Indicates whether this NAT is used for public or private IP translation.
430
+ If unspecified, it defaults to PUBLIC.
431
+ If `PUBLIC` NAT used for public IP translation.
432
+ If `PRIVATE` NAT used for private IP translation.
433
+ values :
434
+ - :PUBLIC
435
+ - :PRIVATE
436
+ default_value : :PUBLIC
0 commit comments