pulumi-gcp 7.31.0a1720850808__py3-none-any.whl → 7.32.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 (103) hide show
  1. pulumi_gcp/__init__.py +51 -0
  2. pulumi_gcp/alloydb/cluster.py +0 -24
  3. pulumi_gcp/applicationintegration/auth_config.py +2 -2
  4. pulumi_gcp/bigquery/_inputs.py +0 -12
  5. pulumi_gcp/bigquery/dataset.py +0 -28
  6. pulumi_gcp/bigquery/dataset_access.py +0 -28
  7. pulumi_gcp/bigquery/outputs.py +0 -24
  8. pulumi_gcp/bigquery/reservation_assignment.py +48 -30
  9. pulumi_gcp/bigtable/authorized_view.py +104 -0
  10. pulumi_gcp/certificateauthority/certificate_template.py +2 -2
  11. pulumi_gcp/certificatemanager/_inputs.py +33 -0
  12. pulumi_gcp/certificatemanager/outputs.py +36 -0
  13. pulumi_gcp/certificatemanager/trust_config.py +107 -0
  14. pulumi_gcp/compute/_inputs.py +3 -6
  15. pulumi_gcp/compute/ca_external_account_key.py +2 -2
  16. pulumi_gcp/compute/get_health_check.py +11 -1
  17. pulumi_gcp/compute/global_address.py +16 -4
  18. pulumi_gcp/compute/global_forwarding_rule.py +2 -4
  19. pulumi_gcp/compute/health_check.py +124 -0
  20. pulumi_gcp/compute/instance.py +14 -14
  21. pulumi_gcp/compute/instance_group_membership.py +2 -2
  22. pulumi_gcp/compute/outputs.py +4 -8
  23. pulumi_gcp/compute/region_network_endpoint.py +2 -2
  24. pulumi_gcp/compute/region_network_endpoint_group.py +2 -2
  25. pulumi_gcp/compute/subnetwork.py +2 -2
  26. pulumi_gcp/compute/target_instance.py +2 -2
  27. pulumi_gcp/config/__init__.pyi +4 -0
  28. pulumi_gcp/config/vars.py +8 -0
  29. pulumi_gcp/container/_inputs.py +3 -3
  30. pulumi_gcp/container/outputs.py +4 -4
  31. pulumi_gcp/containeranalysis/note.py +2 -2
  32. pulumi_gcp/dataloss/_inputs.py +3 -0
  33. pulumi_gcp/dataloss/outputs.py +2 -0
  34. pulumi_gcp/dataloss/prevention_job_trigger.py +90 -0
  35. pulumi_gcp/dataplex/_inputs.py +56 -0
  36. pulumi_gcp/dataplex/datascan.py +12 -0
  37. pulumi_gcp/dataplex/outputs.py +52 -0
  38. pulumi_gcp/filestore/backup.py +2 -2
  39. pulumi_gcp/filestore/instance.py +2 -2
  40. pulumi_gcp/filestore/snapshot.py +2 -2
  41. pulumi_gcp/gkehub/__init__.py +1 -0
  42. pulumi_gcp/gkehub/_inputs.py +20 -0
  43. pulumi_gcp/gkehub/get_membership_binding.py +222 -0
  44. pulumi_gcp/gkehub/outputs.py +31 -0
  45. pulumi_gcp/iap/client.py +7 -7
  46. pulumi_gcp/kms/__init__.py +2 -0
  47. pulumi_gcp/kms/_inputs.py +40 -0
  48. pulumi_gcp/kms/crypto_key.py +110 -7
  49. pulumi_gcp/kms/get_crypto_keys.py +143 -0
  50. pulumi_gcp/kms/get_key_rings.py +119 -0
  51. pulumi_gcp/kms/get_kms_crypto_key.py +11 -1
  52. pulumi_gcp/kms/outputs.py +382 -0
  53. pulumi_gcp/logging/_inputs.py +12 -12
  54. pulumi_gcp/logging/folder_bucket_config.py +6 -6
  55. pulumi_gcp/logging/organization_bucket_config.py +6 -6
  56. pulumi_gcp/logging/outputs.py +8 -8
  57. pulumi_gcp/logging/project_bucket_config.py +6 -6
  58. pulumi_gcp/looker/instance.py +2 -2
  59. pulumi_gcp/monitoring/custom_service.py +2 -2
  60. pulumi_gcp/monitoring/generic_service.py +2 -2
  61. pulumi_gcp/monitoring/notification_channel.py +2 -2
  62. pulumi_gcp/monitoring/slo.py +2 -2
  63. pulumi_gcp/netapp/storage_pool.py +132 -53
  64. pulumi_gcp/netapp/volume.py +60 -4
  65. pulumi_gcp/networksecurity/address_group.py +85 -1
  66. pulumi_gcp/networksecurity/firewall_endpoint.py +2 -2
  67. pulumi_gcp/networksecurity/firewall_endpoint_association.py +2 -2
  68. pulumi_gcp/networksecurity/security_profile_group.py +2 -2
  69. pulumi_gcp/orgpolicy/_inputs.py +40 -10
  70. pulumi_gcp/orgpolicy/outputs.py +28 -8
  71. pulumi_gcp/orgpolicy/policy.py +52 -35
  72. pulumi_gcp/privilegedaccessmanager/entitlement.py +4 -0
  73. pulumi_gcp/provider.py +40 -0
  74. pulumi_gcp/pubsub/_inputs.py +3 -3
  75. pulumi_gcp/pubsub/outputs.py +4 -4
  76. pulumi_gcp/pulumi-plugin.json +1 -1
  77. pulumi_gcp/securesourcemanager/__init__.py +5 -0
  78. pulumi_gcp/securesourcemanager/_inputs.py +284 -0
  79. pulumi_gcp/securesourcemanager/get_repository_iam_policy.py +177 -0
  80. pulumi_gcp/securesourcemanager/outputs.py +202 -0
  81. pulumi_gcp/securesourcemanager/repository.py +715 -0
  82. pulumi_gcp/securesourcemanager/repository_iam_binding.py +804 -0
  83. pulumi_gcp/securesourcemanager/repository_iam_member.py +804 -0
  84. pulumi_gcp/securesourcemanager/repository_iam_policy.py +643 -0
  85. pulumi_gcp/securitycenter/__init__.py +2 -0
  86. pulumi_gcp/securitycenter/_inputs.py +186 -0
  87. pulumi_gcp/securitycenter/outputs.py +118 -0
  88. pulumi_gcp/securitycenter/project_notification_config.py +518 -0
  89. pulumi_gcp/securitycenter/v2_organization_notification_config.py +576 -0
  90. pulumi_gcp/securityposture/posture_deployment.py +0 -78
  91. pulumi_gcp/servicenetworking/vpc_service_controls.py +2 -2
  92. pulumi_gcp/siteverification/__init__.py +8 -0
  93. pulumi_gcp/siteverification/get_token.py +221 -0
  94. pulumi_gcp/vertex/_inputs.py +21 -1
  95. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +222 -0
  96. pulumi_gcp/vertex/outputs.py +15 -1
  97. pulumi_gcp/workstations/_inputs.py +33 -1
  98. pulumi_gcp/workstations/outputs.py +23 -1
  99. pulumi_gcp/workstations/workstation_config.py +18 -0
  100. {pulumi_gcp-7.31.0a1720850808.dist-info → pulumi_gcp-7.32.0.dist-info}/METADATA +1 -1
  101. {pulumi_gcp-7.31.0a1720850808.dist-info → pulumi_gcp-7.32.0.dist-info}/RECORD +103 -91
  102. {pulumi_gcp-7.31.0a1720850808.dist-info → pulumi_gcp-7.32.0.dist-info}/WHEEL +0 -0
  103. {pulumi_gcp-7.31.0a1720850808.dist-info → pulumi_gcp-7.32.0.dist-info}/top_level.txt +0 -0
