pulumi-gcp 8.13.0a1736231082__py3-none-any.whl → 8.13.1__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 (90) hide show
  1. pulumi_gcp/__init__.py +43 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +3 -3
  3. pulumi_gcp/accesscontextmanager/outputs.py +2 -2
  4. pulumi_gcp/artifactregistry/_inputs.py +83 -0
  5. pulumi_gcp/artifactregistry/get_repository.py +15 -4
  6. pulumi_gcp/artifactregistry/outputs.py +112 -0
  7. pulumi_gcp/artifactregistry/repository.py +93 -7
  8. pulumi_gcp/backupdisasterrecovery/get_backup.py +38 -2
  9. pulumi_gcp/backupdisasterrecovery/get_data_source.py +38 -2
  10. pulumi_gcp/backupdisasterrecovery/outputs.py +8 -8
  11. pulumi_gcp/bigquery/_inputs.py +369 -0
  12. pulumi_gcp/bigquery/dataset_access.py +61 -0
  13. pulumi_gcp/bigquery/job.py +6 -18
  14. pulumi_gcp/bigquery/outputs.py +350 -0
  15. pulumi_gcp/bigquery/table.py +47 -0
  16. pulumi_gcp/chronicle/__init__.py +10 -0
  17. pulumi_gcp/chronicle/_inputs.py +169 -0
  18. pulumi_gcp/chronicle/outputs.py +107 -0
  19. pulumi_gcp/chronicle/watchlist.py +776 -0
  20. pulumi_gcp/cloudrunv2/_inputs.py +6 -3
  21. pulumi_gcp/cloudrunv2/outputs.py +10 -6
  22. pulumi_gcp/composer/_inputs.py +80 -5
  23. pulumi_gcp/composer/outputs.py +111 -4
  24. pulumi_gcp/compute/_inputs.py +181 -87
  25. pulumi_gcp/compute/firewall_policy_association.py +50 -39
  26. pulumi_gcp/compute/get_network.py +17 -2
  27. pulumi_gcp/compute/get_subnetwork.py +18 -4
  28. pulumi_gcp/compute/network.py +39 -2
  29. pulumi_gcp/compute/outputs.py +157 -58
  30. pulumi_gcp/compute/region_network_endpoint_group.py +1 -1
  31. pulumi_gcp/compute/resize_request.py +26 -40
  32. pulumi_gcp/config/__init__.pyi +2 -0
  33. pulumi_gcp/config/vars.py +4 -0
  34. pulumi_gcp/dataproc/batch.py +4 -18
  35. pulumi_gcp/datastream/_inputs.py +68 -0
  36. pulumi_gcp/datastream/outputs.py +41 -1
  37. pulumi_gcp/developerconnect/connection.py +58 -12
  38. pulumi_gcp/diagflow/_inputs.py +3 -3
  39. pulumi_gcp/diagflow/outputs.py +2 -2
  40. pulumi_gcp/filestore/backup.py +71 -3
  41. pulumi_gcp/firebase/hosting_custom_domain.py +4 -4
  42. pulumi_gcp/firestore/_inputs.py +3 -3
  43. pulumi_gcp/firestore/outputs.py +2 -2
  44. pulumi_gcp/gkehub/__init__.py +1 -0
  45. pulumi_gcp/gkehub/get_feature.py +226 -0
  46. pulumi_gcp/gkehub/outputs.py +1153 -0
  47. pulumi_gcp/gkeonprem/__init__.py +1 -0
  48. pulumi_gcp/gkeonprem/_inputs.py +2364 -0
  49. pulumi_gcp/gkeonprem/outputs.py +1780 -0
  50. pulumi_gcp/gkeonprem/vmware_admin_cluster.py +1715 -0
  51. pulumi_gcp/integrationconnectors/_inputs.py +6 -6
  52. pulumi_gcp/integrationconnectors/connection.py +7 -7
  53. pulumi_gcp/integrationconnectors/outputs.py +4 -4
  54. pulumi_gcp/kms/__init__.py +2 -0
  55. pulumi_gcp/kms/get_autokey_config.py +121 -0
  56. pulumi_gcp/kms/get_key_handle.py +185 -0
  57. pulumi_gcp/netapp/kmsconfig.py +2 -14
  58. pulumi_gcp/networkconnectivity/hub.py +108 -0
  59. pulumi_gcp/networkconnectivity/spoke.py +195 -0
  60. pulumi_gcp/networkmanagement/vpc_flow_logs_config.py +4 -0
  61. pulumi_gcp/networksecurity/__init__.py +2 -0
  62. pulumi_gcp/networksecurity/_inputs.py +78 -0
  63. pulumi_gcp/networksecurity/intercept_endpoint_group.py +723 -0
  64. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +815 -0
  65. pulumi_gcp/networksecurity/outputs.py +48 -0
  66. pulumi_gcp/oracledatabase/autonomous_database.py +2 -2
  67. pulumi_gcp/orgpolicy/policy.py +2 -2
  68. pulumi_gcp/parallelstore/instance.py +149 -0
  69. pulumi_gcp/projects/usage_export_bucket.py +42 -110
  70. pulumi_gcp/provider.py +20 -0
  71. pulumi_gcp/pubsub/subscription.py +6 -6
  72. pulumi_gcp/pulumi-plugin.json +1 -1
  73. pulumi_gcp/securesourcemanager/instance.py +4 -16
  74. pulumi_gcp/spanner/instance_iam_binding.py +14 -0
  75. pulumi_gcp/spanner/instance_iam_member.py +14 -0
  76. pulumi_gcp/sql/database_instance.py +7 -7
  77. pulumi_gcp/storage/__init__.py +1 -0
  78. pulumi_gcp/storage/_inputs.py +431 -0
  79. pulumi_gcp/storage/folder.py +483 -0
  80. pulumi_gcp/storage/outputs.py +363 -0
  81. pulumi_gcp/storage/transfer_job.py +84 -38
  82. pulumi_gcp/vertex/_inputs.py +26 -25
  83. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  84. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  85. pulumi_gcp/vertex/outputs.py +15 -14
  86. pulumi_gcp/workstations/workstation.py +55 -1
  87. {pulumi_gcp-8.13.0a1736231082.dist-info → pulumi_gcp-8.13.1.dist-info}/METADATA +2 -2
  88. {pulumi_gcp-8.13.0a1736231082.dist-info → pulumi_gcp-8.13.1.dist-info}/RECORD +90 -79
  89. {pulumi_gcp-8.13.0a1736231082.dist-info → pulumi_gcp-8.13.1.dist-info}/WHEEL +1 -1
  90. {pulumi_gcp-8.13.0a1736231082.dist-info → pulumi_gcp-8.13.1.dist-info}/top_level.txt +0 -0
