pulumi-gcp 7.21.0__py3-none-any.whl → 7.21.0a1714149635__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 (105) hide show
  1. pulumi_gcp/__init__.py +0 -40
  2. pulumi_gcp/alloydb/_inputs.py +0 -74
  3. pulumi_gcp/alloydb/backup.py +12 -0
  4. pulumi_gcp/alloydb/cluster.py +12 -0
  5. pulumi_gcp/alloydb/instance.py +81 -90
  6. pulumi_gcp/alloydb/outputs.py +0 -98
  7. pulumi_gcp/apigee/environment.py +0 -47
  8. pulumi_gcp/apigee/sharedflow.py +20 -0
  9. pulumi_gcp/appengine/flexible_app_version.py +20 -0
  10. pulumi_gcp/applicationintegration/__init__.py +0 -1
  11. pulumi_gcp/applicationintegration/_inputs.py +0 -843
  12. pulumi_gcp/applicationintegration/outputs.py +0 -891
  13. pulumi_gcp/bigquerydatapolicy/_inputs.py +4 -21
  14. pulumi_gcp/bigquerydatapolicy/data_policy.py +0 -78
  15. pulumi_gcp/bigquerydatapolicy/outputs.py +3 -16
  16. pulumi_gcp/certificateauthority/_inputs.py +12 -92
  17. pulumi_gcp/certificateauthority/authority.py +27 -117
  18. pulumi_gcp/certificateauthority/certificate.py +0 -176
  19. pulumi_gcp/certificateauthority/outputs.py +12 -144
  20. pulumi_gcp/cloudbuild/worker_pool.py +12 -0
  21. pulumi_gcp/cloudbuildv2/connection.py +12 -0
  22. pulumi_gcp/cloudbuildv2/repository.py +12 -0
  23. pulumi_gcp/clouddeploy/automation.py +12 -0
  24. pulumi_gcp/clouddeploy/custom_target_type.py +12 -0
  25. pulumi_gcp/clouddeploy/delivery_pipeline.py +12 -0
  26. pulumi_gcp/clouddeploy/target.py +12 -0
  27. pulumi_gcp/cloudrunv2/job.py +12 -0
  28. pulumi_gcp/cloudrunv2/service.py +12 -0
  29. pulumi_gcp/composer/__init__.py +0 -1
  30. pulumi_gcp/composer/environment.py +47 -35
  31. pulumi_gcp/compute/__init__.py +0 -1
  32. pulumi_gcp/compute/_inputs.py +58 -121
  33. pulumi_gcp/compute/forwarding_rule.py +13 -0
  34. pulumi_gcp/compute/global_address.py +12 -0
  35. pulumi_gcp/compute/global_forwarding_rule.py +282 -0
  36. pulumi_gcp/compute/instance_from_machine_image.py +46 -14
  37. pulumi_gcp/compute/instance_from_template.py +46 -14
  38. pulumi_gcp/compute/outputs.py +65 -120
  39. pulumi_gcp/compute/region_instance_template.py +13 -0
  40. pulumi_gcp/compute/region_target_https_proxy.py +0 -257
  41. pulumi_gcp/compute/region_url_map.py +470 -0
  42. pulumi_gcp/container/attached_cluster.py +12 -0
  43. pulumi_gcp/container/aws_cluster.py +12 -0
  44. pulumi_gcp/container/aws_node_pool.py +12 -0
  45. pulumi_gcp/container/azure_cluster.py +12 -0
  46. pulumi_gcp/container/azure_node_pool.py +12 -0
  47. pulumi_gcp/container/cluster.py +20 -0
  48. pulumi_gcp/dataflow/flex_template_job.py +39 -0
  49. pulumi_gcp/dataloss/__init__.py +0 -1
  50. pulumi_gcp/dataloss/_inputs.py +0 -1040
  51. pulumi_gcp/dataloss/outputs.py +0 -1123
  52. pulumi_gcp/dataproc/cluster.py +20 -0
  53. pulumi_gcp/dataproc/workflow_template.py +26 -21
  54. pulumi_gcp/deploymentmanager/deployment.py +34 -0
  55. pulumi_gcp/dns/_inputs.py +2 -2
  56. pulumi_gcp/dns/outputs.py +2 -2
  57. pulumi_gcp/dns/record_set.py +36 -2
  58. pulumi_gcp/filestore/get_instance.py +1 -11
  59. pulumi_gcp/filestore/instance.py +0 -101
  60. pulumi_gcp/firebase/_inputs.py +0 -16
  61. pulumi_gcp/firebase/android_app.py +27 -0
  62. pulumi_gcp/firebase/app_check_play_integrity_config.py +0 -20
  63. pulumi_gcp/firebase/app_check_recaptcha_enterprise_config.py +0 -10
  64. pulumi_gcp/firebase/app_check_service_config.py +125 -0
  65. pulumi_gcp/firebase/apple_app.py +27 -0
  66. pulumi_gcp/firebase/hosting_custom_domain.py +27 -0
  67. pulumi_gcp/firebase/hosting_version.py +0 -44
  68. pulumi_gcp/firebase/outputs.py +0 -12
  69. pulumi_gcp/firebase/web_app.py +20 -0
  70. pulumi_gcp/firestore/database.py +68 -0
  71. pulumi_gcp/gkeonprem/bare_metal_admin_cluster.py +12 -0
  72. pulumi_gcp/gkeonprem/bare_metal_cluster.py +12 -0
  73. pulumi_gcp/gkeonprem/bare_metal_node_pool.py +12 -0
  74. pulumi_gcp/gkeonprem/v_mware_cluster.py +12 -0
  75. pulumi_gcp/gkeonprem/v_mware_node_pool.py +12 -0
  76. pulumi_gcp/logging/folder_sink.py +0 -54
  77. pulumi_gcp/logging/organization_sink.py +0 -54
  78. pulumi_gcp/monitoring/_inputs.py +2 -46
  79. pulumi_gcp/monitoring/outputs.py +2 -40
  80. pulumi_gcp/monitoring/uptime_check_config.py +0 -6
  81. pulumi_gcp/netapp/active_directory.py +20 -0
  82. pulumi_gcp/netapp/volume_replication.py +68 -0
  83. pulumi_gcp/networkconnectivity/__init__.py +0 -1
  84. pulumi_gcp/secretmanager/get_secret.py +3 -13
  85. pulumi_gcp/secretmanager/outputs.py +1 -20
  86. pulumi_gcp/secretmanager/secret.py +15 -90
  87. pulumi_gcp/servicenetworking/connection.py +20 -0
  88. pulumi_gcp/spanner/database.py +41 -0
  89. pulumi_gcp/spanner/instance.py +40 -0
  90. pulumi_gcp/storage/__init__.py +0 -1
  91. pulumi_gcp/storage/bucket.py +12 -0
  92. pulumi_gcp/storage/outputs.py +0 -63
  93. pulumi_gcp/workstations/workstation.py +12 -0
  94. pulumi_gcp/workstations/workstation_cluster.py +12 -0
  95. pulumi_gcp/workstations/workstation_config.py +12 -0
  96. {pulumi_gcp-7.21.0.dist-info → pulumi_gcp-7.21.0a1714149635.dist-info}/METADATA +1 -1
  97. {pulumi_gcp-7.21.0.dist-info → pulumi_gcp-7.21.0a1714149635.dist-info}/RECORD +99 -105
  98. pulumi_gcp/applicationintegration/auth_config.py +0 -998
  99. pulumi_gcp/composer/user_workloads_secret.py +0 -441
  100. pulumi_gcp/compute/security_policy_rule.py +0 -850
  101. pulumi_gcp/dataloss/prevention_discovery_config.py +0 -737
  102. pulumi_gcp/networkconnectivity/internal_range.py +0 -1024
  103. pulumi_gcp/storage/get_bucket_objects.py +0 -153
  104. {pulumi_gcp-7.21.0.dist-info → pulumi_gcp-7.21.0a1714149635.dist-info}/WHEEL +0 -0
  105. {pulumi_gcp-7.21.0.dist-info → pulumi_gcp-7.21.0a1714149635.dist-info}/top_level.txt +0 -0
