pulumi-gcp 8.29.0a1746115375__py3-none-any.whl → 8.29.0a1746140206__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 (65) hide show
  1. pulumi_gcp/__init__.py +24 -0
  2. pulumi_gcp/alloydb/instance.py +1 -1
  3. pulumi_gcp/apigee/organization.py +26 -0
  4. pulumi_gcp/beyondcorp/_inputs.py +129 -0
  5. pulumi_gcp/beyondcorp/application.py +106 -3
  6. pulumi_gcp/beyondcorp/outputs.py +93 -0
  7. pulumi_gcp/bigtable/__init__.py +2 -0
  8. pulumi_gcp/bigtable/logical_view.py +473 -0
  9. pulumi_gcp/bigtable/materialized_view.py +524 -0
  10. pulumi_gcp/certificateauthority/ca_pool.py +12 -0
  11. pulumi_gcp/certificatemanager/get_certificates.py +29 -0
  12. pulumi_gcp/clouddeploy/automation.py +66 -10
  13. pulumi_gcp/compute/_inputs.py +366 -55
  14. pulumi_gcp/compute/backend_service.py +6 -2
  15. pulumi_gcp/compute/get_region_disk.py +12 -1
  16. pulumi_gcp/compute/interconnect.py +25 -24
  17. pulumi_gcp/compute/outputs.py +380 -48
  18. pulumi_gcp/compute/region_disk.py +28 -0
  19. pulumi_gcp/compute/region_resize_request.py +2 -2
  20. pulumi_gcp/compute/region_security_policy.py +16 -0
  21. pulumi_gcp/compute/region_security_policy_rule.py +16 -0
  22. pulumi_gcp/compute/resize_request.py +2 -2
  23. pulumi_gcp/compute/resource_policy.py +0 -2
  24. pulumi_gcp/container/_inputs.py +69 -9
  25. pulumi_gcp/container/outputs.py +71 -7
  26. pulumi_gcp/dataplex/_inputs.py +219 -1
  27. pulumi_gcp/dataplex/datascan.py +20 -0
  28. pulumi_gcp/dataplex/outputs.py +168 -1
  29. pulumi_gcp/developerconnect/_inputs.py +6 -0
  30. pulumi_gcp/developerconnect/account_connector.py +56 -0
  31. pulumi_gcp/developerconnect/outputs.py +4 -0
  32. pulumi_gcp/dns/_inputs.py +34 -13
  33. pulumi_gcp/dns/outputs.py +25 -10
  34. pulumi_gcp/gkehub/_inputs.py +3 -3
  35. pulumi_gcp/gkehub/feature_membership.py +92 -0
  36. pulumi_gcp/gkehub/outputs.py +2 -2
  37. pulumi_gcp/identityplatform/_inputs.py +54 -0
  38. pulumi_gcp/identityplatform/oauth_idp_config.py +83 -5
  39. pulumi_gcp/identityplatform/outputs.py +49 -0
  40. pulumi_gcp/memcache/__init__.py +1 -0
  41. pulumi_gcp/memcache/get_instance.py +338 -0
  42. pulumi_gcp/memcache/outputs.py +363 -0
  43. pulumi_gcp/netapp/storage_pool.py +141 -0
  44. pulumi_gcp/networkservices/_inputs.py +35 -6
  45. pulumi_gcp/networkservices/lb_traffic_extension.py +7 -0
  46. pulumi_gcp/networkservices/outputs.py +22 -4
  47. pulumi_gcp/osconfig/__init__.py +1 -0
  48. pulumi_gcp/osconfig/_inputs.py +5400 -0
  49. pulumi_gcp/osconfig/outputs.py +3952 -0
  50. pulumi_gcp/osconfig/v2_policy_orchestrator_for_folder.py +1098 -0
  51. pulumi_gcp/pulumi-plugin.json +1 -1
  52. pulumi_gcp/spanner/instance_config.py +14 -14
  53. pulumi_gcp/sql/_inputs.py +83 -0
  54. pulumi_gcp/sql/database_instance.py +28 -0
  55. pulumi_gcp/sql/get_database_instance.py +12 -1
  56. pulumi_gcp/sql/outputs.py +146 -6
  57. pulumi_gcp/storage/_inputs.py +20 -0
  58. pulumi_gcp/storage/bucket.py +56 -0
  59. pulumi_gcp/storage/get_bucket.py +23 -1
  60. pulumi_gcp/storage/outputs.py +14 -0
  61. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +2 -14
  62. {pulumi_gcp-8.29.0a1746115375.dist-info → pulumi_gcp-8.29.0a1746140206.dist-info}/METADATA +1 -1
  63. {pulumi_gcp-8.29.0a1746115375.dist-info → pulumi_gcp-8.29.0a1746140206.dist-info}/RECORD +65 -61
  64. {pulumi_gcp-8.29.0a1746115375.dist-info → pulumi_gcp-8.29.0a1746140206.dist-info}/WHEEL +0 -0
  65. {pulumi_gcp-8.29.0a1746115375.dist-info → pulumi_gcp-8.29.0a1746140206.dist-info}/top_level.txt +0 -0
