pulumi-gcp 8.36.0a1751060819__py3-none-any.whl → 8.37.0__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 (64) hide show
  1. pulumi_gcp/__init__.py +24 -0
  2. pulumi_gcp/apihub/__init__.py +1 -0
  3. pulumi_gcp/apihub/_inputs.py +675 -0
  4. pulumi_gcp/apihub/outputs.py +567 -0
  5. pulumi_gcp/apihub/plugin.py +1146 -0
  6. pulumi_gcp/bigqueryanalyticshub/data_exchange.py +7 -7
  7. pulumi_gcp/bigqueryanalyticshub/listing.py +7 -7
  8. pulumi_gcp/cloudidentity/group_membership.py +47 -0
  9. pulumi_gcp/cloudidentity/outputs.py +11 -0
  10. pulumi_gcp/cloudrunv2/_inputs.py +65 -9
  11. pulumi_gcp/cloudrunv2/job.py +44 -0
  12. pulumi_gcp/cloudrunv2/outputs.py +73 -8
  13. pulumi_gcp/cloudrunv2/service.py +0 -2
  14. pulumi_gcp/cloudrunv2/worker_pool.py +18 -20
  15. pulumi_gcp/compute/__init__.py +1 -0
  16. pulumi_gcp/compute/_inputs.py +763 -6
  17. pulumi_gcp/compute/disk.py +35 -28
  18. pulumi_gcp/compute/firewall_policy_rule.py +207 -0
  19. pulumi_gcp/compute/get_instance_group_manager.py +12 -1
  20. pulumi_gcp/compute/get_region_disk.py +12 -1
  21. pulumi_gcp/compute/instance_group_manager.py +165 -14
  22. pulumi_gcp/compute/network.py +56 -0
  23. pulumi_gcp/compute/network_firewall_policy.py +68 -0
  24. pulumi_gcp/compute/network_firewall_policy_with_rules.py +61 -0
  25. pulumi_gcp/compute/outputs.py +604 -4
  26. pulumi_gcp/compute/region_disk.py +114 -0
  27. pulumi_gcp/compute/region_network_firewall_policy.py +90 -0
  28. pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +109 -0
  29. pulumi_gcp/compute/wire_group.py +751 -0
  30. pulumi_gcp/container/_inputs.py +135 -16
  31. pulumi_gcp/container/cluster.py +54 -0
  32. pulumi_gcp/container/get_cluster.py +12 -1
  33. pulumi_gcp/container/node_pool.py +14 -0
  34. pulumi_gcp/container/outputs.py +222 -12
  35. pulumi_gcp/diagflow/__init__.py +1 -0
  36. pulumi_gcp/diagflow/_inputs.py +431 -0
  37. pulumi_gcp/diagflow/cx_generative_settings.py +625 -0
  38. pulumi_gcp/diagflow/outputs.py +370 -0
  39. pulumi_gcp/dns/record_set.py +4 -2
  40. pulumi_gcp/firestore/database.py +0 -9
  41. pulumi_gcp/iam/_inputs.py +36 -0
  42. pulumi_gcp/iam/outputs.py +38 -0
  43. pulumi_gcp/iam/workload_identity_pool_managed_identity.py +88 -2
  44. pulumi_gcp/kms/autokey_config.py +28 -0
  45. pulumi_gcp/kms/get_autokey_config.py +12 -1
  46. pulumi_gcp/memorystore/get_instance.py +12 -1
  47. pulumi_gcp/memorystore/instance.py +49 -0
  48. pulumi_gcp/monitoring/metric_descriptor.py +55 -57
  49. pulumi_gcp/notebooks/instance.py +8 -8
  50. pulumi_gcp/pulumi-plugin.json +1 -1
  51. pulumi_gcp/redis/get_instance.py +12 -1
  52. pulumi_gcp/redis/instance.py +44 -0
  53. pulumi_gcp/secretmanager/get_regional_secret.py +12 -1
  54. pulumi_gcp/secretmanager/outputs.py +7 -0
  55. pulumi_gcp/secretmanager/regional_secret.py +38 -2
  56. pulumi_gcp/spanner/_inputs.py +24 -1
  57. pulumi_gcp/spanner/outputs.py +17 -1
  58. pulumi_gcp/storage/_inputs.py +43 -3
  59. pulumi_gcp/storage/outputs.py +53 -3
  60. pulumi_gcp/workbench/instance.py +2 -0
  61. {pulumi_gcp-8.36.0a1751060819.dist-info → pulumi_gcp-8.37.0.dist-info}/METADATA +1 -1
  62. {pulumi_gcp-8.36.0a1751060819.dist-info → pulumi_gcp-8.37.0.dist-info}/RECORD +64 -61
  63. {pulumi_gcp-8.36.0a1751060819.dist-info → pulumi_gcp-8.37.0.dist-info}/WHEEL +0 -0
  64. {pulumi_gcp-8.36.0a1751060819.dist-info → pulumi_gcp-8.37.0.dist-info}/top_level.txt +0 -0