@@ -18,21 +18,16 @@ __all__ = [
18
18
  @pulumi.input_type
19
19
  class DataPolicyDataMaskingPolicyArgs:
20
20
  def __init__(__self__, *,
21
- predefined_expression: Optional[pulumi.Input[str]] = None,
22
- routine: Optional[pulumi.Input[str]] = None):
21
+ predefined_expression: pulumi.Input[str]):
23
22
  """
24
23
  :param pulumi.Input[str] predefined_expression: The available masking rules. Learn more here: https://cloud.google.com/bigquery/docs/column-data-masking-intro#masking_options.
25
24
  Possible values are: `SHA256`, `ALWAYS_NULL`, `DEFAULT_MASKING_VALUE`, `LAST_FOUR_CHARACTERS`, `FIRST_FOUR_CHARACTERS`, `EMAIL_MASK`, `DATE_YEAR_MASK`.
26
- :param pulumi.Input[str] routine: The name of the BigQuery routine that contains the custom masking routine, in the format of projects/{projectNumber}/datasets/{dataset_id}/routines/{routine_id}.
27
25
  """
28
- if predefined_expression is not None:
29
- pulumi.set(__self__, "predefined_expression", predefined_expression)
30
- if routine is not None:
31
- pulumi.set(__self__, "routine", routine)
26
+ pulumi.set(__self__, "predefined_expression", predefined_expression)
32
27
 
33
28
  @property
34
29
  @pulumi.getter(name="predefinedExpression")