@@ -31,10 +31,10 @@ class ReservationAssignmentArgs:
31
31
  :param pulumi.Input[str] reservation: The reservation for the resource
32
32
 
33
33
 
34
-
35
34
  - - -
36
35
  :param pulumi.Input[str] location: The location for the resource
37
- :param pulumi.Input[str] project: The project for the resource
36
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
37
+ If it is not provided, the provider project is used.
38
38
  """
39
39
  pulumi.set(__self__, "assignee", assignee)
40
40
  pulumi.set(__self__, "job_type", job_type)
@@ -75,7 +75,6 @@ class ReservationAssignmentArgs:
75
75
  The reservation for the resource
76
76
 
77
77
 
78
-
79
78
  - - -
80
79
  """
81
80
  return pulumi.get(self, "reservation")
@@ -100,7 +99,8 @@ class ReservationAssignmentArgs:
100
99
  @pulumi.getter
101
100
  def project(self) -> Optional[pulumi.Input[str]]:
102
101
  """
103
- The project for the resource
102
+ The ID of the project in which the resource belongs.
103
+ If it is not provided, the provider project is used.
104
104
  """
105
105
  return pulumi.get(self, "project")
106
106
 
@@ -125,13 +125,14 @@ class _ReservationAssignmentState:
125
125
  :param pulumi.Input[str] job_type: Types of job, which could be specified when using the reservation. Possible values: JOB_TYPE_UNSPECIFIED, PIPELINE, QUERY