@@ -26,6 +26,7 @@ class RegionalSecretArgs:
26
26
  secret_id: pulumi.Input[builtins.str],
27
27
  annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
28
28
  customer_managed_encryption: Optional[pulumi.Input['RegionalSecretCustomerManagedEncryptionArgs']] = None,
29
+ deletion_protection: Optional[pulumi.Input[builtins.bool]] = None,
29
30
  expire_time: Optional[pulumi.Input[builtins.str]] = None,
30
31
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
31
32
  project: Optional[pulumi.Input[builtins.str]] = None,
@@ -101,6 +102,8 @@ class RegionalSecretArgs:
101
102
  pulumi.set(__self__, "annotations", annotations)
102
103
  if customer_managed_encryption is not None:
103
104
  pulumi.set(__self__, "customer_managed_encryption", customer_managed_encryption)
105
+ if deletion_protection is not None:
106
+ pulumi.set(__self__, "deletion_protection", deletion_protection)
104
107
  if expire_time is not None:
105
108
  pulumi.set(__self__, "expire_time", expire_time)
106
109
  if labels is not None:
@@ -182,6 +185,15 @@ class RegionalSecretArgs:
182
185
  def customer_managed_encryption(self, value: Optional[pulumi.Input['RegionalSecretCustomerManagedEncryptionArgs']]):
183
186
  pulumi.set(self, "customer_managed_encryption", value)
184
187
 
188
+ @property
189
+ @pulumi.getter(name="deletionProtection")
190
+ def deletion_protection(self) -> Optional[pulumi.Input[builtins.bool]]:
191
+ return pulumi.get(self, "deletion_protection")
192
+
193
+ @deletion_protection.setter
194
+ def deletion_protection(self, value: Optional[pulumi.Input[builtins.bool]]):
195
+ pulumi.set(self, "deletion_protection", value)
196
+
185
197
  @property
186
198
  @pulumi.getter(name="expireTime")
187
199
  def expire_time(self) -> Optional[pulumi.Input[builtins.str]]:
@@ -315,6 +327,7 @@ class _RegionalSecretState:
315
327
  annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
316
328
  create_time: Optional[pulumi.Input[builtins.str]] = None,
317
329
  customer_managed_encryption: Optional[pulumi.Input['RegionalSecretCustomerManagedEncryptionArgs']] = None,
330
+ deletion_protection: Optional[pulumi.Input[builtins.bool]] = None,
318
331
  effective_annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
319
332
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
320
333
  expire_time: Optional[pulumi.Input[builtins.str]] = None,
@@ -402,6 +415,8 @@ class _RegionalSecretState:
402
415
  pulumi.set(__self__, "create_time", create_time)
403
416
  if customer_managed_encryption is not None:
404
417
  pulumi.set(__self__, "customer_managed_encryption", customer_managed_encryption)
418
+ if deletion_protection is not None:
419
+ pulumi.set(__self__, "deletion_protection", deletion_protection)
405
420
  if effective_annotations is not None:
406
421
  pulumi.set(__self__, "effective_annotations", effective_annotations)
407
422
  if effective_labels is not None:
@@ -480,6 +495,15 @@ class _RegionalSecretState:
480
495
  def customer_managed_encryption(self, value: Optional[pulumi.Input['RegionalSecretCustomerManagedEncryptionArgs']]):
481
496
  pulumi.set(self, "customer_managed_encryption", value)
482
497
 
498
+ @property
499
+ @pulumi.getter(name="deletionProtection")
500
+ def deletion_protection(self) -> Optional[pulumi.Input[builtins.bool]]:
501
+ return pulumi.get(self, "deletion_protection")
502
+
503
+ @deletion_protection.setter
504
+ def deletion_protection(self, value: Optional[pulumi.Input[builtins.bool]]):
505
+ pulumi.set(self, "deletion_protection", value)
506
+
483
507
  @property
484
508
  @pulumi.getter(name="effectiveAnnotations")