35
- def predefined_expression(self) -> Optional[pulumi.Input[str]]:
30
+ def predefined_expression(self) -> pulumi.Input[str]:
36
31
  """
37
32
  The available masking rules. Learn more here: https://cloud.google.com/bigquery/docs/column-data-masking-intro#masking_options.
38
33
  Possible values are: `SHA256`, `ALWAYS_NULL`, `DEFAULT_MASKING_VALUE`, `LAST_FOUR_CHARACTERS`, `FIRST_FOUR_CHARACTERS`, `EMAIL_MASK`, `DATE_YEAR_MASK`.
@@ -40,21 +35,9 @@ class DataPolicyDataMaskingPolicyArgs:
40
35
  return pulumi.get(self, "predefined_expression")
41
36
 
42
37
  @predefined_expression.setter
43
- def predefined_expression(self, value: Optional[pulumi.Input[str]]):
38
+ def predefined_expression(self, value: pulumi.Input[str]):
44
39
  pulumi.set(self, "predefined_expression", value)
45
40
 
46
- @property
47
- @pulumi.getter
48
- def routine(self) -> Optional[pulumi.Input[str]]:
49
- """
50
- The name of the BigQuery routine that contains the custom masking routine, in the format of projects/{projectNumber}/datasets/{dataset_id}/routines/{routine_id}.
51
- """
52
- return pulumi.get(self, "routine")
53
-
54
- @routine.setter
55
- def routine(self, value: Optional[pulumi.Input[str]]):
56
- pulumi.set(self, "routine", value)
57
-
58
41
 
59
42
  @pulumi.input_type
60
43
  class DataPolicyIamBindingConditionArgs:
@@ -301,45 +301,6 @@ class DataPolicy(pulumi.CustomResource):
301
301
  policy_tag=policy_tag.name,
302
302
  data_policy_type="COLUMN_LEVEL_SECURITY_POLICY")
303
303
  ```
304
- ### Bigquery Datapolicy Data Policy Routine
305
-
306
- ```python
307
- import pulumi
308
- import pulumi_gcp as gcp
309
-
310
- taxonomy = gcp.datacatalog.Taxonomy("taxonomy",
311
- region="us-central1",
312
- display_name="taxonomy",
313
- description="A collection of policy tags",
314
- activated_policy_types=["FINE_GRAINED_ACCESS_CONTROL"])
315
- policy_tag = gcp.datacatalog.PolicyTag("policy_tag",
316
- taxonomy=taxonomy.id,
317
- display_name="Low security",
318
- description="A policy tag normally associated with low security items")
319
- test = gcp.bigquery.Dataset("test",
320
- dataset_id="dataset_id",
321
- location="us-central1")
322
- custom_masking_routine = gcp.bigquery.Routine("custom_masking_routine",
323
- dataset_id=test.dataset_id,
324
- routine_id="custom_masking_routine",
325
- routine_type="SCALAR_FUNCTION",
326
- language="SQL",
327
- data_governance_type="DATA_MASKING",
328
- definition_body="SAFE.REGEXP_REPLACE(ssn, '[0-9]', 'X')",
329
- return_type="{\\"typeKind\\" : \\"STRING\\"}",
330
- arguments=[gcp.bigquery.RoutineArgumentArgs(
331
- name="ssn",
332
- data_type="{\\"typeKind\\" : \\"STRING\\"}",
333
- )])
334
- data_policy = gcp.bigquerydatapolicy.DataPolicy("data_policy",
335
- location="us-central1",
336
- data_policy_id="data_policy",
337
- policy_tag=policy_tag.name,
338
- data_policy_type="DATA_MASKING_POLICY",
339
- data_masking_policy=gcp.bigquerydatapolicy.DataPolicyDataMaskingPolicyArgs(
340
- routine=custom_masking_routine.id,
341
- ))
342
- ```
343
304
 
344
305
  ## Import
345
306
 
@@ -418,45 +379,6 @@ class DataPolicy(pulumi.CustomResource):
418
379
  policy_tag=policy_tag.name,
419
380
  data_policy_type="COLUMN_LEVEL_SECURITY_POLICY")
420
381
  ```
421
- ### Bigquery Datapolicy Data Policy Routine
422
-
423
- ```python
424
- import pulumi
425
- import pulumi_gcp as gcp
426
-
427
- taxonomy = gcp.datacatalog.Taxonomy("taxonomy",
428
- region="us-central1",
429
- display_name="taxonomy",
430
- description="A collection of policy tags",
431
- activated_policy_types=["FINE_GRAINED_ACCESS_CONTROL"])
432
- policy_tag = gcp.datacatalog.PolicyTag("policy_tag",
433
- taxonomy=taxonomy.id,
434
- display_name="Low security",
435
- description="A policy tag normally associated with low security items")
436
- test = gcp.bigquery.Dataset("test",
437
- dataset_id="dataset_id",
438
- location="us-central1")
439
- custom_masking_routine = gcp.bigquery.Routine("custom_masking_routine",
440
- dataset_id=test.dataset_id,
441
- routine_id="custom_masking_routine",
442
- routine_type="SCALAR_FUNCTION",
443
- language="SQL",
444
- data_governance_type="DATA_MASKING",
445
- definition_body="SAFE.REGEXP_REPLACE(ssn, '[0-9]', 'X')",
446
- return_type="{\\"typeKind\\" : \\"STRING\\"}",
447
- arguments=[gcp.bigquery.RoutineArgumentArgs(
448
- name="ssn",
449
- data_type="{\\"typeKind\\" : \\"STRING\\"}",
450
- )])
451
- data_policy = gcp.bigquerydatapolicy.DataPolicy("data_policy",
452
- location="us-central1",
453
- data_policy_id="data_policy",
454
- policy_tag=policy_tag.name,
455
- data_policy_type="DATA_MASKING_POLICY",
456
- data_masking_policy=gcp.bigquerydatapolicy.DataPolicyDataMaskingPolicyArgs(
457
- routine=custom_masking_routine.id,
458
- ))
459
- ```
460
382
 
461
383
  ## Import
462
384
 
@@ -35,35 +35,22 @@ class DataPolicyDataMaskingPolicy(dict):
35
35
  return super().get(key, default)
36
36
 
37
37
  def __init__(__self__, *,
38
- predefined_expression: Optional[str] = None,
39
- routine: Optional[str] = None):
38
+ predefined_expression: str):
40
39
  """
41
40
  :param str predefined_expression: The available masking rules. Learn more here: https://cloud.google.com/bigquery/docs/column-data-masking-intro#masking_options.