@@ -1731,6 +1731,9 @@ class BackendService(pulumi.CustomResource):
1731
1731
 
1732
1732
  Currently self-managed internal load balancing is only available in beta.
1733
1733
 
1734
+ > **Note:** Recreating a `compute.BackendService` that references other dependent resources like `compute.URLMap` will give a `resourceInUseByAnotherResource` error, when modifying the number of other dependent resources.
1735
+ Use `lifecycle.create_before_destroy` on the dependent resources to avoid this type of error as shown in the Dynamic Backends example.
1736
+
1734
1737
  To get more information about BackendService, see:
1735
1738
 
1736
1739
  * [API documentation](https://cloud.google.com/compute/docs/reference/v1/backendServices)
@@ -2105,7 +2108,6 @@ class BackendService(pulumi.CustomResource):
2105
2108
  "authentication_config": default_backend_authentication_config.id.apply(lambda id: f"//networksecurity.googleapis.com/{id}"),
2106
2109
  })
2107
2110
  ```
2108
-
2109
2111
  ## Import
2110
2112
 
2111
2113
  BackendService can be imported using any of these accepted formats:
@@ -2311,6 +2313,9 @@ class BackendService(pulumi.CustomResource):
2311
2313
 
2312
2314
  Currently self-managed internal load balancing is only available in beta.
2313
2315
 
2316
+ > **Note:** Recreating a `compute.BackendService` that references other dependent resources like `compute.URLMap` will give a `resourceInUseByAnotherResource` error, when modifying the number of other dependent resources.
2317
+ Use `lifecycle.create_before_destroy` on the dependent resources to avoid this type of error as shown in the Dynamic Backends example.
2318
+
2314
2319
  To get more information about BackendService, see:
2315
2320
 
2316
2321
  * [API documentation](https://cloud.google.com/compute/docs/reference/v1/backendServices)
@@ -2685,7 +2690,6 @@ class BackendService(pulumi.CustomResource):
2685
2690
  "authentication_config": default_backend_authentication_config.id.apply(lambda id: f"//networksecurity.googleapis.com/{id}"),
2686
2691
  })
2687
2692
  ```
2688
-
2689
2693
  ## Import
2690
2694
 
2691
2695
  BackendService can be imported using any of these accepted formats:
@@ -28,7 +28,7 @@ class GetRegionDiskResult:
28
28
  """
29
29
  A collection of values returned by getRegionDisk.
30
30
  """
31
- def __init__(__self__, async_primary_disks=None, create_snapshot_before_destroy=None, create_snapshot_before_destroy_prefix=None, creation_timestamp=None, description=None, disk_encryption_keys=None, effective_labels=None, guest_os_features=None, id=None, interface=None, label_fingerprint=None, labels=None, last_attach_timestamp=None, last_detach_timestamp=None, licenses=None, name=None, physical_block_size_bytes=None, project=None, pulumi_labels=None, region=None, replica_zones=None, self_link=None, size=None, snapshot=None, source_disk=None, source_disk_id=None, source_snapshot_encryption_keys=None, source_snapshot_id=None, type=None, users=None):
31
+ def __init__(__self__, async_primary_disks=None, create_snapshot_before_destroy=None, create_snapshot_before_destroy_prefix=None, creation_timestamp=None, description=None, disk_encryption_keys=None, disk_id=None, effective_labels=None, guest_os_features=None, id=None, interface=None, label_fingerprint=None, labels=None, last_attach_timestamp=None, last_detach_timestamp=None, licenses=None, name=None, physical_block_size_bytes=None, project=None, pulumi_labels=None, region=None, replica_zones=None, self_link=None, size=None, snapshot=None, source_disk=None, source_disk_id=None, source_snapshot_encryption_keys=None, source_snapshot_id=None, type=None, users=None):
32
32
  if async_primary_disks and not isinstance(async_primary_disks, list):