485
509
  def effective_annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
@@ -689,6 +713,7 @@ class RegionalSecret(pulumi.CustomResource):
689
713
  opts: Optional[pulumi.ResourceOptions] = None,
690
714
  annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
691
715
  customer_managed_encryption: Optional[pulumi.Input[Union['RegionalSecretCustomerManagedEncryptionArgs', 'RegionalSecretCustomerManagedEncryptionArgsDict']]] = None,
716
+ deletion_protection: Optional[pulumi.Input[builtins.bool]] = None,
692
717
  expire_time: Optional[pulumi.Input[builtins.str]] = None,
693
718
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
694
719
  location: Optional[pulumi.Input[builtins.str]] = None,
@@ -727,7 +752,8 @@ class RegionalSecret(pulumi.CustomResource):
727
752
  "key1": "value1",
728
753
  "key2": "value2",
729
754
  "key3": "value3",
730
- })
755
+ },
756
+ deletion_protection=False)
731
757
  ```
732
758
  ### Regional Secret With Cmek
733
759
 
@@ -948,7 +974,8 @@ class RegionalSecret(pulumi.CustomResource):
948
974
  "key1": "value1",
949
975
  "key2": "value2",
950
976
  "key3": "value3",
951
- })
977
+ },
978
+ deletion_protection=False)
952
979
  ```
953
980
  ### Regional Secret With Cmek
954
981
 
@@ -1092,6 +1119,7 @@ class RegionalSecret(pulumi.CustomResource):
1092
1119
  opts: Optional[pulumi.ResourceOptions] = None,
1093
1120
  annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1094
1121
  customer_managed_encryption: Optional[pulumi.Input[Union['RegionalSecretCustomerManagedEncryptionArgs', 'RegionalSecretCustomerManagedEncryptionArgsDict']]] = None,
1122
+ deletion_protection: Optional[pulumi.Input[builtins.bool]] = None,
1095
1123
  expire_time: Optional[pulumi.Input[builtins.str]] = None,
1096
1124
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1097
1125
  location: Optional[pulumi.Input[builtins.str]] = None,
@@ -1113,6 +1141,7 @@ class RegionalSecret(pulumi.CustomResource):
1113
1141
 
1114
1142
  __props__.__dict__["annotations"] = annotations
1115
1143
  __props__.__dict__["customer_managed_encryption"] = customer_managed_encryption
1144
+ __props__.__dict__["deletion_protection"] = deletion_protection
1116
1145
  __props__.__dict__["expire_time"] = expire_time
1117
1146
  __props__.__dict__["labels"] = labels
1118
1147
  if location is None and not opts.urn:
@@ -1147,6 +1176,7 @@ class RegionalSecret(pulumi.CustomResource):
1147
1176
  annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1148
1177
  create_time: Optional[pulumi.Input[builtins.str]] = None,
1149
1178
  customer_managed_encryption: Optional[pulumi.Input[Union['RegionalSecretCustomerManagedEncryptionArgs', 'RegionalSecretCustomerManagedEncryptionArgsDict']]] = None,
1179
+ deletion_protection: Optional[pulumi.Input[builtins.bool]] = None,
1150
1180
  effective_annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1151
1181
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1152
1182
  expire_time: Optional[pulumi.Input[builtins.str]] = None,
@@ -1240,6 +1270,7 @@ class RegionalSecret(pulumi.CustomResource):
1240
1270
  __props__.__dict__["annotations"] = annotations
1241
1271
  __props__.__dict__["create_time"] = create_time
1242
1272
  __props__.__dict__["customer_managed_encryption"] = customer_managed_encryption
1273
+ __props__.__dict__["deletion_protection"] = deletion_protection
1243
1274
  __props__.__dict__["effective_annotations"] = effective_annotations
1244
1275
  __props__.__dict__["effective_labels"] = effective_labels
1245
1276
  __props__.__dict__["expire_time"] = expire_time
@@ -1293,6 +1324,11 @@ class RegionalSecret(pulumi.CustomResource):
1293
1324
  """
1294
1325
  return pulumi.get(self, "customer_managed_encryption")
1295
1326
 
1327
+ @property
1328
+ @pulumi.getter(name="deletionProtection")
1329
+ def deletion_protection(self) -> pulumi.Output[Optional[builtins.bool]]:
1330
+ return pulumi.get(self, "deletion_protection")
1331
+
1296
1332
  @property
1297
1333
  @pulumi.getter(name="effectiveAnnotations")
1298
1334
  def effective_annotations(self) -> pulumi.Output[Mapping[str, builtins.str]]:
@@ -71,6 +71,11 @@ if not MYPY:
71
71
  The resource name of the Cloud KMS key to use for encryption.
72
72
  Format: 'projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey}'
73
73
  """