42
41
  Possible values are: `SHA256`, `ALWAYS_NULL`, `DEFAULT_MASKING_VALUE`, `LAST_FOUR_CHARACTERS`, `FIRST_FOUR_CHARACTERS`, `EMAIL_MASK`, `DATE_YEAR_MASK`.
43
- :param str routine: The name of the BigQuery routine that contains the custom masking routine, in the format of projects/{projectNumber}/datasets/{dataset_id}/routines/{routine_id}.
44
42
  """
45
- if predefined_expression is not None:
46
- pulumi.set(__self__, "predefined_expression", predefined_expression)
47
- if routine is not None:
48
- pulumi.set(__self__, "routine", routine)
43
+ pulumi.set(__self__, "predefined_expression", predefined_expression)
49
44
 
50
45
  @property
51
46
  @pulumi.getter(name="predefinedExpression")
52
- def predefined_expression(self) -> Optional[str]:
47
+ def predefined_expression(self) -> str:
53
48
  """
54
49
  The available masking rules. Learn more here: https://cloud.google.com/bigquery/docs/column-data-masking-intro#masking_options.
55
50
  Possible values are: `SHA256`, `ALWAYS_NULL`, `DEFAULT_MASKING_VALUE`, `LAST_FOUR_CHARACTERS`, `FIRST_FOUR_CHARACTERS`, `EMAIL_MASK`, `DATE_YEAR_MASK`.
56
51
  """
57
52
  return pulumi.get(self, "predefined_expression")
58
53
 
59
- @property
60
- @pulumi.getter
61
- def routine(self) -> Optional[str]:
62
- """
63
- The name of the BigQuery routine that contains the custom masking routine, in the format of projects/{projectNumber}/datasets/{dataset_id}/routines/{routine_id}.
64
- """
65
- return pulumi.get(self, "routine")
66
-
67
54
 
68
55
  @pulumi.output_type
69
56
  class DataPolicyIamBindingCondition(dict):
@@ -15,7 +15,6 @@ __all__ = [
15
15
  'AuthorityConfigSubjectConfigArgs',
16
16
  'AuthorityConfigSubjectConfigSubjectArgs',
17
17
  'AuthorityConfigSubjectConfigSubjectAltNameArgs',
18
- 'AuthorityConfigSubjectKeyIdArgs',
19
18
  'AuthorityConfigX509ConfigArgs',
20
19
  'AuthorityConfigX509ConfigAdditionalExtensionArgs',
21
20
  'AuthorityConfigX509ConfigAdditionalExtensionObjectIdArgs',
@@ -74,7 +73,6 @@ __all__ = [
74
73
  'CertificateConfigSubjectConfigArgs',
75
74
  'CertificateConfigSubjectConfigSubjectArgs',
76
75
  'CertificateConfigSubjectConfigSubjectAltNameArgs',
77
- 'CertificateConfigSubjectKeyIdArgs',
78
76
  'CertificateConfigX509ConfigArgs',
79
77
  'CertificateConfigX509ConfigAdditionalExtensionArgs',
80
78
  'CertificateConfigX509ConfigAdditionalExtensionObjectIdArgs',
@@ -154,20 +152,18 @@ class AuthorityAccessUrlArgs:
154
152
  class AuthorityConfigArgs:
155
153
  def __init__(__self__, *,
156
154
  subject_config: pulumi.Input['AuthorityConfigSubjectConfigArgs'],
157
- x509_config: pulumi.Input['AuthorityConfigX509ConfigArgs'],
158
- subject_key_id: Optional[pulumi.Input['AuthorityConfigSubjectKeyIdArgs']] = None):
155
+ x509_config: pulumi.Input['AuthorityConfigX509ConfigArgs']):
159
156
  """
160
157
  :param pulumi.Input['AuthorityConfigSubjectConfigArgs'] subject_config: Specifies some of the values in a certificate that are related to the subject.
161
158
  Structure is documented below.
159
+
160
+
161
+ <a name="nested_x509_config"></a>The `x509_config` block supports:
162
162
  :param pulumi.Input['AuthorityConfigX509ConfigArgs'] x509_config: Describes how some of the technical X.509 fields in a certificate should be populated.
163
163
  Structure is documented below.
164
- :param pulumi.Input['AuthorityConfigSubjectKeyIdArgs'] subject_key_id: When specified this provides a custom SKI to be used in the certificate. This should only be used to maintain a SKI of an existing CA originally created outside CA service, which was not generated using method (1) described in RFC 5280 section 4.2.1.2..
165
- Structure is documented below.
166
164
  """
167
165
  pulumi.set(__self__, "subject_config", subject_config)
168
166
  pulumi.set(__self__, "x509_config", x509_config)
169
- if subject_key_id is not None:
170
- pulumi.set(__self__, "subject_key_id", subject_key_id)
171
167
 
172
168
  @property
173
169
  @pulumi.getter(name="subjectConfig")
@@ -175,6 +171,9 @@ class AuthorityConfigArgs:
175
171
  """
176
172
  Specifies some of the values in a certificate that are related to the subject.
177
173
  Structure is documented below.