126
126
  :param pulumi.Input[str] location: The location for the resource
127
127
  :param pulumi.Input[str] name: Output only. The resource name of the assignment.
128
- :param pulumi.Input[str] project: The project for the resource
128
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
129
+ If it is not provided, the provider project is used.
129
130
  :param pulumi.Input[str] reservation: The reservation for the resource
130
131
 
131
132
 
132
-
133
133
  - - -
134
- :param pulumi.Input[str] state: Assignment will remain in PENDING state if no active capacity commitment is present. It will become ACTIVE when some capacity commitment becomes active. Possible values: STATE_UNSPECIFIED, PENDING, ACTIVE
134
+ :param pulumi.Input[str] state: Assignment will remain in PENDING state if no active capacity commitment is present. It will become ACTIVE when some capacity commitment becomes active.
135
+ Possible values: STATE_UNSPECIFIED, PENDING, ACTIVE
135
136
  """
136
137
  if assignee is not None:
137
138
  pulumi.set(__self__, "assignee", assignee)
@@ -200,7 +201,8 @@ class _ReservationAssignmentState:
200
201
  @pulumi.getter
201
202
  def project(self) -> Optional[pulumi.Input[str]]:
202
203
  """
203
- The project for the resource
204
+ The ID of the project in which the resource belongs.
205
+ If it is not provided, the provider project is used.
204
206
  """
205
207
  return pulumi.get(self, "project")
206
208
 
@@ -215,7 +217,6 @@ class _ReservationAssignmentState:
215
217
  The reservation for the resource
216
218
 
217
219
 
218
-
219
220
  - - -
220
221
  """
221
222
  return pulumi.get(self, "reservation")
@@ -228,7 +229,8 @@ class _ReservationAssignmentState:
228
229
  @pulumi.getter
229
230
  def state(self) -> Optional[pulumi.Input[str]]:
230
231
  """
231
- Assignment will remain in PENDING state if no active capacity commitment is present. It will become ACTIVE when some capacity commitment becomes active. Possible values: STATE_UNSPECIFIED, PENDING, ACTIVE
232
+ Assignment will remain in PENDING state if no active capacity commitment is present. It will become ACTIVE when some capacity commitment becomes active.
233
+ Possible values: STATE_UNSPECIFIED, PENDING, ACTIVE
232
234
  """
233
235
  return pulumi.get(self, "state")
234
236
 
@@ -249,22 +251,29 @@ class ReservationAssignment(pulumi.CustomResource):
249
251
  reservation: Optional[pulumi.Input[str]] = None,
250
252
  __props__=None):