74
+ kms_key_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]
75
+ """
76
+ Fully qualified name of the KMS keys to use to encrypt this database. The keys must exist
77
+ in the same locations as the Spanner Database.
78
+ """
74
79
  elif False:
75
80
  BackupScheduleEncryptionConfigArgsDict: TypeAlias = Mapping[str, Any]
76
81
 
@@ -78,7 +83,8 @@ elif False:
78
83
  class BackupScheduleEncryptionConfigArgs:
79
84
  def __init__(__self__, *,
80
85
  encryption_type: pulumi.Input[builtins.str],
81
- kms_key_name: Optional[pulumi.Input[builtins.str]] = None):
86
+ kms_key_name: Optional[pulumi.Input[builtins.str]] = None,
87
+ kms_key_names: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None):
82
88
  """
83
89
  :param pulumi.Input[builtins.str] encryption_type: The encryption type of backups created by the backup schedule.
84
90
  Possible values are USE_DATABASE_ENCRYPTION, GOOGLE_DEFAULT_ENCRYPTION, or CUSTOMER_MANAGED_ENCRYPTION.
@@ -87,10 +93,14 @@ class BackupScheduleEncryptionConfigArgs:
87
93
  Possible values are: `USE_DATABASE_ENCRYPTION`, `GOOGLE_DEFAULT_ENCRYPTION`, `CUSTOMER_MANAGED_ENCRYPTION`.
88
94
  :param pulumi.Input[builtins.str] kms_key_name: The resource name of the Cloud KMS key to use for encryption.
89
95
  Format: 'projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey}'
96
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] kms_key_names: Fully qualified name of the KMS keys to use to encrypt this database. The keys must exist
97
+ in the same locations as the Spanner Database.
90
98
  """
91
99
  pulumi.set(__self__, "encryption_type", encryption_type)
92
100
  if kms_key_name is not None:
93
101
  pulumi.set(__self__, "kms_key_name", kms_key_name)
102
+ if kms_key_names is not None:
103
+ pulumi.set(__self__, "kms_key_names", kms_key_names)
94
104
 
95
105
  @property
96
106
  @pulumi.getter(name="encryptionType")
@@ -121,6 +131,19 @@ class BackupScheduleEncryptionConfigArgs:
121
131
  def kms_key_name(self, value: Optional[pulumi.Input[builtins.str]]):
122
132
  pulumi.set(self, "kms_key_name", value)
123
133
 
134
+ @property
135
+ @pulumi.getter(name="kmsKeyNames")
136
+ def kms_key_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
137
+ """
138
+ Fully qualified name of the KMS keys to use to encrypt this database. The keys must exist
139
+ in the same locations as the Spanner Database.
140
+ """
141
+ return pulumi.get(self, "kms_key_names")
142
+
143
+ @kms_key_names.setter
144
+ def kms_key_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
145
+ pulumi.set(self, "kms_key_names", value)
146
+
124
147
 
125
148
  if not MYPY:
126
149
  class BackupScheduleFullBackupSpecArgsDict(TypedDict):
@@ -54,6 +54,8 @@ class BackupScheduleEncryptionConfig(dict):
54
54
  suggest = "encryption_type"
55
55
  elif key == "kmsKeyName":
56
56
  suggest = "kms_key_name"
57
+ elif key == "kmsKeyNames":
58
+ suggest = "kms_key_names"
57
59
 
58
60
  if suggest:
59
61
  pulumi.log.warn(f"Key '{key}' not found in BackupScheduleEncryptionConfig. Access the value via the '{suggest}' property getter instead.")
@@ -68,7 +70,8 @@ class BackupScheduleEncryptionConfig(dict):
68
70
 