174
+
175
+
176
+ <a name="nested_x509_config"></a>The `x509_config` block supports:
178
177
  """
179
178
  return pulumi.get(self, "subject_config")
180
179
 
@@ -195,19 +194,6 @@ class AuthorityConfigArgs:
195
194
  def x509_config(self, value: pulumi.Input['AuthorityConfigX509ConfigArgs']):
196
195
  pulumi.set(self, "x509_config", value)
197
196
 
198
- @property
199
- @pulumi.getter(name="subjectKeyId")
200
- def subject_key_id(self) -> Optional[pulumi.Input['AuthorityConfigSubjectKeyIdArgs']]:
201
- """
202
- When specified this provides a custom SKI to be used in the certificate. This should only be used to maintain a SKI of an existing CA originally created outside CA service, which was not generated using method (1) described in RFC 5280 section 4.2.1.2..
203
- Structure is documented below.
204
- """
205
- return pulumi.get(self, "subject_key_id")
206
-
207
- @subject_key_id.setter
208
- def subject_key_id(self, value: Optional[pulumi.Input['AuthorityConfigSubjectKeyIdArgs']]):
209
- pulumi.set(self, "subject_key_id", value)
210
-
211
197
 
212
198
  @pulumi.input_type
213
199
  class AuthorityConfigSubjectConfigArgs:
@@ -455,33 +441,6 @@ class AuthorityConfigSubjectConfigSubjectAltNameArgs:
455
441
  pulumi.set(self, "uris", value)
456
442
 
457
443
 
458
- @pulumi.input_type
459
- class AuthorityConfigSubjectKeyIdArgs:
460
- def __init__(__self__, *,
461
- key_id: Optional[pulumi.Input[str]] = None):
462
- """
463
- :param pulumi.Input[str] key_id: The value of the KeyId in lowercase hexidecimal.
464
-
465
- <a name="nested_x509_config"></a>The `x509_config` block supports:
466
- """
467
- if key_id is not None:
468
- pulumi.set(__self__, "key_id", key_id)
469
-
470
- @property
471
- @pulumi.getter(name="keyId")
472
- def key_id(self) -> Optional[pulumi.Input[str]]:
473
- """
474
- The value of the KeyId in lowercase hexidecimal.
475
-
476
- <a name="nested_x509_config"></a>The `x509_config` block supports:
477
- """
478
- return pulumi.get(self, "key_id")
479
-
480
- @key_id.setter
481
- def key_id(self, value: Optional[pulumi.Input[str]]):
482
- pulumi.set(self, "key_id", value)
483
-
484
-
485
444
  @pulumi.input_type
486
445
  class AuthorityConfigX509ConfigArgs:
487
446
  def __init__(__self__, *,
@@ -3490,7 +3449,8 @@ class CertificateCertificateDescriptionSubjectKeyIdArgs:
3490
3449
  def __init__(__self__, *,
3491
3450
  key_id: Optional[pulumi.Input[str]] = None):
3492
3451
  """
3493
- :param pulumi.Input[str] key_id: The value of the KeyId in lowercase hexidecimal.
3452
+ :param pulumi.Input[str] key_id: (Output)
3453
+ Optional. The value of this KeyId encoded in lowercase hexadecimal. This is most likely the 160 bit SHA-1 hash of the public key.
3494
3454
  """
3495
3455
  if key_id is not None:
3496
3456
  pulumi.set(__self__, "key_id", key_id)
@@ -3499,7 +3459,8 @@ class CertificateCertificateDescriptionSubjectKeyIdArgs:
3499
3459
  @pulumi.getter(name="keyId")
3500
3460
  def key_id(self) -> Optional[pulumi.Input[str]]:
3501
3461
  """
3502
- The value of the KeyId in lowercase hexidecimal.
3462
+ (Output)
3463
+ Optional. The value of this KeyId encoded in lowercase hexadecimal. This is most likely the 160 bit SHA-1 hash of the public key.
3503
3464
  """
3504
3465
  return pulumi.get(self, "key_id")
3505
3466
 
@@ -4323,8 +4284,7 @@ class CertificateConfigArgs:
4323
4284
  def __init__(__self__, *,
4324
4285
  public_key: pulumi.Input['CertificateConfigPublicKeyArgs'],
4325
4286
  subject_config: pulumi.Input['CertificateConfigSubjectConfigArgs'],
4326
- x509_config: pulumi.Input['CertificateConfigX509ConfigArgs'],
4327
- subject_key_id: Optional[pulumi.Input['CertificateConfigSubjectKeyIdArgs']] = None):
4287
+ x509_config: pulumi.Input['CertificateConfigX509ConfigArgs']):
4328
4288
  """
4329
4289
  :param pulumi.Input['CertificateConfigPublicKeyArgs'] public_key: A PublicKey describes a public key.
4330
4290
  Structure is documented below.
@@ -4335,14 +4295,10 @@ class CertificateConfigArgs:
4335
4295
  Structure is documented below.
4336
4296
  :param pulumi.Input['CertificateConfigX509ConfigArgs'] x509_config: Describes how some of the technical X.509 fields in a certificate should be populated.
4337
4297
  Structure is documented below.