251
253
  """
252
- The BigqueryReservation Assignment resource
254
+ The BigqueryReservation Assignment resource.
255
+
256
+ To get more information about ReservationAssignment, see:
257
+
258
+ * [API documentation](https://cloud.google.com/bigquery/docs/reference/reservations/rest/v1/projects.locations.reservations.assignments)
259
+ * How-to Guides
260
+ * [Work with reservation assignments](https://cloud.google.com/bigquery/docs/reservations-assignments)
253
261
 
254
262
  ## Example Usage
255
263
 
256
- ### Basic
264
+ ### Bigquery Reservation Assignment Basic
265
+
257
266
  ```python
258
267
  import pulumi
259
268
  import pulumi_gcp as gcp
260
269
 
261
270
  basic = gcp.bigquery.Reservation("basic",
262
- name="tf-test-my-reservation",
271
+ name="example-reservation",
263
272
  project="my-project-name",
264
273
  location="us-central1",
265
274
  slot_capacity=0,
266
275
  ignore_idle_slots=False)
267
- primary = gcp.bigquery.ReservationAssignment("primary",
276
+ assignment = gcp.bigquery.ReservationAssignment("assignment",
268
277
  assignee="projects/my-project-name",
269
278
  job_type="PIPELINE",
270
279
  reservation=basic.id)
@@ -272,7 +281,7 @@ class ReservationAssignment(pulumi.CustomResource):
272
281
 
273
282
  ## Import
274
283
 
275
- Assignment can be imported using any of these accepted formats:
284
+ ReservationAssignment can be imported using any of these accepted formats:
276
285
 
277
286
  * `projects/{{project}}/locations/{{location}}/reservations/{{reservation}}/assignments/{{name}}`
278
287
 
@@ -280,7 +289,7 @@ class ReservationAssignment(pulumi.CustomResource):
280
289
 
281
290
  * `{{location}}/{{reservation}}/{{name}}`
282
291
 
283
- When using the `pulumi import` command, Assignment can be imported using one of the formats above. For example:
292
+ When using the `pulumi import` command, ReservationAssignment can be imported using one of the formats above. For example:
284
293
 
285
294
  ```sh
286
295
  $ pulumi import gcp:bigquery/reservationAssignment:ReservationAssignment default projects/{{project}}/locations/{{location}}/reservations/{{reservation}}/assignments/{{name}}
@@ -299,11 +308,11 @@ class ReservationAssignment(pulumi.CustomResource):
299
308
  :param pulumi.Input[str] assignee: The resource which will use the reservation. E.g. projects/myproject, folders/123, organizations/456.
300
309
  :param pulumi.Input[str] job_type: Types of job, which could be specified when using the reservation. Possible values: JOB_TYPE_UNSPECIFIED, PIPELINE, QUERY
301
310
  :param pulumi.Input[str] location: The location for the resource
302
- :param pulumi.Input[str] project: The project for the resource
311
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
312
+ If it is not provided, the provider project is used.
303
313
  :param pulumi.Input[str] reservation: The reservation for the resource
304
314
 
305
315
 
306
-
307
316
  - - -
308
317
  """
309
318
  ...
@@ -313,22 +322,29 @@ class ReservationAssignment(pulumi.CustomResource):
313
322
  args: ReservationAssignmentArgs,
314
323
  opts: Optional[pulumi.ResourceOptions] = None):
315
324
  """
316
- The BigqueryReservation Assignment resource
325
+ The BigqueryReservation Assignment resource.
326
+
327
+ To get more information about ReservationAssignment, see:
328
+
329
+ * [API documentation](https://cloud.google.com/bigquery/docs/reference/reservations/rest/v1/projects.locations.reservations.assignments)
330
+ * How-to Guides
331
+ * [Work with reservation assignments](https://cloud.google.com/bigquery/docs/reservations-assignments)
317
332
 
318
333
  ## Example Usage
319
334
 
320
- ### Basic
335
+ ### Bigquery Reservation Assignment Basic
336
+
321
337
  ```python
322
338
  import pulumi
323
339
  import pulumi_gcp as gcp
324
340
 
325
341
  basic = gcp.bigquery.Reservation("basic",
326
- name="tf-test-my-reservation",
342
+ name="example-reservation",
327
343
  project="my-project-name",
328
344
  location="us-central1",
329
345
  slot_capacity=0,
330
346
  ignore_idle_slots=False)
331
- primary = gcp.bigquery.ReservationAssignment("primary",
347
+ assignment = gcp.bigquery.ReservationAssignment("assignment",
332
348
  assignee="projects/my-project-name",
333
349
  job_type="PIPELINE",
334
350
  reservation=basic.id)
@@ -336,7 +352,7 @@ class ReservationAssignment(pulumi.CustomResource):
336
352
 
337
353
  ## Import
338
354
 
339
- Assignment can be imported using any of these accepted formats:
355
+ ReservationAssignment can be imported using any of these accepted formats:
340
356
 
341
357
  * `projects/{{project}}/locations/{{location}}/reservations/{{reservation}}/assignments/{{name}}`
342
358
 
@@ -344,7 +360,7 @@ class ReservationAssignment(pulumi.CustomResource):
344
360
 
345
361
  * `{{location}}/{{reservation}}/{{name}}`
346
362
 
347
- When using the `pulumi import` command, Assignment can be imported using one of the formats above. For example:
363
+ When using the `pulumi import` command, ReservationAssignment can be imported using one of the formats above. For example:
348
364
 
349
365
  ```sh
350
366
  $ pulumi import gcp:bigquery/reservationAssignment:ReservationAssignment default projects/{{project}}/locations/{{location}}/reservations/{{reservation}}/assignments/{{name}}
@@ -428,13 +444,14 @@ class ReservationAssignment(pulumi.CustomResource):
428
444
  :param pulumi.Input[str] job_type: Types of job, which could be specified when using the reservation. Possible values: JOB_TYPE_UNSPECIFIED, PIPELINE, QUERY
429
445
  :param pulumi.Input[str] location: The location for the resource
430
446
  :param pulumi.Input[str] name: Output only. The resource name of the assignment.
431
- :param pulumi.Input[str] project: The project for the resource
447
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
448
+ If it is not provided, the provider project is used.
432
449
  :param pulumi.Input[str] reservation: The reservation for the resource
433
450
 
434
451
 
435
-
436
452
  - - -
437
- :param pulumi.Input[str] state: Assignment will remain in PENDING state if no active capacity commitment is present. It will become ACTIVE when some capacity commitment becomes active. Possible values: STATE_UNSPECIFIED, PENDING, ACTIVE
453
+ :param pulumi.Input[str] state: Assignment will remain in PENDING state if no active capacity commitment is present. It will become ACTIVE when some capacity commitment becomes active.
454
+ Possible values: STATE_UNSPECIFIED, PENDING, ACTIVE
438
455
  """