69
71
  def __init__(__self__, *,
70
72
  encryption_type: builtins.str,
71
- kms_key_name: Optional[builtins.str] = None):
73
+ kms_key_name: Optional[builtins.str] = None,
74
+ kms_key_names: Optional[Sequence[builtins.str]] = None):
72
75
  """
73
76
  :param builtins.str encryption_type: The encryption type of backups created by the backup schedule.
74
77
  Possible values are USE_DATABASE_ENCRYPTION, GOOGLE_DEFAULT_ENCRYPTION, or CUSTOMER_MANAGED_ENCRYPTION.
@@ -77,10 +80,14 @@ class BackupScheduleEncryptionConfig(dict):
77
80
  Possible values are: `USE_DATABASE_ENCRYPTION`, `GOOGLE_DEFAULT_ENCRYPTION`, `CUSTOMER_MANAGED_ENCRYPTION`.
78
81
  :param builtins.str kms_key_name: The resource name of the Cloud KMS key to use for encryption.
79
82
  Format: 'projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{cryptoKey}'
83
+ :param Sequence[builtins.str] kms_key_names: Fully qualified name of the KMS keys to use to encrypt this database. The keys must exist
84
+ in the same locations as the Spanner Database.
80
85
  """
81
86
  pulumi.set(__self__, "encryption_type", encryption_type)
82
87
  if kms_key_name is not None:
83
88
  pulumi.set(__self__, "kms_key_name", kms_key_name)
89
+ if kms_key_names is not None:
90
+ pulumi.set(__self__, "kms_key_names", kms_key_names)
84
91
 
85
92
  @property
86
93
  @pulumi.getter(name="encryptionType")
@@ -103,6 +110,15 @@ class BackupScheduleEncryptionConfig(dict):
103
110
  """
104
111
  return pulumi.get(self, "kms_key_name")
105
112
 
113
+ @property
114
+ @pulumi.getter(name="kmsKeyNames")
115
+ def kms_key_names(self) -> Optional[Sequence[builtins.str]]:
116
+ """
117
+ Fully qualified name of the KMS keys to use to encrypt this database. The keys must exist
118
+ in the same locations as the Spanner Database.
119
+ """
120
+ return pulumi.get(self, "kms_key_names")
121
+
106
122
 
107
123
  @pulumi.output_type
108
124
  class BackupScheduleFullBackupSpec(dict):
@@ -1082,7 +1082,15 @@ if not MYPY:
1082
1082
  class BucketIpFilterArgsDict(TypedDict):
1083
1083
  mode: pulumi.Input[builtins.str]
1084
1084
  """
1085
- The state of the IP filter configuration. Valid values are `Enabled` and `Disabled`. When set to `Enabled`, IP filtering rules are applied to a bucket and all incoming requests to the bucket are evaluated against these rules. When set to `Disabled`, IP filtering rules are not applied to a bucket.
1085
+ The state of the IP filter configuration. Valid values are `Enabled` and `Disabled`. When set to `Enabled`, IP filtering rules are applied to a bucket and all incoming requests to the bucket are evaluated against these rules. When set to `Disabled`, IP filtering rules are not applied to a bucket. **Note**: `allow_all_service_agent_access` must be supplied when `mode` is set to `Enabled`, it can be ommited for other values.
1086
+ """
1087
+ allow_all_service_agent_access: NotRequired[pulumi.Input[builtins.bool]]
1088
+ """
1089
+ While set `true`, allows all service agents to access the bucket regardless of the IP filter configuration.
1090
+ """
1091
+ allow_cross_org_vpcs: NotRequired[pulumi.Input[builtins.bool]]
1092
+ """
1093
+ While set `true`, allows cross-org VPCs in the bucket's IP filter configuration.
1086
1094
  """
1087
1095
  public_network_source: NotRequired[pulumi.Input['BucketIpFilterPublicNetworkSourceArgsDict']]
1088
1096
  """
@@ -1099,14 +1107,22 @@ elif False:
1099
1107
  class BucketIpFilterArgs:
1100
1108
  def __init__(__self__, *,
1101
1109
  mode: pulumi.Input[builtins.str],
1110
+ allow_all_service_agent_access: Optional[pulumi.Input[builtins.bool]] = None,
1111
+ allow_cross_org_vpcs: Optional[pulumi.Input[builtins.bool]] = None,
1102
1112
  public_network_source: Optional[pulumi.Input['BucketIpFilterPublicNetworkSourceArgs']] = None,
1103
1113
  vpc_network_sources: Optional[pulumi.Input[Sequence[pulumi.Input['BucketIpFilterVpcNetworkSourceArgs']]]] = None):