4338
- :param pulumi.Input['CertificateConfigSubjectKeyIdArgs'] subject_key_id: When specified this provides a custom SKI to be used in the certificate. This should only be used to maintain a SKI of an existing CA originally created outside CA service, which was not generated using method (1) described in RFC 5280 section 4.2.1.2..
4339
- Structure is documented below.
4340
4298
  """
4341
4299
  pulumi.set(__self__, "public_key", public_key)
4342
4300
  pulumi.set(__self__, "subject_config", subject_config)
4343
4301
  pulumi.set(__self__, "x509_config", x509_config)
4344
- if subject_key_id is not None:
4345
- pulumi.set(__self__, "subject_key_id", subject_key_id)
4346
4302
 
4347
4303
  @property
4348
4304
  @pulumi.getter(name="publicKey")
@@ -4386,19 +4342,6 @@ class CertificateConfigArgs:
4386
4342
  def x509_config(self, value: pulumi.Input['CertificateConfigX509ConfigArgs']):
4387
4343
  pulumi.set(self, "x509_config", value)
4388
4344
 
4389
- @property
4390
- @pulumi.getter(name="subjectKeyId")
4391
- def subject_key_id(self) -> Optional[pulumi.Input['CertificateConfigSubjectKeyIdArgs']]:
4392
- """
4393
- When specified this provides a custom SKI to be used in the certificate. This should only be used to maintain a SKI of an existing CA originally created outside CA service, which was not generated using method (1) described in RFC 5280 section 4.2.1.2..
4394
- Structure is documented below.
4395
- """
4396
- return pulumi.get(self, "subject_key_id")
4397
-
4398
- @subject_key_id.setter
4399
- def subject_key_id(self, value: Optional[pulumi.Input['CertificateConfigSubjectKeyIdArgs']]):
4400
- pulumi.set(self, "subject_key_id", value)
4401
-
4402
4345
 
4403
4346
  @pulumi.input_type
4404
4347
  class CertificateConfigPublicKeyArgs:
@@ -4686,29 +4629,6 @@ class CertificateConfigSubjectConfigSubjectAltNameArgs:
4686
4629
  pulumi.set(self, "uris", value)
4687
4630
 
4688
4631
 
4689
- @pulumi.input_type
4690
- class CertificateConfigSubjectKeyIdArgs:
4691
- def __init__(__self__, *,
4692
- key_id: Optional[pulumi.Input[str]] = None):
4693
- """
4694
- :param pulumi.Input[str] key_id: The value of the KeyId in lowercase hexidecimal.
4695
- """
4696
- if key_id is not None:
4697
- pulumi.set(__self__, "key_id", key_id)
4698
-
4699
- @property
4700
- @pulumi.getter(name="keyId")
4701
- def key_id(self) -> Optional[pulumi.Input[str]]:
4702
- """
4703
- The value of the KeyId in lowercase hexidecimal.
4704
- """
4705
- return pulumi.get(self, "key_id")
4706
-
4707
- @key_id.setter
4708
- def key_id(self, value: Optional[pulumi.Input[str]]):
4709
- pulumi.set(self, "key_id", value)
4710
-
4711
-
4712
4632
  @pulumi.input_type
4713
4633
  class CertificateConfigX509ConfigArgs:
4714
4634
  def __init__(__self__, *,
@@ -44,6 +44,8 @@ class AuthorityArgs:
44
44
  :param pulumi.Input[str] location: Location of the CertificateAuthority. A full list of valid locations can be found by
45
45
  running `gcloud privateca locations list`.
46
46
  :param pulumi.Input[str] pool: The name of the CaPool this Certificate Authority belongs to.
47
+ :param pulumi.Input[bool] deletion_protection: Whether or not to allow Terraform to destroy the CertificateAuthority. Unless this field is set to false in Terraform
48
+ state, a 'terraform destroy' or 'terraform apply' that would delete the instance will fail.
47
49
  :param pulumi.Input[str] desired_state: Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA.
48
50
  :param pulumi.Input[str] gcs_bucket: The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and
49
51
  CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For
@@ -63,7 +65,7 @@ class AuthorityArgs:
63
65
  'false'.
64
66
  :param pulumi.Input['AuthoritySubordinateConfigArgs'] subordinate_config: If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which
65
67
  describes its issuers.
66
- :param pulumi.Input[str] type: The Type of this CertificateAuthority. > **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
68
+ :param pulumi.Input[str] type: The Type of this CertificateAuthority. ~> **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
67
69
  before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
68
70
  """
69
71
  pulumi.set(__self__, "certificate_authority_id", certificate_authority_id)
@@ -162,6 +164,10 @@ class AuthorityArgs:
162
164
  @property
163
165
  @pulumi.getter(name="deletionProtection")
164
166
  def deletion_protection(self) -> Optional[pulumi.Input[bool]]:
167
+ """
168
+ Whether or not to allow Terraform to destroy the CertificateAuthority. Unless this field is set to false in Terraform
169
+ state, a 'terraform destroy' or 'terraform apply' that would delete the instance will fail.
170
+ """
165
171
  return pulumi.get(self, "deletion_protection")
166
172
 
167
173
  @deletion_protection.setter
@@ -288,7 +294,7 @@ class AuthorityArgs:
288
294
  @pulumi.getter
289
295
  def type(self) -> Optional[pulumi.Input[str]]:
290
296
  """
291
- The Type of this CertificateAuthority. > **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
297
+ The Type of this CertificateAuthority. ~> **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
292
298
  before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
293
299
  """
294
300
  return pulumi.get(self, "type")
@@ -335,6 +341,8 @@ class _AuthorityState:
335
341
  :param pulumi.Input[str] create_time: The time at which this CertificateAuthority was created.
336
342
  A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine
337
343
  fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
344
+ :param pulumi.Input[bool] deletion_protection: Whether or not to allow Terraform to destroy the CertificateAuthority. Unless this field is set to false in Terraform
345
+ state, a 'terraform destroy' or 'terraform apply' that would delete the instance will fail.
338
346
  :param pulumi.Input[str] desired_state: Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA.
339
347
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
340
348
  :param pulumi.Input[str] gcs_bucket: The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and
@@ -371,7 +379,7 @@ class _AuthorityState:
371
379
  :param pulumi.Input[str] state: The State for this CertificateAuthority.