439
456
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
440
457
 
@@ -485,7 +502,8 @@ class ReservationAssignment(pulumi.CustomResource):
485
502
  @pulumi.getter
486
503
  def project(self) -> pulumi.Output[str]:
487
504
  """
488
- The project for the resource
505
+ The ID of the project in which the resource belongs.
506
+ If it is not provided, the provider project is used.
489
507
  """
490
508
  return pulumi.get(self, "project")
491
509
 
@@ -496,7 +514,6 @@ class ReservationAssignment(pulumi.CustomResource):
496
514
  The reservation for the resource
497
515
 
498
516
 
499
-
500
517
  - - -
501
518
  """
502
519
  return pulumi.get(self, "reservation")
@@ -505,7 +522,8 @@ class ReservationAssignment(pulumi.CustomResource):
505
522
  @pulumi.getter
506
523
  def state(self) -> pulumi.Output[str]:
507
524
  """
508
- Assignment will remain in PENDING state if no active capacity commitment is present. It will become ACTIVE when some capacity commitment becomes active. Possible values: STATE_UNSPECIFIED, PENDING, ACTIVE
525
+ Assignment will remain in PENDING state if no active capacity commitment is present. It will become ACTIVE when some capacity commitment becomes active.
526
+ Possible values: STATE_UNSPECIFIED, PENDING, ACTIVE
509
527
  """
510
528
  return pulumi.get(self, "state")
511
529
 
@@ -243,6 +243,58 @@ class AuthorizedView(pulumi.CustomResource):
243
243
  """
244
244
  ## Example Usage
245
245
 
246
+ ```python
247
+ import pulumi
248
+ import pulumi_gcp as gcp
249
+ import pulumi_std as std
250
+
251
+ instance = gcp.bigtable.Instance("instance",
252
+ name="tf-instance",
253
+ clusters=[{
254
+ "clusterId": "tf-instance-cluster",
255
+ "zone": "us-central1-b",
256
+ "numNodes": 3,
257
+ "storageType": "HDD",
258
+ }])
259
+ table = gcp.bigtable.Table("table",
260
+ name="tf-table",
261
+ instance_name=instance.name,
262
+ split_keys=[
263
+ "a",
264
+ "b",
265
+ "c",
266
+ ],
267
+ column_families=[
268
+ {
269
+ "family": "family-first",
270
+ },
271
+ {
272
+ "family": "family-second",
273
+ },
274
+ ],
275
+ change_stream_retention="24h0m0s")
276
+ authorized_view = gcp.bigtable.AuthorizedView("authorized_view",
277
+ name="tf-authorized-view",
278
+ instance_name=instance.name,
279
+ table_name=table.name,
280
+ subset_view={
281
+ "rowPrefixes": [std.base64encode(input="prefix#").result],
282
+ "familySubsets": [
283
+ {
284
+ "familyName": "family-first",
285
+ "qualifiers": [
286
+ std.base64encode(input="qualifier").result,
287
+ std.base64encode(input="qualifier-second").result,
288
+ ],
289
+ },
290
+ {
291
+ "familyName": "family-second",
292
+ "qualifierPrefixes": [""],
293
+ },
294
+ ],
295
+ })
296
+ ```
297
+
246
298
  ## Import