1104
1114
  """
1105
- :param pulumi.Input[builtins.str] mode: The state of the IP filter configuration. Valid values are `Enabled` and `Disabled`. When set to `Enabled`, IP filtering rules are applied to a bucket and all incoming requests to the bucket are evaluated against these rules. When set to `Disabled`, IP filtering rules are not applied to a bucket.
1115
+ :param pulumi.Input[builtins.str] mode: The state of the IP filter configuration. Valid values are `Enabled` and `Disabled`. When set to `Enabled`, IP filtering rules are applied to a bucket and all incoming requests to the bucket are evaluated against these rules. When set to `Disabled`, IP filtering rules are not applied to a bucket. **Note**: `allow_all_service_agent_access` must be supplied when `mode` is set to `Enabled`, it can be ommited for other values.
1116
+ :param pulumi.Input[builtins.bool] allow_all_service_agent_access: While set `true`, allows all service agents to access the bucket regardless of the IP filter configuration.
1117
+ :param pulumi.Input[builtins.bool] allow_cross_org_vpcs: While set `true`, allows cross-org VPCs in the bucket's IP filter configuration.
1106
1118
  :param pulumi.Input['BucketIpFilterPublicNetworkSourceArgs'] public_network_source: The public network IP address ranges that can access the bucket and its data. Structure is documented below.
1107
1119
  :param pulumi.Input[Sequence[pulumi.Input['BucketIpFilterVpcNetworkSourceArgs']]] vpc_network_sources: The list of VPC networks that can access the bucket. Structure is documented below.
1108
1120
  """
1109
1121
  pulumi.set(__self__, "mode", mode)
1122
+ if allow_all_service_agent_access is not None:
1123
+ pulumi.set(__self__, "allow_all_service_agent_access", allow_all_service_agent_access)
1124
+ if allow_cross_org_vpcs is not None:
1125
+ pulumi.set(__self__, "allow_cross_org_vpcs", allow_cross_org_vpcs)
1110
1126
  if public_network_source is not None:
1111
1127
  pulumi.set(__self__, "public_network_source", public_network_source)
1112
1128
  if vpc_network_sources is not None:
@@ -1116,7 +1132,7 @@ class BucketIpFilterArgs:
1116
1132
  @pulumi.getter
1117
1133
  def mode(self) -> pulumi.Input[builtins.str]:
1118
1134
  """
1119
- The state of the IP filter configuration. Valid values are `Enabled` and `Disabled`. When set to `Enabled`, IP filtering rules are applied to a bucket and all incoming requests to the bucket are evaluated against these rules. When set to `Disabled`, IP filtering rules are not applied to a bucket.
1135
+ The state of the IP filter configuration. Valid values are `Enabled` and `Disabled`. When set to `Enabled`, IP filtering rules are applied to a bucket and all incoming requests to the bucket are evaluated against these rules. When set to `Disabled`, IP filtering rules are not applied to a bucket. **Note**: `allow_all_service_agent_access` must be supplied when `mode` is set to `Enabled`, it can be ommited for other values.
1120
1136
  """
1121
1137
  return pulumi.get(self, "mode")
1122
1138
 
@@ -1124,6 +1140,30 @@ class BucketIpFilterArgs:
1124
1140
  def mode(self, value: pulumi.Input[builtins.str]):
1125
1141
  pulumi.set(self, "mode", value)
1126
1142
 
1143
+ @property
1144
+ @pulumi.getter(name="allowAllServiceAgentAccess")
1145
+ def allow_all_service_agent_access(self) -> Optional[pulumi.Input[builtins.bool]]:
1146
+ """
1147
+ While set `true`, allows all service agents to access the bucket regardless of the IP filter configuration.
1148
+ """
1149
+ return pulumi.get(self, "allow_all_service_agent_access")
1150
+
1151
+ @allow_all_service_agent_access.setter
1152
+ def allow_all_service_agent_access(self, value: Optional[pulumi.Input[builtins.bool]]):
1153
+ pulumi.set(self, "allow_all_service_agent_access", value)
1154
+
1155
+ @property
1156
+ @pulumi.getter(name="allowCrossOrgVpcs")
1157
+ def allow_cross_org_vpcs(self) -> Optional[pulumi.Input[builtins.bool]]:
1158
+ """
1159
+ While set `true`, allows cross-org VPCs in the bucket's IP filter configuration.
1160
+ """
1161
+ return pulumi.get(self, "allow_cross_org_vpcs")
1162
+
1163
+ @allow_cross_org_vpcs.setter
1164
+ def allow_cross_org_vpcs(self, value: Optional[pulumi.Input[builtins.bool]]):
1165
+ pulumi.set(self, "allow_cross_org_vpcs", value)
1166
+
1127
1167
  @property