372
380
  :param pulumi.Input['AuthoritySubordinateConfigArgs'] subordinate_config: If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which
373
381
  describes its issuers.
374
- :param pulumi.Input[str] type: The Type of this CertificateAuthority. > **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
382
+ :param pulumi.Input[str] type: The Type of this CertificateAuthority. ~> **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
375
383
  before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
376
384
  :param pulumi.Input[str] update_time: The time at which this CertificateAuthority was updated.
377
385
  A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine
@@ -481,6 +489,10 @@ class _AuthorityState:
481
489
  @property
482
490
  @pulumi.getter(name="deletionProtection")
483
491
  def deletion_protection(self) -> Optional[pulumi.Input[bool]]:
492
+ """
493
+ Whether or not to allow Terraform to destroy the CertificateAuthority. Unless this field is set to false in Terraform
494
+ state, a 'terraform destroy' or 'terraform apply' that would delete the instance will fail.
495
+ """
484
496
  return pulumi.get(self, "deletion_protection")
485
497
 
486
498
  @deletion_protection.setter
@@ -712,7 +724,7 @@ class _AuthorityState:
712
724
  @pulumi.getter
713
725
  def type(self) -> Optional[pulumi.Input[str]]:
714
726
  """
715
- The Type of this CertificateAuthority. > **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
727
+ The Type of this CertificateAuthority. ~> **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
716
728
  before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
717
729
  """
718
730
  return pulumi.get(self, "type")
@@ -975,61 +987,6 @@ class Authority(pulumi.CustomResource):
975
987
  ),
976
988
  ))
977
989
  ```
978
- ### Privateca Certificate Authority Custom Ski
979
-
980
- ```python
981
- import pulumi
982
- import pulumi_gcp as gcp
983
-
984
- default = gcp.certificateauthority.Authority("default",
985
- pool="ca-pool",
986
- certificate_authority_id="my-certificate-authority",
987
- location="us-central1",
988
- deletion_protection=True,
989
- config=gcp.certificateauthority.AuthorityConfigArgs(
990
- subject_config=gcp.certificateauthority.AuthorityConfigSubjectConfigArgs(
991
- subject=gcp.certificateauthority.AuthorityConfigSubjectConfigSubjectArgs(
992
- organization="HashiCorp",
993
- common_name="my-certificate-authority",
994
- ),
995
- subject_alt_name=gcp.certificateauthority.AuthorityConfigSubjectConfigSubjectAltNameArgs(
996
- dns_names=["hashicorp.com"],
997
- ),
998
- ),
999
- subject_key_id=gcp.certificateauthority.AuthorityConfigSubjectKeyIdArgs(
1000
- key_id="4cf3372289b1d411b999dbb9ebcd44744b6b2fca",
1001
- ),
1002
- x509_config=gcp.certificateauthority.AuthorityConfigX509ConfigArgs(
1003
- ca_options=gcp.certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs(
1004
- is_ca=True,
1005
- max_issuer_path_length=10,
1006
- ),
1007
- key_usage=gcp.certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs(
1008
- base_key_usage=gcp.certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs(
1009
- digital_signature=True,
1010
- content_commitment=True,
1011
- key_encipherment=False,
1012
- data_encipherment=True,
1013
- key_agreement=True,
1014
- cert_sign=True,
1015
- crl_sign=True,
1016
- decipher_only=True,
1017
- ),
1018
- extended_key_usage=gcp.certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs(
1019
- server_auth=True,
1020
- client_auth=False,
1021
- email_protection=True,
1022
- code_signing=True,
1023
- time_stamping=True,
1024
- ),
1025
- ),
1026
- ),
1027
- ),
1028
- lifetime="86400s",
1029
- key_spec=gcp.certificateauthority.AuthorityKeySpecArgs(
1030
- cloud_kms_key_version="projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1",
1031
- ))
1032
- ```
1033
990
 
1034
991
  ## Import
1035
992
 
@@ -1060,6 +1017,8 @@ class Authority(pulumi.CustomResource):
1060
1017
  :param pulumi.Input[str] certificate_authority_id: The user provided Resource ID for this Certificate Authority.
1061
1018
  :param pulumi.Input[pulumi.InputType['AuthorityConfigArgs']] config: The config used to create a self-signed X.509 certificate or CSR.
1062
1019
  Structure is documented below.
1020
+ :param pulumi.Input[bool] deletion_protection: Whether or not to allow Terraform to destroy the CertificateAuthority. Unless this field is set to false in Terraform
1021
+ state, a 'terraform destroy' or 'terraform apply' that would delete the instance will fail.
1063
1022
  :param pulumi.Input[str] desired_state: Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA.
1064
1023
  :param pulumi.Input[str] gcs_bucket: The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and
1065
1024
  CRLs. This must be a bucket name, without any prefixes (such as 'gs://') or suffixes (such as '.googleapis.com'). For
@@ -1086,7 +1045,7 @@ class Authority(pulumi.CustomResource):
1086
1045
  'false'.
1087
1046
  :param pulumi.Input[pulumi.InputType['AuthoritySubordinateConfigArgs']] subordinate_config: If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which
1088
1047
  describes its issuers.
1089
- :param pulumi.Input[str] type: The Type of this CertificateAuthority. > **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
1048
+ :param pulumi.Input[str] type: The Type of this CertificateAuthority. ~> **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
1090
1049
  before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
1091
1050
  """
1092
1051
  ...
@@ -1312,61 +1271,6 @@ class Authority(pulumi.CustomResource):
1312
1271
  ),
1313
1272
  ))
1314
1273
  ```