247
299
 
248
300
  Bigtable Authorized Views can be imported using any of these accepted formats:
@@ -287,6 +339,58 @@ class AuthorizedView(pulumi.CustomResource):
287
339
  """
288
340
  ## Example Usage
289
341
 
342
+ ```python
343
+ import pulumi
344
+ import pulumi_gcp as gcp
345
+ import pulumi_std as std
346
+
347
+ instance = gcp.bigtable.Instance("instance",
348
+ name="tf-instance",
349
+ clusters=[{
350
+ "clusterId": "tf-instance-cluster",
351
+ "zone": "us-central1-b",
352
+ "numNodes": 3,
353
+ "storageType": "HDD",
354
+ }])
355
+ table = gcp.bigtable.Table("table",
356
+ name="tf-table",
357
+ instance_name=instance.name,
358
+ split_keys=[
359
+ "a",
360
+ "b",
361
+ "c",
362
+ ],
363
+ column_families=[
364
+ {
365
+ "family": "family-first",
366
+ },
367
+ {
368
+ "family": "family-second",
369
+ },
370
+ ],
371
+ change_stream_retention="24h0m0s")
372
+ authorized_view = gcp.bigtable.AuthorizedView("authorized_view",
373
+ name="tf-authorized-view",
374
+ instance_name=instance.name,
375
+ table_name=table.name,
376
+ subset_view={
377
+ "rowPrefixes": [std.base64encode(input="prefix#").result],
378
+ "familySubsets": [
379
+ {
380
+ "familyName": "family-first",
381
+ "qualifiers": [
382
+ std.base64encode(input="qualifier").result,
383
+ std.base64encode(input="qualifier-second").result,
384
+ ],
385
+ },
386
+ {
387
+ "familyName": "family-second",
388
+ "qualifierPrefixes": [""],
389
+ },
390
+ ],
391
+ })
392
+ ```
393
+
290
394
  ## Import
291
395
 
292
396
  Bigtable Authorized Views can be imported using any of these accepted formats:
@@ -445,9 +445,9 @@ class CertificateTemplate(pulumi.CustomResource):
445
445
 
446
446
  * [API documentation](https://cloud.google.com/certificate-authority-service/docs/reference/rest)
447
447
  * How-to Guides
448
+ * [Common configurations and Certificate Profiles](https://cloud.google.com/certificate-authority-service/docs/certificate-profile)
448
449
  * [Official Documentation](https://cloud.google.com/certificate-authority-service)
449
450
  * [Understanding Certificate Templates](https://cloud.google.com/certificate-authority-service/docs/certificate-template)
450
- * [Common configurations and Certificate Profiles](https://cloud.google.com/certificate-authority-service/docs/certificate-profile)
451
451
 
452
452
  ## Example Usage
453
453
 
@@ -594,9 +594,9 @@ class CertificateTemplate(pulumi.CustomResource):
594
594
 
595
595
  * [API documentation](https://cloud.google.com/certificate-authority-service/docs/reference/rest)
596
596
  * How-to Guides
597
+ * [Common configurations and Certificate Profiles](https://cloud.google.com/certificate-authority-service/docs/certificate-profile)
597
598
  * [Official Documentation](https://cloud.google.com/certificate-authority-service)
598
599
  * [Understanding Certificate Templates](https://cloud.google.com/certificate-authority-service/docs/certificate-template)
599
- * [Common configurations and Certificate Profiles](https://cloud.google.com/certificate-authority-service/docs/certificate-profile)
600
600
 
601
601
  ## Example Usage
602
602
 
@@ -33,6 +33,8 @@ __all__ = [
33
33
  'CertificateSelfManagedArgsDict',
34
34
  'DnsAuthorizationDnsResourceRecordArgs',
35
35
  'DnsAuthorizationDnsResourceRecordArgsDict',
36
+ 'TrustConfigAllowlistedCertificateArgs',
37
+ 'TrustConfigAllowlistedCertificateArgsDict',
36
38
  'TrustConfigTrustStoreArgs',
37
39
  'TrustConfigTrustStoreArgsDict',
38
40
  'TrustConfigTrustStoreIntermediateCaArgs',
@@ -828,6 +830,37 @@ class DnsAuthorizationDnsResourceRecordArgs:
828
830
  pulumi.set(self, "type", value)
829
831
 
830
832
 
833
+ if not MYPY:
834
+ class TrustConfigAllowlistedCertificateArgsDict(TypedDict):
835
+ pem_certificate: pulumi.Input[str]
836
+ """
837
+ PEM certificate that is allowlisted. The certificate can be up to 5k bytes, and must be a parseable X.509 certificate.
838
+ """
839
+ elif False:
840
+ TrustConfigAllowlistedCertificateArgsDict: TypeAlias = Mapping[str, Any]
841
+
842
+ @pulumi.input_type
843
+ class TrustConfigAllowlistedCertificateArgs:
844
+ def __init__(__self__, *,
845
+ pem_certificate: pulumi.Input[str]):
846
+ """
847
+ :param pulumi.Input[str] pem_certificate: PEM certificate that is allowlisted. The certificate can be up to 5k bytes, and must be a parseable X.509 certificate.
848
+ """
849
+ pulumi.set(__self__, "pem_certificate", pem_certificate)
850
+
851
+ @property
852
+ @pulumi.getter(name="pemCertificate")
853
+ def pem_certificate(self) -> pulumi.Input[str]:
854
+ """
855
+ PEM certificate that is allowlisted. The certificate can be up to 5k bytes, and must be a parseable X.509 certificate.
856
+ """
857
+ return pulumi.get(self, "pem_certificate")
858
+
859
+ @pem_certificate.setter
860
+ def pem_certificate(self, value: pulumi.Input[str]):
861
+ pulumi.set(self, "pem_certificate", value)
862
+
863
+
831
864
  if not MYPY:
832
865
  class TrustConfigTrustStoreArgsDict(TypedDict):
833
866
  intermediate_cas: NotRequired[pulumi.Input[Sequence[pulumi.Input['TrustConfigTrustStoreIntermediateCaArgsDict']]]]
@@ -25,6 +25,7 @@ __all__ = [
25
25
  'CertificateMapGclbTargetIpConfig',
26
26
  'CertificateSelfManaged',
27
27
  'DnsAuthorizationDnsResourceRecord',
28
+ 'TrustConfigAllowlistedCertificate',
28
29
  'TrustConfigTrustStore',
29
30
  'TrustConfigTrustStoreIntermediateCa',
30
31
  'TrustConfigTrustStoreTrustAnchor',
@@ -643,6 +644,41 @@ class DnsAuthorizationDnsResourceRecord(dict):
643
644
  return pulumi.get(self, "type")
644
645
 
645
646
 
647
+ @pulumi.output_type
648
+ class TrustConfigAllowlistedCertificate(dict):
649
+ @staticmethod
650
+ def __key_warning(key: str):
651
+ suggest = None
652
+ if key == "pemCertificate":
653
+ suggest = "pem_certificate"
654
+
655
+ if suggest:
656
+ pulumi.log.warn(f"Key '{key}' not found in TrustConfigAllowlistedCertificate. Access the value via the '{suggest}' property getter instead.")
657
+
658
+ def __getitem__(self, key: str) -> Any:
659
+ TrustConfigAllowlistedCertificate.__key_warning(key)
660
+ return super().__getitem__(key)
661
+
662
+ def get(self, key: str, default = None) -> Any:
663
+ TrustConfigAllowlistedCertificate.__key_warning(key)
664
+ return super().get(key, default)
665
+
666
+ def __init__(__self__, *,
667
+ pem_certificate: str):
668
+ """
669
+ :param str pem_certificate: PEM certificate that is allowlisted. The certificate can be up to 5k bytes, and must be a parseable X.509 certificate.
670
+ """
671
+ pulumi.set(__self__, "pem_certificate", pem_certificate)
672
+
673
+ @property
674
+ @pulumi.getter(name="pemCertificate")
675
+ def pem_certificate(self) -> str:
676
+ """
677
+ PEM certificate that is allowlisted. The certificate can be up to 5k bytes, and must be a parseable X.509 certificate.
678
+ """
679
+ return pulumi.get(self, "pem_certificate")
680
+
681
+
646
682
  @pulumi.output_type
647
683
  class TrustConfigTrustStore(dict):
648
684
  @staticmethod