1128
1168
  @pulumi.getter(name="publicNetworkSource")
1129
1169
  def public_network_source(self) -> Optional[pulumi.Input['BucketIpFilterPublicNetworkSourceArgs']]:
@@ -884,7 +884,11 @@ class BucketIpFilter(dict):
884
884
  @staticmethod
885
885
  def __key_warning(key: str):
886
886
  suggest = None
887
- if key == "publicNetworkSource":
887
+ if key == "allowAllServiceAgentAccess":
888
+ suggest = "allow_all_service_agent_access"
889
+ elif key == "allowCrossOrgVpcs":
890
+ suggest = "allow_cross_org_vpcs"
891
+ elif key == "publicNetworkSource":
888
892
  suggest = "public_network_source"
889
893
  elif key == "vpcNetworkSources":
890
894
  suggest = "vpc_network_sources"
@@ -902,14 +906,22 @@ class BucketIpFilter(dict):
902
906
 
903
907
  def __init__(__self__, *,
904
908
  mode: builtins.str,
909
+ allow_all_service_agent_access: Optional[builtins.bool] = None,
910
+ allow_cross_org_vpcs: Optional[builtins.bool] = None,
905
911
  public_network_source: Optional['outputs.BucketIpFilterPublicNetworkSource'] = None,
906
912
  vpc_network_sources: Optional[Sequence['outputs.BucketIpFilterVpcNetworkSource']] = None):
907
913
  """
908
- :param builtins.str mode: The state of the IP filter configuration. Valid values are `Enabled` and `Disabled`. When set to `Enabled`, IP filtering rules are applied to a bucket and all incoming requests to the bucket are evaluated against these rules. When set to `Disabled`, IP filtering rules are not applied to a bucket.
914
+ :param builtins.str mode: The state of the IP filter configuration. Valid values are `Enabled` and `Disabled`. When set to `Enabled`, IP filtering rules are applied to a bucket and all incoming requests to the bucket are evaluated against these rules. When set to `Disabled`, IP filtering rules are not applied to a bucket. **Note**: `allow_all_service_agent_access` must be supplied when `mode` is set to `Enabled`, it can be ommited for other values.
915
+ :param builtins.bool allow_all_service_agent_access: While set `true`, allows all service agents to access the bucket regardless of the IP filter configuration.
916
+ :param builtins.bool allow_cross_org_vpcs: While set `true`, allows cross-org VPCs in the bucket's IP filter configuration.
909
917
  :param 'BucketIpFilterPublicNetworkSourceArgs' public_network_source: The public network IP address ranges that can access the bucket and its data. Structure is documented below.
910
918
  :param Sequence['BucketIpFilterVpcNetworkSourceArgs'] vpc_network_sources: The list of VPC networks that can access the bucket. Structure is documented below.
911
919
  """
912
920
  pulumi.set(__self__, "mode", mode)
921
+ if allow_all_service_agent_access is not None:
922
+ pulumi.set(__self__, "allow_all_service_agent_access", allow_all_service_agent_access)
923
+ if allow_cross_org_vpcs is not None:
924
+ pulumi.set(__self__, "allow_cross_org_vpcs", allow_cross_org_vpcs)
913
925
  if public_network_source is not None:
914
926
  pulumi.set(__self__, "public_network_source", public_network_source)
915
927
  if vpc_network_sources is not None:
@@ -919,10 +931,26 @@ class BucketIpFilter(dict):
919
931
  @pulumi.getter
920
932
  def mode(self) -> builtins.str:
921
933
  """
922
- The state of the IP filter configuration. Valid values are `Enabled` and `Disabled`. When set to `Enabled`, IP filtering rules are applied to a bucket and all incoming requests to the bucket are evaluated against these rules. When set to `Disabled`, IP filtering rules are not applied to a bucket.
934
+ The state of the IP filter configuration. Valid values are `Enabled` and `Disabled`. When set to `Enabled`, IP filtering rules are applied to a bucket and all incoming requests to the bucket are evaluated against these rules. When set to `Disabled`, IP filtering rules are not applied to a bucket. **Note**: `allow_all_service_agent_access` must be supplied when `mode` is set to `Enabled`, it can be ommited for other values.
923
935
  """
924
936
  return pulumi.get(self, "mode")
925
937
 