@@ -23,6 +23,7 @@ class DatasetAccessInitArgs:
23
23
  def __init__(__self__, *,
24
24
  dataset_id: pulumi.Input[str],
25
25
  authorized_dataset: Optional[pulumi.Input['DatasetAccessAuthorizedDatasetArgs']] = None,
26
+ condition: Optional[pulumi.Input['DatasetAccessConditionArgs']] = None,
26
27
  domain: Optional[pulumi.Input[str]] = None,
27
28
  group_by_email: Optional[pulumi.Input[str]] = None,
28
29
  iam_member: Optional[pulumi.Input[str]] = None,
@@ -42,6 +43,9 @@ class DatasetAccessInitArgs:
42
43
  - - -
43
44
  :param pulumi.Input['DatasetAccessAuthorizedDatasetArgs'] authorized_dataset: Grants all resources of particular types in a particular dataset read access to the current dataset.
44
45
  Structure is documented below.
46
+ :param pulumi.Input['DatasetAccessConditionArgs'] condition: Condition for the binding. If CEL expression in this field is true, this
47
+ access binding will be considered.
48
+ Structure is documented below.
45
49
  :param pulumi.Input[str] domain: A domain to grant access to. Any users signed in with the
46
50
  domain specified will be granted the specified access
47
51
  :param pulumi.Input[str] group_by_email: An email address of a Google Group to grant access to.
@@ -78,6 +82,8 @@ class DatasetAccessInitArgs:
78
82
  pulumi.set(__self__, "dataset_id", dataset_id)
79
83
  if authorized_dataset is not None:
80
84
  pulumi.set(__self__, "authorized_dataset", authorized_dataset)
85
+ if condition is not None:
86
+ pulumi.set(__self__, "condition", condition)
81
87
  if domain is not None:
82
88
  pulumi.set(__self__, "domain", domain)
83
89
  if group_by_email is not None:
@@ -127,6 +133,20 @@ class DatasetAccessInitArgs:
127
133
  def authorized_dataset(self, value: Optional[pulumi.Input['DatasetAccessAuthorizedDatasetArgs']]):
128
134
  pulumi.set(self, "authorized_dataset", value)
129
135
 
136
+ @property
137
+ @pulumi.getter
138
+ def condition(self) -> Optional[pulumi.Input['DatasetAccessConditionArgs']]:
139
+ """
140
+ Condition for the binding. If CEL expression in this field is true, this
141
+ access binding will be considered.
142
+ Structure is documented below.
143
+ """
144
+ return pulumi.get(self, "condition")
145
+
146
+ @condition.setter
147
+ def condition(self, value: Optional[pulumi.Input['DatasetAccessConditionArgs']]):
148
+ pulumi.set(self, "condition", value)
149
+
130
150
  @property
131
151
  @pulumi.getter
132
152
  def domain(self) -> Optional[pulumi.Input[str]]:
@@ -264,6 +284,7 @@ class _DatasetAccessState:
264
284
  def __init__(__self__, *,
265
285
  api_updated_member: Optional[pulumi.Input[bool]] = None,
266
286
  authorized_dataset: Optional[pulumi.Input['DatasetAccessAuthorizedDatasetArgs']] = None,
287
+ condition: Optional[pulumi.Input['DatasetAccessConditionArgs']] = None,
267
288
  dataset_id: Optional[pulumi.Input[str]] = None,
268
289
  domain: Optional[pulumi.Input[str]] = None,
269
290
  group_by_email: Optional[pulumi.Input[str]] = None,
@@ -280,6 +301,9 @@ class _DatasetAccessState:
280
301
  stored in state as a different member type
281
302
  :param pulumi.Input['DatasetAccessAuthorizedDatasetArgs'] authorized_dataset: Grants all resources of particular types in a particular dataset read access to the current dataset.
282
303
  Structure is documented below.
304
+ :param pulumi.Input['DatasetAccessConditionArgs'] condition: Condition for the binding. If CEL expression in this field is true, this
305
+ access binding will be considered.
306
+ Structure is documented below.
283
307
  :param pulumi.Input[str] dataset_id: A unique ID for this dataset, without the project name. The ID
284
308
  must contain only letters (a-z, A-Z), numbers (0-9), or
285
309
  underscores (_). The maximum length is 1,024 characters.
@@ -323,6 +347,8 @@ class _DatasetAccessState:
323
347
  pulumi.set(__self__, "api_updated_member", api_updated_member)
324
348
  if authorized_dataset is not None:
325
349
  pulumi.set(__self__, "authorized_dataset", authorized_dataset)
350
+ if condition is not None:
351
+ pulumi.set(__self__, "condition", condition)
326
352
  if dataset_id is not None:
327
353
  pulumi.set(__self__, "dataset_id", dataset_id)
328
354
  if domain is not None:
@@ -370,6 +396,20 @@ class _DatasetAccessState:
370
396
  def authorized_dataset(self, value: Optional[pulumi.Input['DatasetAccessAuthorizedDatasetArgs']]):
371
397
  pulumi.set(self, "authorized_dataset", value)
372
398
 
399
+ @property
400
+ @pulumi.getter
401
+ def condition(self) -> Optional[pulumi.Input['DatasetAccessConditionArgs']]:
402
+ """
403
+ Condition for the binding. If CEL expression in this field is true, this
404
+ access binding will be considered.
405
+ Structure is documented below.
406
+ """
407
+ return pulumi.get(self, "condition")
408
+
409
+ @condition.setter
410
+ def condition(self, value: Optional[pulumi.Input['DatasetAccessConditionArgs']]):
411
+ pulumi.set(self, "condition", value)
412
+
373
413
  @property
374
414
  @pulumi.getter(name="datasetId")
375
415
  def dataset_id(self) -> Optional[pulumi.Input[str]]:
@@ -525,6 +565,7 @@ class DatasetAccess(pulumi.CustomResource):
525
565
  resource_name: str,
526
566
  opts: Optional[pulumi.ResourceOptions] = None,
527
567
  authorized_dataset: Optional[pulumi.Input[Union['DatasetAccessAuthorizedDatasetArgs', 'DatasetAccessAuthorizedDatasetArgsDict']]] = None,
568
+ condition: Optional[pulumi.Input[Union['DatasetAccessConditionArgs', 'DatasetAccessConditionArgsDict']]] = None,
528
569
  dataset_id: Optional[pulumi.Input[str]] = None,
529
570
  domain: Optional[pulumi.Input[str]] = None,
530
571
  group_by_email: Optional[pulumi.Input[str]] = None,
@@ -645,6 +686,9 @@ class DatasetAccess(pulumi.CustomResource):
645
686
  :param pulumi.ResourceOptions opts: Options for the resource.
646
687
  :param pulumi.Input[Union['DatasetAccessAuthorizedDatasetArgs', 'DatasetAccessAuthorizedDatasetArgsDict']] authorized_dataset: Grants all resources of particular types in a particular dataset read access to the current dataset.
647
688
  Structure is documented below.
689
+ :param pulumi.Input[Union['DatasetAccessConditionArgs', 'DatasetAccessConditionArgsDict']] condition: Condition for the binding. If CEL expression in this field is true, this
690
+ access binding will be considered.
691
+ Structure is documented below.
648
692
  :param pulumi.Input[str] dataset_id: A unique ID for this dataset, without the project name. The ID
649
693
  must contain only letters (a-z, A-Z), numbers (0-9), or
650
694
  underscores (_). The maximum length is 1,024 characters.
@@ -811,6 +855,7 @@ class DatasetAccess(pulumi.CustomResource):
811
855
  resource_name: str,
812
856
  opts: Optional[pulumi.ResourceOptions] = None,
813
857
  authorized_dataset: Optional[pulumi.Input[Union['DatasetAccessAuthorizedDatasetArgs', 'DatasetAccessAuthorizedDatasetArgsDict']]] = None,
858
+ condition: Optional[pulumi.Input[Union['DatasetAccessConditionArgs', 'DatasetAccessConditionArgsDict']]] = None,
814
859
  dataset_id: Optional[pulumi.Input[str]] = None,
815
860
  domain: Optional[pulumi.Input[str]] = None,
816
861
  group_by_email: Optional[pulumi.Input[str]] = None,
@@ -831,6 +876,7 @@ class DatasetAccess(pulumi.CustomResource):
831
876
  __props__ = DatasetAccessInitArgs.__new__(DatasetAccessInitArgs)
832
877
 
833
878
  __props__.__dict__["authorized_dataset"] = authorized_dataset
879
+ __props__.__dict__["condition"] = condition
834
880
  if dataset_id is None and not opts.urn:
835
881
  raise TypeError("Missing required property 'dataset_id'")
836
882
  __props__.__dict__["dataset_id"] = dataset_id
@@ -856,6 +902,7 @@ class DatasetAccess(pulumi.CustomResource):
856
902
  opts: Optional[pulumi.ResourceOptions] = None,
857
903
  api_updated_member: Optional[pulumi.Input[bool]] = None,
858
904
  authorized_dataset: Optional[pulumi.Input[Union['DatasetAccessAuthorizedDatasetArgs', 'DatasetAccessAuthorizedDatasetArgsDict']]] = None,
905
+ condition: Optional[pulumi.Input[Union['DatasetAccessConditionArgs', 'DatasetAccessConditionArgsDict']]] = None,
859
906
  dataset_id: Optional[pulumi.Input[str]] = None,
860
907
  domain: Optional[pulumi.Input[str]] = None,
861
908
  group_by_email: Optional[pulumi.Input[str]] = None,
@@ -877,6 +924,9 @@ class DatasetAccess(pulumi.CustomResource):
877
924
  stored in state as a different member type
878
925
  :param pulumi.Input[Union['DatasetAccessAuthorizedDatasetArgs', 'DatasetAccessAuthorizedDatasetArgsDict']] authorized_dataset: Grants all resources of particular types in a particular dataset read access to the current dataset.
879
926
  Structure is documented below.
927
+ :param pulumi.Input[Union['DatasetAccessConditionArgs', 'DatasetAccessConditionArgsDict']] condition: Condition for the binding. If CEL expression in this field is true, this
928
+ access binding will be considered.
929
+ Structure is documented below.
880
930
  :param pulumi.Input[str] dataset_id: A unique ID for this dataset, without the project name. The ID
881
931
  must contain only letters (a-z, A-Z), numbers (0-9), or
882
932
  underscores (_). The maximum length is 1,024 characters.
@@ -922,6 +972,7 @@ class DatasetAccess(pulumi.CustomResource):
922
972
 
923
973
  __props__.__dict__["api_updated_member"] = api_updated_member
924
974
  __props__.__dict__["authorized_dataset"] = authorized_dataset
975
+ __props__.__dict__["condition"] = condition
925
976
  __props__.__dict__["dataset_id"] = dataset_id
926
977
  __props__.__dict__["domain"] = domain
927
978
  __props__.__dict__["group_by_email"] = group_by_email
@@ -952,6 +1003,16 @@ class DatasetAccess(pulumi.CustomResource):
952
1003
  """
953
1004
  return pulumi.get(self, "authorized_dataset")
954
1005
 
1006
+ @property
1007
+ @pulumi.getter
1008
+ def condition(self) -> pulumi.Output[Optional['outputs.DatasetAccessCondition']]:
1009
+ """
1010
+ Condition for the binding. If CEL expression in this field is true, this
1011
+ access binding will be considered.
1012
+ Structure is documented below.
1013
+ """
1014
+ return pulumi.get(self, "condition")
1015
+
955
1016
  @property
956
1017
  @pulumi.getter(name="datasetId")
957
1018
  def dataset_id(self) -> pulumi.Output[str]:
@@ -687,15 +687,9 @@ class Job(pulumi.CustomResource):
687
687
  friendly_name="test",
688
688
  description="This is a test description",
689
689
  location="US")
690
- key_ring = gcp.kms.KeyRing("key_ring",
691
- name="example-keyring",
692
- location="global")
693
- crypto_key = gcp.kms.CryptoKey("crypto_key",
694
- name="example-key",
695
- key_ring=key_ring.id)
696
690
  project = gcp.organizations.get_project(project_id="my-project-name")
697
691
  encrypt_role = gcp.kms.CryptoKeyIAMMember("encrypt_role",
698
- crypto_key_id=crypto_key.id,
692
+ crypto_key_id="example-key",
699
693
  role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
700
694
  member=f"serviceAccount:bq-{project.number}@bigquery-encryption.iam.gserviceaccount.com")
701
695
  dest = gcp.bigquery.Table("dest",
@@ -721,7 +715,7 @@ class Job(pulumi.CustomResource):
721
715
  ]
722
716
  \"\"\",
723
717
  encryption_configuration={
724
- "kms_key_name": crypto_key.id,
718
+ "kms_key_name": "example-key",
725
719
  },
726
720
  opts = pulumi.ResourceOptions(depends_on=[encrypt_role]))
727
721
  job = gcp.bigquery.Job("job",
@@ -745,7 +739,7 @@ class Job(pulumi.CustomResource):
745
739
  "table_id": dest.table_id,
746
740
  },
747
741
  "destination_encryption_configuration": {
748
- "kms_key_name": crypto_key.id,
742
+ "kms_key_name": "example-key",
749
743
  },
750
744
  },
751
745
  opts = pulumi.ResourceOptions(depends_on=[encrypt_role]))
@@ -1123,15 +1117,9 @@ class Job(pulumi.CustomResource):
1123
1117
  friendly_name="test",
1124
1118
  description="This is a test description",
1125
1119
  location="US")
1126
- key_ring = gcp.kms.KeyRing("key_ring",
1127
- name="example-keyring",
1128
- location="global")
1129
- crypto_key = gcp.kms.CryptoKey("crypto_key",
1130
- name="example-key",
1131
- key_ring=key_ring.id)
1132
1120
  project = gcp.organizations.get_project(project_id="my-project-name")
1133
1121
  encrypt_role = gcp.kms.CryptoKeyIAMMember("encrypt_role",
1134
- crypto_key_id=crypto_key.id,
1122
+ crypto_key_id="example-key",
1135
1123
  role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
1136
1124
  member=f"serviceAccount:bq-{project.number}@bigquery-encryption.iam.gserviceaccount.com")
1137
1125
  dest = gcp.bigquery.Table("dest",
@@ -1157,7 +1145,7 @@ class Job(pulumi.CustomResource):
1157
1145
  ]
1158
1146
  \"\"\",
1159
1147
  encryption_configuration={
1160
- "kms_key_name": crypto_key.id,
1148
+ "kms_key_name": "example-key",
1161
1149
  },
1162
1150
  opts = pulumi.ResourceOptions(depends_on=[encrypt_role]))
1163
1151
  job = gcp.bigquery.Job("job",
@@ -1181,7 +1169,7 @@ class Job(pulumi.CustomResource):
1181
1169
  "table_id": dest.table_id,
1182
1170
  },
1183
1171
  "destination_encryption_configuration": {
1184
- "kms_key_name": crypto_key.id,
1172
+ "kms_key_name": "example-key",
1185
1173
  },
1186
1174
  },
1187
1175
  opts = pulumi.ResourceOptions(depends_on=[encrypt_role]))