1315
- ### Privateca Certificate Authority Custom Ski
1316
-
1317
- ```python
1318
- import pulumi
1319
- import pulumi_gcp as gcp
1320
-
1321
- default = gcp.certificateauthority.Authority("default",
1322
- pool="ca-pool",
1323
- certificate_authority_id="my-certificate-authority",
1324
- location="us-central1",
1325
- deletion_protection=True,
1326
- config=gcp.certificateauthority.AuthorityConfigArgs(
1327
- subject_config=gcp.certificateauthority.AuthorityConfigSubjectConfigArgs(
1328
- subject=gcp.certificateauthority.AuthorityConfigSubjectConfigSubjectArgs(
1329
- organization="HashiCorp",
1330
- common_name="my-certificate-authority",
1331
- ),
1332
- subject_alt_name=gcp.certificateauthority.AuthorityConfigSubjectConfigSubjectAltNameArgs(
1333
- dns_names=["hashicorp.com"],
1334
- ),
1335
- ),
1336
- subject_key_id=gcp.certificateauthority.AuthorityConfigSubjectKeyIdArgs(
1337
- key_id="4cf3372289b1d411b999dbb9ebcd44744b6b2fca",
1338
- ),
1339
- x509_config=gcp.certificateauthority.AuthorityConfigX509ConfigArgs(
1340
- ca_options=gcp.certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs(
1341
- is_ca=True,
1342
- max_issuer_path_length=10,
1343
- ),
1344
- key_usage=gcp.certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs(
1345
- base_key_usage=gcp.certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs(
1346
- digital_signature=True,
1347
- content_commitment=True,
1348
- key_encipherment=False,
1349
- data_encipherment=True,
1350
- key_agreement=True,
1351
- cert_sign=True,
1352
- crl_sign=True,
1353
- decipher_only=True,
1354
- ),
1355
- extended_key_usage=gcp.certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs(
1356
- server_auth=True,
1357
- client_auth=False,
1358
- email_protection=True,
1359
- code_signing=True,
1360
- time_stamping=True,
1361
- ),
1362
- ),
1363
- ),
1364
- ),
1365
- lifetime="86400s",
1366
- key_spec=gcp.certificateauthority.AuthorityKeySpecArgs(
1367
- cloud_kms_key_version="projects/keys-project/locations/us-central1/keyRings/key-ring/cryptoKeys/crypto-key/cryptoKeyVersions/1",
1368
- ))
1369
- ```
1370
1274
 
1371
1275
  ## Import
1372
1276
 
@@ -1517,6 +1421,8 @@ class Authority(pulumi.CustomResource):
1517
1421
  :param pulumi.Input[str] create_time: The time at which this CertificateAuthority was created.
1518
1422
  A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine
1519
1423
  fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
1424
+ :param pulumi.Input[bool] deletion_protection: Whether or not to allow Terraform to destroy the CertificateAuthority. Unless this field is set to false in Terraform
1425
+ state, a 'terraform destroy' or 'terraform apply' that would delete the instance will fail.
1520
1426
  :param pulumi.Input[str] desired_state: Desired state of the CertificateAuthority. Set this field to 'STAGED' to create a 'STAGED' root CA.
1521
1427
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
1522
1428
  :param pulumi.Input[str] gcs_bucket: The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and
@@ -1553,7 +1459,7 @@ class Authority(pulumi.CustomResource):
1553
1459
  :param pulumi.Input[str] state: The State for this CertificateAuthority.
1554
1460
  :param pulumi.Input[pulumi.InputType['AuthoritySubordinateConfigArgs']] subordinate_config: If this is a subordinate CertificateAuthority, this field will be set with the subordinate configuration, which
1555
1461
  describes its issuers.
1556
- :param pulumi.Input[str] type: The Type of this CertificateAuthority. > **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
1462
+ :param pulumi.Input[str] type: The Type of this CertificateAuthority. ~> **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
1557
1463
  before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
1558
1464
  :param pulumi.Input[str] update_time: The time at which this CertificateAuthority was updated.
1559
1465
  A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine
@@ -1628,6 +1534,10 @@ class Authority(pulumi.CustomResource):
1628
1534
  @property
1629
1535
  @pulumi.getter(name="deletionProtection")
1630
1536
  def deletion_protection(self) -> pulumi.Output[Optional[bool]]:
1537
+ """
1538
+ Whether or not to allow Terraform to destroy the CertificateAuthority. Unless this field is set to false in Terraform
1539
+ state, a 'terraform destroy' or 'terraform apply' that would delete the instance will fail.
1540
+ """
1631
1541
  return pulumi.get(self, "deletion_protection")
1632
1542
 
1633
1543
  @property
@@ -1787,7 +1697,7 @@ class Authority(pulumi.CustomResource):
1787
1697
  @pulumi.getter
1788
1698
  def type(self) -> pulumi.Output[Optional[str]]:
1789
1699
  """
1790
- The Type of this CertificateAuthority. > **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
1700
+ The Type of this CertificateAuthority. ~> **Note:** For 'SUBORDINATE' Certificate Authorities, they need to be activated
1791
1701
  before they can issue certificates. Default value: "SELF_SIGNED" Possible values: ["SELF_SIGNED", "SUBORDINATE"]
1792
1702
  """
1793
1703
  return pulumi.get(self, "type")