938
+ @property
939
+ @pulumi.getter(name="allowAllServiceAgentAccess")
940
+ def allow_all_service_agent_access(self) -> Optional[builtins.bool]:
941
+ """
942
+ While set `true`, allows all service agents to access the bucket regardless of the IP filter configuration.
943
+ """
944
+ return pulumi.get(self, "allow_all_service_agent_access")
945
+
946
+ @property
947
+ @pulumi.getter(name="allowCrossOrgVpcs")
948
+ def allow_cross_org_vpcs(self) -> Optional[builtins.bool]:
949
+ """
950
+ While set `true`, allows cross-org VPCs in the bucket's IP filter configuration.
951
+ """
952
+ return pulumi.get(self, "allow_cross_org_vpcs")
953
+
926
954
  @property
927
955
  @pulumi.getter(name="publicNetworkSource")
928
956
  def public_network_source(self) -> Optional['outputs.BucketIpFilterPublicNetworkSource']:
@@ -5105,18 +5133,40 @@ class GetBucketHierarchicalNamespaceResult(dict):
5105
5133
  @pulumi.output_type
5106
5134
  class GetBucketIpFilterResult(dict):
5107
5135
  def __init__(__self__, *,
5136
+ allow_all_service_agent_access: builtins.bool,
5137
+ allow_cross_org_vpcs: builtins.bool,
5108
5138
  mode: builtins.str,
5109
5139
  public_network_sources: Sequence['outputs.GetBucketIpFilterPublicNetworkSourceResult'],
5110
5140
  vpc_network_sources: Sequence['outputs.GetBucketIpFilterVpcNetworkSourceResult']):
5111
5141
  """
5142
+ :param builtins.bool allow_all_service_agent_access: Whether to allow all service agents to access the bucket regardless of the IP filter configuration.
5143
+ :param builtins.bool allow_cross_org_vpcs: Whether to allow cross-org VPCs in the bucket's IP filter configuration.
5112
5144
  :param builtins.str mode: The mode of the IP filter. Valid values are 'Enabled' and 'Disabled'.
5113
5145
  :param Sequence['GetBucketIpFilterPublicNetworkSourceArgs'] public_network_sources: The public network IP address ranges that can access the bucket and its data.
5114
5146
  :param Sequence['GetBucketIpFilterVpcNetworkSourceArgs'] vpc_network_sources: The list of VPC networks that can access the bucket.
5115
5147
  """
5148
+ pulumi.set(__self__, "allow_all_service_agent_access", allow_all_service_agent_access)
5149
+ pulumi.set(__self__, "allow_cross_org_vpcs", allow_cross_org_vpcs)
5116
5150
  pulumi.set(__self__, "mode", mode)
5117
5151
  pulumi.set(__self__, "public_network_sources", public_network_sources)
5118
5152
  pulumi.set(__self__, "vpc_network_sources", vpc_network_sources)
5119
5153
 
5154
+ @property
5155
+ @pulumi.getter(name="allowAllServiceAgentAccess")
5156
+ def allow_all_service_agent_access(self) -> builtins.bool:
5157
+ """
5158
+ Whether to allow all service agents to access the bucket regardless of the IP filter configuration.
5159
+ """
5160
+ return pulumi.get(self, "allow_all_service_agent_access")
5161
+
5162
+ @property
5163
+ @pulumi.getter(name="allowCrossOrgVpcs")
5164
+ def allow_cross_org_vpcs(self) -> builtins.bool:
5165
+ """
5166
+ Whether to allow cross-org VPCs in the bucket's IP filter configuration.
5167
+ """
5168
+ return pulumi.get(self, "allow_cross_org_vpcs")
5169
+
5120
5170
  @property
5121
5171
  @pulumi.getter
5122
5172
  def mode(self) -> builtins.str:
@@ -746,6 +746,7 @@ class Instance(pulumi.CustomResource):
746
746
  }],
747
747
  "metadata": {
748
748
  "terraform": "true",
749
+ "serial-port-logging-enable": "false",
749
750
  },
750
751
  "enable_ip_forwarding": True,
751
752
  "tags": [
@@ -994,6 +995,7 @@ class Instance(pulumi.CustomResource):
994
995
  }],
995
996
  "metadata": {
996
997
  "terraform": "true",
998
+ "serial-port-logging-enable": "false",
997
999
  },
998
1000
  "enable_ip_forwarding": True,
999
1001
  "tags": [
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pulumi_gcp
3
- Version: 8.36.0a1751060819
3
+ Version: 8.37.0
4
4
  Summary: A Pulumi package for creating and managing Google Cloud Platform resources.
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://pulumi.io