33
33
  raise TypeError("Expected argument 'async_primary_disks' to be a list")
34
34
  pulumi.set(__self__, "async_primary_disks", async_primary_disks)
@@ -47,6 +47,9 @@ class GetRegionDiskResult:
47
47
  if disk_encryption_keys and not isinstance(disk_encryption_keys, list):
48
48
  raise TypeError("Expected argument 'disk_encryption_keys' to be a list")
49
49
  pulumi.set(__self__, "disk_encryption_keys", disk_encryption_keys)
50
+ if disk_id and not isinstance(disk_id, str):
51
+ raise TypeError("Expected argument 'disk_id' to be a str")
52
+ pulumi.set(__self__, "disk_id", disk_id)
50
53
  if effective_labels and not isinstance(effective_labels, dict):
51
54
  raise TypeError("Expected argument 'effective_labels' to be a dict")
52
55
  pulumi.set(__self__, "effective_labels", effective_labels)
@@ -150,6 +153,11 @@ class GetRegionDiskResult:
150
153
  def disk_encryption_keys(self) -> Sequence['outputs.GetRegionDiskDiskEncryptionKeyResult']:
151
154
  return pulumi.get(self, "disk_encryption_keys")
152
155
 
156
+ @property
157
+ @pulumi.getter(name="diskId")
158
+ def disk_id(self) -> builtins.str:
159
+ return pulumi.get(self, "disk_id")
160
+
153
161
  @property
154
162
  @pulumi.getter(name="effectiveLabels")
155
163
  def effective_labels(self) -> Mapping[str, builtins.str]:
@@ -286,6 +294,7 @@ class AwaitableGetRegionDiskResult(GetRegionDiskResult):
286
294
  creation_timestamp=self.creation_timestamp,
287
295
  description=self.description,
288
296
  disk_encryption_keys=self.disk_encryption_keys,
297
+ disk_id=self.disk_id,
289
298
  effective_labels=self.effective_labels,
290
299
  guest_os_features=self.guest_os_features,
291
300
  id=self.id,
