pulumi-gcp 8.3.0a1727223968__py3-none-any.whl → 8.3.0a1727226164__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. pulumi_gcp/__init__.py +120 -0
  2. pulumi_gcp/alloydb/_inputs.py +20 -0
  3. pulumi_gcp/alloydb/instance.py +36 -0
  4. pulumi_gcp/alloydb/outputs.py +14 -0
  5. pulumi_gcp/compute/__init__.py +1 -0
  6. pulumi_gcp/compute/_inputs.py +1400 -0
  7. pulumi_gcp/compute/attached_disk.py +103 -0
  8. pulumi_gcp/compute/backend_service.py +29 -22
  9. pulumi_gcp/compute/firewall_policy_with_rules.py +769 -0
  10. pulumi_gcp/compute/outputs.py +1019 -0
  11. pulumi_gcp/compute/region_backend_service.py +29 -22
  12. pulumi_gcp/compute/router_nat.py +27 -66
  13. pulumi_gcp/config/__init__.pyi +2 -0
  14. pulumi_gcp/config/vars.py +4 -0
  15. pulumi_gcp/container/_inputs.py +72 -99
  16. pulumi_gcp/container/outputs.py +53 -70
  17. pulumi_gcp/databasemigrationservice/__init__.py +1 -0
  18. pulumi_gcp/databasemigrationservice/_inputs.py +362 -0
  19. pulumi_gcp/databasemigrationservice/migration_job.py +1739 -0
  20. pulumi_gcp/databasemigrationservice/outputs.py +268 -0
  21. pulumi_gcp/dataproc/get_metastore_service.py +11 -1
  22. pulumi_gcp/dataproc/metastore_service.py +93 -0
  23. pulumi_gcp/developerconnect/_inputs.py +42 -39
  24. pulumi_gcp/developerconnect/connection.py +86 -83
  25. pulumi_gcp/developerconnect/outputs.py +28 -26
  26. pulumi_gcp/discoveryengine/__init__.py +1 -0
  27. pulumi_gcp/discoveryengine/_inputs.py +131 -0
  28. pulumi_gcp/discoveryengine/outputs.py +131 -0
  29. pulumi_gcp/discoveryengine/target_site.py +870 -0
  30. pulumi_gcp/dns/managed_zone.py +1 -1
  31. pulumi_gcp/filestore/get_instance.py +21 -1
  32. pulumi_gcp/filestore/instance.py +94 -0
  33. pulumi_gcp/gkehub/feature_membership.py +140 -62
  34. pulumi_gcp/healthcare/__init__.py +1 -0
  35. pulumi_gcp/healthcare/_inputs.py +39 -0
  36. pulumi_gcp/healthcare/outputs.py +40 -0
  37. pulumi_gcp/healthcare/workspace.py +465 -0
  38. pulumi_gcp/looker/instance.py +81 -0
  39. pulumi_gcp/netapp/_inputs.py +63 -0
  40. pulumi_gcp/netapp/outputs.py +57 -0
  41. pulumi_gcp/netapp/storage_pool.py +54 -0
  42. pulumi_gcp/netapp/volume.py +82 -0
  43. pulumi_gcp/provider.py +20 -0
  44. pulumi_gcp/pubsub/subscription.py +43 -7
  45. pulumi_gcp/pulumi-plugin.json +1 -1
  46. pulumi_gcp/secretmanager/__init__.py +8 -0
  47. pulumi_gcp/secretmanager/_inputs.py +308 -0
  48. pulumi_gcp/secretmanager/get_regional_secret.py +279 -0
  49. pulumi_gcp/secretmanager/get_regional_secret_iam_policy.py +173 -0
  50. pulumi_gcp/secretmanager/get_regional_secret_version.py +241 -0
  51. pulumi_gcp/secretmanager/outputs.py +336 -0
  52. pulumi_gcp/secretmanager/regional_secret.py +1433 -0
  53. pulumi_gcp/secretmanager/regional_secret_iam_binding.py +1082 -0
  54. pulumi_gcp/secretmanager/regional_secret_iam_member.py +1082 -0
  55. pulumi_gcp/secretmanager/regional_secret_iam_policy.py +901 -0
  56. pulumi_gcp/secretmanager/regional_secret_version.py +753 -0
  57. pulumi_gcp/securitycenter/__init__.py +4 -0
  58. pulumi_gcp/securitycenter/folder_scc_big_query_export.py +795 -0
  59. pulumi_gcp/securitycenter/organization_scc_big_query_export.py +738 -0
  60. pulumi_gcp/securitycenter/project_scc_big_query_export.py +749 -0
  61. pulumi_gcp/securitycenter/v2_organization_scc_big_query_export.py +862 -0
  62. pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +6 -2
  63. pulumi_gcp/siteverification/__init__.py +3 -0
  64. pulumi_gcp/siteverification/_inputs.py +85 -0
  65. pulumi_gcp/siteverification/outputs.py +57 -0
  66. pulumi_gcp/siteverification/web_resource.py +398 -0
  67. pulumi_gcp/spanner/__init__.py +1 -0
  68. pulumi_gcp/spanner/_inputs.py +129 -0
  69. pulumi_gcp/spanner/backup_schedule.py +748 -0
  70. pulumi_gcp/spanner/get_instance.py +11 -1
  71. pulumi_gcp/spanner/instance.py +56 -0
  72. pulumi_gcp/spanner/outputs.py +93 -0
  73. {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/METADATA +1 -1
  74. {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/RECORD +76 -56
  75. {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/WHEEL +0 -0
  76. {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/top_level.txt +0 -0
@@ -113,7 +113,8 @@ class RegionBackendServiceArgs:
113
113
  build times and host selection times. For more information about
114
114
  Maglev, refer to https://ai.google/research/pubs/pub44824
115
115
  * `WEIGHTED_MAGLEV`: Per-instance weighted Load Balancing via health check
116
- reported weights. If set, the Backend Service must
116
+ reported weights. Only applicable to loadBalancingScheme
117
+ EXTERNAL. If set, the Backend Service must
117
118
  configure a non legacy HTTP-based Health Check, and
118
119
  health check replies are expected to contain
119
120
  non-standard HTTP response header field
@@ -124,14 +125,14 @@ class RegionBackendServiceArgs:
124
125
  instance either reported a valid weight or had
125
126
  UNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains
126
127
  equal-weight.
127
- This field is applicable to either:
128
+ locality_lb_policy is applicable to either:
128
129
  * A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2,
129
130
  and loadBalancingScheme set to INTERNAL_MANAGED.
130
131
  * A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED.
131
132
  * A regional backend service with loadBalancingScheme set to EXTERNAL (External Network
132
133
  Load Balancing). Only MAGLEV and WEIGHTED_MAGLEV values are possible for External
133
134
  Network Load Balancing. The default is MAGLEV.
134
- If session_affinity is not NONE, and this field is not set to MAGLEV, WEIGHTED_MAGLEV,
135
+ If session_affinity is not NONE, and locality_lb_policy is not set to MAGLEV, WEIGHTED_MAGLEV,
135
136
  or RING_HASH, session affinity settings will not take effect.
136
137
  Only ROUND_ROBIN and RING_HASH are supported when the backend service is referenced
137
138
  by a URL map that is bound to target gRPC proxy that has validate_for_proxyless
@@ -446,7 +447,8 @@ class RegionBackendServiceArgs:
446
447
  build times and host selection times. For more information about
447
448
  Maglev, refer to https://ai.google/research/pubs/pub44824
448
449
  * `WEIGHTED_MAGLEV`: Per-instance weighted Load Balancing via health check
449
- reported weights. If set, the Backend Service must
450
+ reported weights. Only applicable to loadBalancingScheme
451
+ EXTERNAL. If set, the Backend Service must
450
452
  configure a non legacy HTTP-based Health Check, and
451
453
  health check replies are expected to contain
452
454
  non-standard HTTP response header field
@@ -457,14 +459,14 @@ class RegionBackendServiceArgs:
457
459
  instance either reported a valid weight or had
458
460
  UNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains
459
461
  equal-weight.
460
- This field is applicable to either:
462
+ locality_lb_policy is applicable to either:
461
463
  * A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2,
462
464
  and loadBalancingScheme set to INTERNAL_MANAGED.
463
465
  * A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED.
464
466
  * A regional backend service with loadBalancingScheme set to EXTERNAL (External Network
465
467
  Load Balancing). Only MAGLEV and WEIGHTED_MAGLEV values are possible for External
466
468
  Network Load Balancing. The default is MAGLEV.
467
- If session_affinity is not NONE, and this field is not set to MAGLEV, WEIGHTED_MAGLEV,
469
+ If session_affinity is not NONE, and locality_lb_policy is not set to MAGLEV, WEIGHTED_MAGLEV,
468
470
  or RING_HASH, session affinity settings will not take effect.
469
471
  Only ROUND_ROBIN and RING_HASH are supported when the backend service is referenced
470
472
  by a URL map that is bound to target gRPC proxy that has validate_for_proxyless
@@ -757,7 +759,8 @@ class _RegionBackendServiceState:
757
759
  build times and host selection times. For more information about
758
760
  Maglev, refer to https://ai.google/research/pubs/pub44824
759
761
  * `WEIGHTED_MAGLEV`: Per-instance weighted Load Balancing via health check
760
- reported weights. If set, the Backend Service must
762
+ reported weights. Only applicable to loadBalancingScheme
763
+ EXTERNAL. If set, the Backend Service must
761
764
  configure a non legacy HTTP-based Health Check, and
762
765
  health check replies are expected to contain
763
766
  non-standard HTTP response header field
@@ -768,14 +771,14 @@ class _RegionBackendServiceState:
768
771
  instance either reported a valid weight or had
769
772
  UNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains
770
773
  equal-weight.
771
- This field is applicable to either:
774
+ locality_lb_policy is applicable to either:
772
775
  * A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2,
773
776
  and loadBalancingScheme set to INTERNAL_MANAGED.
774
777
  * A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED.
775
778
  * A regional backend service with loadBalancingScheme set to EXTERNAL (External Network
776
779
  Load Balancing). Only MAGLEV and WEIGHTED_MAGLEV values are possible for External
777
780
  Network Load Balancing. The default is MAGLEV.
778
- If session_affinity is not NONE, and this field is not set to MAGLEV, WEIGHTED_MAGLEV,
781
+ If session_affinity is not NONE, and locality_lb_policy is not set to MAGLEV, WEIGHTED_MAGLEV,
779
782
  or RING_HASH, session affinity settings will not take effect.
780
783
  Only ROUND_ROBIN and RING_HASH are supported when the backend service is referenced
781
784
  by a URL map that is bound to target gRPC proxy that has validate_for_proxyless
@@ -1136,7 +1139,8 @@ class _RegionBackendServiceState:
1136
1139
  build times and host selection times. For more information about
1137
1140
  Maglev, refer to https://ai.google/research/pubs/pub44824
1138
1141
  * `WEIGHTED_MAGLEV`: Per-instance weighted Load Balancing via health check
1139
- reported weights. If set, the Backend Service must
1142
+ reported weights. Only applicable to loadBalancingScheme
1143
+ EXTERNAL. If set, the Backend Service must
1140
1144
  configure a non legacy HTTP-based Health Check, and
1141
1145
  health check replies are expected to contain
1142
1146
  non-standard HTTP response header field
@@ -1147,14 +1151,14 @@ class _RegionBackendServiceState:
1147
1151
  instance either reported a valid weight or had
1148
1152
  UNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains
1149
1153
  equal-weight.
1150
- This field is applicable to either:
1154
+ locality_lb_policy is applicable to either:
1151
1155
  * A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2,
1152
1156
  and loadBalancingScheme set to INTERNAL_MANAGED.
1153
1157
  * A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED.
1154
1158
  * A regional backend service with loadBalancingScheme set to EXTERNAL (External Network
1155
1159
  Load Balancing). Only MAGLEV and WEIGHTED_MAGLEV values are possible for External
1156
1160
  Network Load Balancing. The default is MAGLEV.
1157
- If session_affinity is not NONE, and this field is not set to MAGLEV, WEIGHTED_MAGLEV,
1161
+ If session_affinity is not NONE, and locality_lb_policy is not set to MAGLEV, WEIGHTED_MAGLEV,
1158
1162
  or RING_HASH, session affinity settings will not take effect.
1159
1163
  Only ROUND_ROBIN and RING_HASH are supported when the backend service is referenced
1160
1164
  by a URL map that is bound to target gRPC proxy that has validate_for_proxyless
@@ -1743,7 +1747,8 @@ class RegionBackendService(pulumi.CustomResource):
1743
1747
  build times and host selection times. For more information about
1744
1748
  Maglev, refer to https://ai.google/research/pubs/pub44824
1745
1749
  * `WEIGHTED_MAGLEV`: Per-instance weighted Load Balancing via health check
1746
- reported weights. If set, the Backend Service must
1750
+ reported weights. Only applicable to loadBalancingScheme
1751
+ EXTERNAL. If set, the Backend Service must
1747
1752
  configure a non legacy HTTP-based Health Check, and
1748
1753
  health check replies are expected to contain
1749
1754
  non-standard HTTP response header field
@@ -1754,14 +1759,14 @@ class RegionBackendService(pulumi.CustomResource):
1754
1759
  instance either reported a valid weight or had
1755
1760
  UNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains
1756
1761
  equal-weight.
1757
- This field is applicable to either:
1762
+ locality_lb_policy is applicable to either:
1758
1763
  * A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2,
1759
1764
  and loadBalancingScheme set to INTERNAL_MANAGED.
1760
1765
  * A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED.
1761
1766
  * A regional backend service with loadBalancingScheme set to EXTERNAL (External Network
1762
1767
  Load Balancing). Only MAGLEV and WEIGHTED_MAGLEV values are possible for External
1763
1768
  Network Load Balancing. The default is MAGLEV.
1764
- If session_affinity is not NONE, and this field is not set to MAGLEV, WEIGHTED_MAGLEV,
1769
+ If session_affinity is not NONE, and locality_lb_policy is not set to MAGLEV, WEIGHTED_MAGLEV,
1765
1770
  or RING_HASH, session affinity settings will not take effect.
1766
1771
  Only ROUND_ROBIN and RING_HASH are supported when the backend service is referenced
1767
1772
  by a URL map that is bound to target gRPC proxy that has validate_for_proxyless
@@ -2302,7 +2307,8 @@ class RegionBackendService(pulumi.CustomResource):
2302
2307
  build times and host selection times. For more information about
2303
2308
  Maglev, refer to https://ai.google/research/pubs/pub44824
2304
2309
  * `WEIGHTED_MAGLEV`: Per-instance weighted Load Balancing via health check
2305
- reported weights. If set, the Backend Service must
2310
+ reported weights. Only applicable to loadBalancingScheme
2311
+ EXTERNAL. If set, the Backend Service must
2306
2312
  configure a non legacy HTTP-based Health Check, and
2307
2313
  health check replies are expected to contain
2308
2314
  non-standard HTTP response header field
@@ -2313,14 +2319,14 @@ class RegionBackendService(pulumi.CustomResource):
2313
2319
  instance either reported a valid weight or had
2314
2320
  UNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains
2315
2321
  equal-weight.
2316
- This field is applicable to either:
2322
+ locality_lb_policy is applicable to either:
2317
2323
  * A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2,
2318
2324
  and loadBalancingScheme set to INTERNAL_MANAGED.
2319
2325
  * A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED.
2320
2326
  * A regional backend service with loadBalancingScheme set to EXTERNAL (External Network
2321
2327
  Load Balancing). Only MAGLEV and WEIGHTED_MAGLEV values are possible for External
2322
2328
  Network Load Balancing. The default is MAGLEV.
2323
- If session_affinity is not NONE, and this field is not set to MAGLEV, WEIGHTED_MAGLEV,
2329
+ If session_affinity is not NONE, and locality_lb_policy is not set to MAGLEV, WEIGHTED_MAGLEV,
2324
2330
  or RING_HASH, session affinity settings will not take effect.
2325
2331
  Only ROUND_ROBIN and RING_HASH are supported when the backend service is referenced
2326
2332
  by a URL map that is bound to target gRPC proxy that has validate_for_proxyless
@@ -2547,7 +2553,7 @@ class RegionBackendService(pulumi.CustomResource):
2547
2553
 
2548
2554
  @property
2549
2555
  @pulumi.getter
2550
- def iap(self) -> pulumi.Output[Optional['outputs.RegionBackendServiceIap']]:
2556
+ def iap(self) -> pulumi.Output['outputs.RegionBackendServiceIap']:
2551
2557
  """
2552
2558
  Settings for enabling Cloud Identity Aware Proxy
2553
2559
  Structure is documented below.
@@ -2592,7 +2598,8 @@ class RegionBackendService(pulumi.CustomResource):
2592
2598
  build times and host selection times. For more information about
2593
2599
  Maglev, refer to https://ai.google/research/pubs/pub44824
2594
2600
  * `WEIGHTED_MAGLEV`: Per-instance weighted Load Balancing via health check
2595
- reported weights. If set, the Backend Service must
2601
+ reported weights. Only applicable to loadBalancingScheme
2602
+ EXTERNAL. If set, the Backend Service must
2596
2603
  configure a non legacy HTTP-based Health Check, and
2597
2604
  health check replies are expected to contain
2598
2605
  non-standard HTTP response header field
@@ -2603,14 +2610,14 @@ class RegionBackendService(pulumi.CustomResource):
2603
2610
  instance either reported a valid weight or had
2604
2611
  UNAVAILABLE_WEIGHT. Otherwise, Load Balancing remains
2605
2612
  equal-weight.
2606
- This field is applicable to either:
2613
+ locality_lb_policy is applicable to either:
2607
2614
  * A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2,
2608
2615
  and loadBalancingScheme set to INTERNAL_MANAGED.
2609
2616
  * A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED.
2610
2617
  * A regional backend service with loadBalancingScheme set to EXTERNAL (External Network
2611
2618
  Load Balancing). Only MAGLEV and WEIGHTED_MAGLEV values are possible for External
2612
2619
  Network Load Balancing. The default is MAGLEV.
2613
- If session_affinity is not NONE, and this field is not set to MAGLEV, WEIGHTED_MAGLEV,
2620
+ If session_affinity is not NONE, and locality_lb_policy is not set to MAGLEV, WEIGHTED_MAGLEV,
2614
2621
  or RING_HASH, session affinity settings will not take effect.
2615
2622
  Only ROUND_ROBIN and RING_HASH are supported when the backend service is referenced
2616
2623
  by a URL map that is bound to target gRPC proxy that has validate_for_proxyless
@@ -93,6 +93,9 @@ class RouterNatArgs:
93
93
  Possible values are: `MANUAL_ONLY`, `AUTO_ONLY`.
94
94
  :param pulumi.Input[Sequence[pulumi.Input[str]]] nat_ips: Self-links of NAT IPs. Only valid if natIpAllocateOption
95
95
  is set to MANUAL_ONLY.
96
+ If this field is used alongside with a count created list of address resources `google_compute_address.foobar.*.self_link`,
97
+ the access level resource for the address resource must have a `lifecycle` block with `create_before_destroy = true` so
98
+ the number of resources can be increased/decreased without triggering the `resourceInUseByAnotherResource` error.
96
99
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
97
100
  If it is not provided, the provider project is used.
98
101
  :param pulumi.Input[str] region: Region where the router and NAT reside.
@@ -354,6 +357,9 @@ class RouterNatArgs:
354
357
  """
355
358
  Self-links of NAT IPs. Only valid if natIpAllocateOption
356
359
  is set to MANUAL_ONLY.
360
+ If this field is used alongside with a count created list of address resources `google_compute_address.foobar.*.self_link`,
361
+ the access level resource for the address resource must have a `lifecycle` block with `create_before_destroy = true` so
362
+ the number of resources can be increased/decreased without triggering the `resourceInUseByAnotherResource` error.
357
363
  """
358
364
  return pulumi.get(self, "nat_ips")
359
365
 
@@ -542,6 +548,9 @@ class _RouterNatState:
542
548
  Possible values are: `MANUAL_ONLY`, `AUTO_ONLY`.
543
549
  :param pulumi.Input[Sequence[pulumi.Input[str]]] nat_ips: Self-links of NAT IPs. Only valid if natIpAllocateOption
544
550
  is set to MANUAL_ONLY.
551
+ If this field is used alongside with a count created list of address resources `google_compute_address.foobar.*.self_link`,
552
+ the access level resource for the address resource must have a `lifecycle` block with `create_before_destroy = true` so
553
+ the number of resources can be increased/decreased without triggering the `resourceInUseByAnotherResource` error.
545
554
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
546
555
  If it is not provided, the provider project is used.
547
556
  :param pulumi.Input[str] region: Region where the router and NAT reside.
@@ -783,6 +792,9 @@ class _RouterNatState:
783
792
  """
784
793
  Self-links of NAT IPs. Only valid if natIpAllocateOption
785
794
  is set to MANUAL_ONLY.
795
+ If this field is used alongside with a count created list of address resources `google_compute_address.foobar.*.self_link`,
796
+ the access level resource for the address resource must have a `lifecycle` block with `create_before_destroy = true` so
797
+ the number of resources can be increased/decreased without triggering the `resourceInUseByAnotherResource` error.
786
798
  """
787
799
  return pulumi.get(self, "nat_ips")
788
800
 
@@ -980,6 +992,9 @@ class RouterNat(pulumi.CustomResource):
980
992
  """
981
993
  A NAT service created in a router.
982
994
 
995
+ > **Note:** Recreating a `compute.Address` that is being used by `compute.RouterNat` will give a `resourceInUseByAnotherResource` error.
996
+ Use `lifecycle.create_before_destroy` on this address resource to avoid this type of error as shown in the Manual Ips example.
997
+
983
998
  To get more information about RouterNat, see:
984
999
 
985
1000
  * [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/routers)
@@ -1018,39 +1033,6 @@ class RouterNat(pulumi.CustomResource):
1018
1033
  "filter": "ERRORS_ONLY",
1019
1034
  })
1020
1035
  ```
1021
- ### Router Nat Manual Ips
1022
-
1023
- ```python
1024
- import pulumi
1025
- import pulumi_gcp as gcp
1026
-
1027
- net = gcp.compute.Network("net", name="my-network")
1028
- subnet = gcp.compute.Subnetwork("subnet",
1029
- name="my-subnetwork",
1030
- network=net.id,
1031
- ip_cidr_range="10.0.0.0/16",
1032
- region="us-central1")
1033
- router = gcp.compute.Router("router",
1034
- name="my-router",
1035
- region=subnet.region,
1036
- network=net.id)
1037
- address = []
1038
- for range in [{"value": i} for i in range(0, 2)]:
1039
- address.append(gcp.compute.Address(f"address-{range['value']}",
1040
- name=f"nat-manual-ip-{range['value']}",
1041
- region=subnet.region))
1042
- nat_manual = gcp.compute.RouterNat("nat_manual",
1043
- name="my-router-nat",
1044
- router=router.name,
1045
- region=router.region,
1046
- nat_ip_allocate_option="MANUAL_ONLY",
1047
- nat_ips=[__item.self_link for __item in address],
1048
- source_subnetwork_ip_ranges_to_nat="LIST_OF_SUBNETWORKS",
1049
- subnetworks=[{
1050
- "name": subnet.id,
1051
- "source_ip_ranges_to_nats": ["ALL_IP_RANGES"],
1052
- }])
1053
- ```
1054
1036
  ### Router Nat Rules
1055
1037
 
1056
1038
  ```python
@@ -1221,6 +1203,9 @@ class RouterNat(pulumi.CustomResource):
1221
1203
  Possible values are: `MANUAL_ONLY`, `AUTO_ONLY`.
1222
1204
  :param pulumi.Input[Sequence[pulumi.Input[str]]] nat_ips: Self-links of NAT IPs. Only valid if natIpAllocateOption
1223
1205
  is set to MANUAL_ONLY.
1206
+ If this field is used alongside with a count created list of address resources `google_compute_address.foobar.*.self_link`,
1207
+ the access level resource for the address resource must have a `lifecycle` block with `create_before_destroy = true` so
1208
+ the number of resources can be increased/decreased without triggering the `resourceInUseByAnotherResource` error.
1224
1209
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
1225
1210
  If it is not provided, the provider project is used.
1226
1211
  :param pulumi.Input[str] region: Region where the router and NAT reside.
@@ -1267,6 +1252,9 @@ class RouterNat(pulumi.CustomResource):
1267
1252
  """
1268
1253
  A NAT service created in a router.
1269
1254
 
1255
+ > **Note:** Recreating a `compute.Address` that is being used by `compute.RouterNat` will give a `resourceInUseByAnotherResource` error.
1256
+ Use `lifecycle.create_before_destroy` on this address resource to avoid this type of error as shown in the Manual Ips example.
1257
+
1270
1258
  To get more information about RouterNat, see:
1271
1259
 
1272
1260
  * [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/routers)
@@ -1305,39 +1293,6 @@ class RouterNat(pulumi.CustomResource):
1305
1293
  "filter": "ERRORS_ONLY",
1306
1294
  })
1307
1295
  ```
1308
- ### Router Nat Manual Ips
1309
-
1310
- ```python
1311
- import pulumi
1312
- import pulumi_gcp as gcp
1313
-
1314
- net = gcp.compute.Network("net", name="my-network")
1315
- subnet = gcp.compute.Subnetwork("subnet",
1316
- name="my-subnetwork",
1317
- network=net.id,
1318
- ip_cidr_range="10.0.0.0/16",
1319
- region="us-central1")
1320
- router = gcp.compute.Router("router",
1321
- name="my-router",
1322
- region=subnet.region,
1323
- network=net.id)
1324
- address = []
1325
- for range in [{"value": i} for i in range(0, 2)]:
1326
- address.append(gcp.compute.Address(f"address-{range['value']}",
1327
- name=f"nat-manual-ip-{range['value']}",
1328
- region=subnet.region))
1329
- nat_manual = gcp.compute.RouterNat("nat_manual",
1330
- name="my-router-nat",
1331
- router=router.name,
1332
- region=router.region,
1333
- nat_ip_allocate_option="MANUAL_ONLY",
1334
- nat_ips=[__item.self_link for __item in address],
1335
- source_subnetwork_ip_ranges_to_nat="LIST_OF_SUBNETWORKS",
1336
- subnetworks=[{
1337
- "name": subnet.id,
1338
- "source_ip_ranges_to_nats": ["ALL_IP_RANGES"],
1339
- }])
1340
- ```
1341
1296
  ### Router Nat Rules
1342
1297
 
1343
1298
  ```python
@@ -1620,6 +1575,9 @@ class RouterNat(pulumi.CustomResource):
1620
1575
  Possible values are: `MANUAL_ONLY`, `AUTO_ONLY`.
1621
1576
  :param pulumi.Input[Sequence[pulumi.Input[str]]] nat_ips: Self-links of NAT IPs. Only valid if natIpAllocateOption
1622
1577
  is set to MANUAL_ONLY.
1578
+ If this field is used alongside with a count created list of address resources `google_compute_address.foobar.*.self_link`,
1579
+ the access level resource for the address resource must have a `lifecycle` block with `create_before_destroy = true` so
1580
+ the number of resources can be increased/decreased without triggering the `resourceInUseByAnotherResource` error.
1623
1581
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
1624
1582
  If it is not provided, the provider project is used.
1625
1583
  :param pulumi.Input[str] region: Region where the router and NAT reside.
@@ -1799,6 +1757,9 @@ class RouterNat(pulumi.CustomResource):
1799
1757
  """
1800
1758
  Self-links of NAT IPs. Only valid if natIpAllocateOption
1801
1759
  is set to MANUAL_ONLY.
1760
+ If this field is used alongside with a count created list of address resources `google_compute_address.foobar.*.self_link`,
1761
+ the access level resource for the address resource must have a `lifecycle` block with `create_before_destroy = true` so
1762
+ the number of resources can be increased/decreased without triggering the `resourceInUseByAnotherResource` error.
1802
1763
  """
1803
1764
  return pulumi.get(self, "nat_ips")
1804
1765
 
@@ -303,6 +303,8 @@ scopes: Optional[str]
303
303
 
304
304
  secretManagerCustomEndpoint: Optional[str]
305
305
 
306
+ secretManagerRegionalCustomEndpoint: Optional[str]
307
+
306
308
  secureSourceManagerCustomEndpoint: Optional[str]
307
309
 
308
310
  securityCenterCustomEndpoint: Optional[str]
pulumi_gcp/config/vars.py CHANGED
@@ -597,6 +597,10 @@ class _ExportableConfig(types.ModuleType):
597
597
  def secret_manager_custom_endpoint(self) -> Optional[str]:
598
598
  return __config__.get('secretManagerCustomEndpoint')
599
599
 
600
+ @property
601
+ def secret_manager_regional_custom_endpoint(self) -> Optional[str]:
602
+ return __config__.get('secretManagerRegionalCustomEndpoint')
603
+
600
604
  @property
601
605
  def secure_source_manager_custom_endpoint(self) -> Optional[str]:
602
606
  return __config__.get('secureSourceManagerCustomEndpoint')