@@ -343,6 +352,7 @@ def get_region_disk(name: Optional[builtins.str] = None,
343
352
  creation_timestamp=pulumi.get(__ret__, 'creation_timestamp'),
344
353
  description=pulumi.get(__ret__, 'description'),
345
354
  disk_encryption_keys=pulumi.get(__ret__, 'disk_encryption_keys'),
355
+ disk_id=pulumi.get(__ret__, 'disk_id'),
346
356
  effective_labels=pulumi.get(__ret__, 'effective_labels'),
347
357
  guest_os_features=pulumi.get(__ret__, 'guest_os_features'),
348
358
  id=pulumi.get(__ret__, 'id'),
@@ -397,6 +407,7 @@ def get_region_disk_output(name: Optional[pulumi.Input[builtins.str]] = None,
397
407
  creation_timestamp=pulumi.get(__response__, 'creation_timestamp'),
398
408
  description=pulumi.get(__response__, 'description'),
399
409
  disk_encryption_keys=pulumi.get(__response__, 'disk_encryption_keys'),
410
+ disk_id=pulumi.get(__response__, 'disk_id'),
400
411
  effective_labels=pulumi.get(__response__, 'effective_labels'),
401
412
  guest_os_features=pulumi.get(__response__, 'guest_os_features'),
402
413
  id=pulumi.get(__response__, 'id'),
@@ -24,12 +24,12 @@ class InterconnectArgs:
24
24
  def __init__(__self__, *,
25
25
  interconnect_type: pulumi.Input[builtins.str],
26
26
  link_type: pulumi.Input[builtins.str],
27
+ location: pulumi.Input[builtins.str],
27
28
  requested_link_count: pulumi.Input[builtins.int],
28
29
  admin_enabled: Optional[pulumi.Input[builtins.bool]] = None,
29
30
  customer_name: Optional[pulumi.Input[builtins.str]] = None,
30
31
  description: Optional[pulumi.Input[builtins.str]] = None,
31
32
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
32
- location: Optional[pulumi.Input[builtins.str]] = None,
33
33
  macsec: Optional[pulumi.Input['InterconnectMacsecArgs']] = None,
34
34
  macsec_enabled: Optional[pulumi.Input[builtins.bool]] = None,
35
35
  name: Optional[pulumi.Input[builtins.str]] = None,
@@ -53,6 +53,8 @@ class InterconnectArgs:
53
53
  - LINK_TYPE_ETHERNET_100G_LR: A 100G Ethernet with LR optics.
54
54
  - LINK_TYPE_ETHERNET_400G_LR4: A 400G Ethernet with LR4 optics
55
55
  Possible values are: `LINK_TYPE_ETHERNET_10G_LR`, `LINK_TYPE_ETHERNET_100G_LR`, `LINK_TYPE_ETHERNET_400G_LR4`.
56
+ :param pulumi.Input[builtins.str] location: URL of the InterconnectLocation object that represents where this connection is to be provisioned.
57
+ Specifies the location inside Google's Networks.
56
58
  :param pulumi.Input[builtins.int] requested_link_count: Target number of physical links in the link bundle, as requested by the customer.
57
59
  :param pulumi.Input[builtins.bool] admin_enabled: Administrative status of the interconnect. When this is set to true, the Interconnect is
58
60
  functional and can carry traffic. When set to false, no packets can be carried over the
@@ -66,8 +68,6 @@ class InterconnectArgs:
66
68
 
67
69
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
68
70
  Please refer to the field `effective_labels` for all of the labels present on the resource.
69
- :param pulumi.Input[builtins.str] location: URL of the InterconnectLocation object that represents where this connection is to be provisioned.
70
- Specifies the location inside Google's Networks, should not be passed in case of cross-cloud interconnect.
71
71
  :param pulumi.Input['InterconnectMacsecArgs'] macsec: Configuration that enables Media Access Control security (MACsec) on the Cloud
72
72
  Interconnect connection between Google and your on-premises router.
73
73
  Structure is documented below.
@@ -96,6 +96,7 @@ class InterconnectArgs:
96
96
  """
97
97
  pulumi.set(__self__, "interconnect_type", interconnect_type)
98
98
  pulumi.set(__self__, "link_type", link_type)
99
+ pulumi.set(__self__, "location", location)
99
100
  pulumi.set(__self__, "requested_link_count", requested_link_count)
100
101
  if admin_enabled is not None:
101
102
  pulumi.set(__self__, "admin_enabled", admin_enabled)
@@ -105,8 +106,6 @@ class InterconnectArgs:
105
106
  pulumi.set(__self__, "description", description)
106
107
  if labels is not None:
107
108
  pulumi.set(__self__, "labels", labels)
108
- if location is not None:
109
- pulumi.set(__self__, "location", location)
110
109
  if macsec is not None:
111
110
  pulumi.set(__self__, "macsec", macsec)
112
111
  if macsec_enabled is not None:
@@ -158,6 +157,19 @@ class InterconnectArgs:
158
157
  def link_type(self, value: pulumi.Input[builtins.str]):
159
158
  pulumi.set(self, "link_type", value)
160
159
 
160
+ @property
161
+ @pulumi.getter
162
+ def location(self) -> pulumi.Input[builtins.str]:
163
+ """
164
+ URL of the InterconnectLocation object that represents where this connection is to be provisioned.
165
+ Specifies the location inside Google's Networks.
166
+ """
167
+ return pulumi.get(self, "location")
168
+
169
+ @location.setter
170
+ def location(self, value: pulumi.Input[builtins.str]):
171
+ pulumi.set(self, "location", value)
172
+
161
173
  @property
162
174
  @pulumi.getter(name="requestedLinkCount")
163
175
  def requested_link_count(self) -> pulumi.Input[builtins.int]:
@@ -226,19 +238,6 @@ class InterconnectArgs:
226
238
  def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
227
239
  pulumi.set(self, "labels", value)
228
240
 
229
- @property
230
- @pulumi.getter
231
- def location(self) -> Optional[pulumi.Input[builtins.str]]:
232
- """
233
- URL of the InterconnectLocation object that represents where this connection is to be provisioned.
234
- Specifies the location inside Google's Networks, should not be passed in case of cross-cloud interconnect.
235
- """
236
- return pulumi.get(self, "location")
237
-
238
- @location.setter
239
- def location(self, value: Optional[pulumi.Input[builtins.str]]):
240
- pulumi.set(self, "location", value)
241
-
242
241
  @property
243
242
  @pulumi.getter
244
243
  def macsec(self) -> Optional[pulumi.Input['InterconnectMacsecArgs']]:
@@ -424,7 +423,7 @@ class _InterconnectState:
424
423
  - LINK_TYPE_ETHERNET_400G_LR4: A 400G Ethernet with LR4 optics
425
424
  Possible values are: `LINK_TYPE_ETHERNET_10G_LR`, `LINK_TYPE_ETHERNET_100G_LR`, `LINK_TYPE_ETHERNET_400G_LR4`.
426
425
  :param pulumi.Input[builtins.str] location: URL of the InterconnectLocation object that represents where this connection is to be provisioned.
427
- Specifies the location inside Google's Networks, should not be passed in case of cross-cloud interconnect.
426
+ Specifies the location inside Google's Networks.
428
427
  :param pulumi.Input['InterconnectMacsecArgs'] macsec: Configuration that enables Media Access Control security (MACsec) on the Cloud
429
428
  Interconnect connection between Google and your on-premises router.
430
429
  Structure is documented below.
@@ -751,7 +750,7 @@ class _InterconnectState:
751
750
  def location(self) -> Optional[pulumi.Input[builtins.str]]:
752
751
  """
753
752
  URL of the InterconnectLocation object that represents where this connection is to be provisioned.
754
- Specifies the location inside Google's Networks, should not be passed in case of cross-cloud interconnect.
753
+ Specifies the location inside Google's Networks.
755
754
  """
756
755
  return pulumi.get(self, "location")
757
756
 
@@ -1067,7 +1066,7 @@ class Interconnect(pulumi.CustomResource):
1067
1066
  - LINK_TYPE_ETHERNET_400G_LR4: A 400G Ethernet with LR4 optics
1068
1067
  Possible values are: `LINK_TYPE_ETHERNET_10G_LR`, `LINK_TYPE_ETHERNET_100G_LR`, `LINK_TYPE_ETHERNET_400G_LR4`.
1069
1068
  :param pulumi.Input[builtins.str] location: URL of the InterconnectLocation object that represents where this connection is to be provisioned.
1070
- Specifies the location inside Google's Networks, should not be passed in case of cross-cloud interconnect.
1069
+ Specifies the location inside Google's Networks.
1071
1070
  :param pulumi.Input[Union['InterconnectMacsecArgs', 'InterconnectMacsecArgsDict']] macsec: Configuration that enables Media Access Control security (MACsec) on the Cloud
1072
1071
  Interconnect connection between Google and your on-premises router.
1073
1072
  Structure is documented below.
@@ -1202,6 +1201,8 @@ class Interconnect(pulumi.CustomResource):
1202
1201
  if link_type is None and not opts.urn:
1203
1202
  raise TypeError("Missing required property 'link_type'")
1204
1203
  __props__.__dict__["link_type"] = link_type
1204
+ if location is None and not opts.urn:
1205
+ raise TypeError("Missing required property 'location'")
1205
1206
  __props__.__dict__["location"] = location
1206
1207
  __props__.__dict__["macsec"] = macsec
1207
1208
  __props__.__dict__["macsec_enabled"] = macsec_enabled
@@ -1324,7 +1325,7 @@ class Interconnect(pulumi.CustomResource):
1324
1325
  - LINK_TYPE_ETHERNET_400G_LR4: A 400G Ethernet with LR4 optics
1325
1326
  Possible values are: `LINK_TYPE_ETHERNET_10G_LR`, `LINK_TYPE_ETHERNET_100G_LR`, `LINK_TYPE_ETHERNET_400G_LR4`.
1326
1327
  :param pulumi.Input[builtins.str] location: URL of the InterconnectLocation object that represents where this connection is to be provisioned.
1327
- Specifies the location inside Google's Networks, should not be passed in case of cross-cloud interconnect.
1328
+ Specifies the location inside Google's Networks.
1328
1329
  :param pulumi.Input[Union['InterconnectMacsecArgs', 'InterconnectMacsecArgsDict']] macsec: Configuration that enables Media Access Control security (MACsec) on the Cloud
1329
1330
  Interconnect connection between Google and your on-premises router.
1330
1331
  Structure is documented below.
@@ -1563,10 +1564,10 @@ class Interconnect(pulumi.CustomResource):
1563
1564
 
1564
1565
  @property
1565
1566
  @pulumi.getter
1566
- def location(self) -> pulumi.Output[Optional[builtins.str]]:
1567
+ def location(self) -> pulumi.Output[builtins.str]:
1567
1568
  """
1568
1569
  URL of the InterconnectLocation object that represents where this connection is to be provisioned.
1569
- Specifies the location inside Google's Networks, should not be passed in case of cross-cloud interconnect.
1570
+ Specifies the location inside Google's Networks.
1570
1571
  """
1571
1572
  return pulumi.get(self, "location")
1572
1573