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
@@ -22,6 +22,7 @@ __all__ = ['TrustConfigArgs', 'TrustConfig']
22
22
  class TrustConfigArgs:
23
23
  def __init__(__self__, *,
24
24
  location: pulumi.Input[str],
25
+ allowlisted_certificates: Optional[pulumi.Input[Sequence[pulumi.Input['TrustConfigAllowlistedCertificateArgs']]]] = None,
25
26
  description: Optional[pulumi.Input[str]] = None,
26
27
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
27
28
  name: Optional[pulumi.Input[str]] = None,
@@ -33,6 +34,9 @@ class TrustConfigArgs:
33
34
 
34
35
 
35
36
  - - -
37
+ :param pulumi.Input[Sequence[pulumi.Input['TrustConfigAllowlistedCertificateArgs']]] allowlisted_certificates: Allowlisted PEM-encoded certificates. A certificate matching an allowlisted certificate is always considered valid as long as
38
+ the certificate is parseable, proof of private key possession is established, and constraints on the certificate's SAN field are met.
39
+ Structure is documented below.
36
40
  :param pulumi.Input[str] description: One or more paragraphs of text description of a trust config.
37
41
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Set of label tags associated with the trust config.
38
42
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
@@ -45,6 +49,8 @@ class TrustConfigArgs:
45
49
  Structure is documented below.
46
50
  """
47
51
  pulumi.set(__self__, "location", location)
52
+ if allowlisted_certificates is not None:
53
+ pulumi.set(__self__, "allowlisted_certificates", allowlisted_certificates)
48
54
  if description is not None:
49
55
  pulumi.set(__self__, "description", description)
50
56
  if labels is not None:
@@ -71,6 +77,20 @@ class TrustConfigArgs:
71
77
  def location(self, value: pulumi.Input[str]):
72
78
  pulumi.set(self, "location", value)
73
79
 
80
+ @property
81
+ @pulumi.getter(name="allowlistedCertificates")
82
+ def allowlisted_certificates(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['TrustConfigAllowlistedCertificateArgs']]]]:
83
+ """
84
+ Allowlisted PEM-encoded certificates. A certificate matching an allowlisted certificate is always considered valid as long as
85
+ the certificate is parseable, proof of private key possession is established, and constraints on the certificate's SAN field are met.
86
+ Structure is documented below.
87
+ """
88
+ return pulumi.get(self, "allowlisted_certificates")
89
+
90
+ @allowlisted_certificates.setter
91
+ def allowlisted_certificates(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['TrustConfigAllowlistedCertificateArgs']]]]):
92
+ pulumi.set(self, "allowlisted_certificates", value)
93
+
74
94
  @property
75
95
  @pulumi.getter
76
96
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -140,6 +160,7 @@ class TrustConfigArgs:
140
160
  @pulumi.input_type
141
161
  class _TrustConfigState:
142
162
  def __init__(__self__, *,
163
+ allowlisted_certificates: Optional[pulumi.Input[Sequence[pulumi.Input['TrustConfigAllowlistedCertificateArgs']]]] = None,
143
164
  create_time: Optional[pulumi.Input[str]] = None,
144
165
  description: Optional[pulumi.Input[str]] = None,
145
166
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
@@ -152,6 +173,9 @@ class _TrustConfigState:
152
173
  update_time: Optional[pulumi.Input[str]] = None):
153
174
  """
154
175
  Input properties used for looking up and filtering TrustConfig resources.
176
+ :param pulumi.Input[Sequence[pulumi.Input['TrustConfigAllowlistedCertificateArgs']]] allowlisted_certificates: Allowlisted PEM-encoded certificates. A certificate matching an allowlisted certificate is always considered valid as long as
177
+ the certificate is parseable, proof of private key possession is established, and constraints on the certificate's SAN field are met.
178
+ Structure is documented below.
155
179
  :param pulumi.Input[str] create_time: The creation timestamp of a TrustConfig.
156
180
  A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
157
181
  Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
@@ -176,6 +200,8 @@ class _TrustConfigState:
176
200
  A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
177
201
  Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
178
202
  """
203
+ if allowlisted_certificates is not None:
204
+ pulumi.set(__self__, "allowlisted_certificates", allowlisted_certificates)
179
205
  if create_time is not None:
180
206
  pulumi.set(__self__, "create_time", create_time)
181
207
  if description is not None:
@@ -197,6 +223,20 @@ class _TrustConfigState:
197
223
  if update_time is not None:
198
224
  pulumi.set(__self__, "update_time", update_time)
199
225
 
226
+ @property
227
+ @pulumi.getter(name="allowlistedCertificates")
228
+ def allowlisted_certificates(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['TrustConfigAllowlistedCertificateArgs']]]]:
229
+ """
230
+ Allowlisted PEM-encoded certificates. A certificate matching an allowlisted certificate is always considered valid as long as
231
+ the certificate is parseable, proof of private key possession is established, and constraints on the certificate's SAN field are met.
232
+ Structure is documented below.
233
+ """
234
+ return pulumi.get(self, "allowlisted_certificates")
235
+
236
+ @allowlisted_certificates.setter
237
+ def allowlisted_certificates(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['TrustConfigAllowlistedCertificateArgs']]]]):
238
+ pulumi.set(self, "allowlisted_certificates", value)
239
+
200
240
  @property
201
241
  @pulumi.getter(name="createTime")
202
242
  def create_time(self) -> Optional[pulumi.Input[str]]:
@@ -336,6 +376,7 @@ class TrustConfig(pulumi.CustomResource):
336
376
  def __init__(__self__,
337
377
  resource_name: str,
338
378
  opts: Optional[pulumi.ResourceOptions] = None,
379
+ allowlisted_certificates: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TrustConfigAllowlistedCertificateArgs', 'TrustConfigAllowlistedCertificateArgsDict']]]]] = None,
339
380
  description: Optional[pulumi.Input[str]] = None,
340
381
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
341
382
  location: Optional[pulumi.Input[str]] = None,
@@ -377,6 +418,29 @@ class TrustConfig(pulumi.CustomResource):
377
418
  "foo": "bar",
378
419
  })
379
420
  ```
421
+ ### Certificate Manager Trust Config Allowlisted Certificates
422
+
423
+ ```python
424
+ import pulumi
425
+ import pulumi_gcp as gcp
426
+ import pulumi_std as std
427
+
428
+ default = gcp.certificatemanager.TrustConfig("default",
429
+ name="trust-config",
430
+ description="A sample trust config resource with allowlisted certificates",
431
+ location="global",
432
+ allowlisted_certificates=[
433
+ {
434
+ "pemCertificate": std.file(input="test-fixtures/cert.pem").result,
435
+ },
436
+ {
437
+ "pemCertificate": std.file(input="test-fixtures/cert2.pem").result,
438
+ },
439
+ ],
440
+ labels={
441
+ "foo": "bar",
442
+ })
443
+ ```
380
444
 
381
445
  ## Import
382
446
 
@@ -404,6 +468,9 @@ class TrustConfig(pulumi.CustomResource):
404
468
 
405
469
  :param str resource_name: The name of the resource.
406
470
  :param pulumi.ResourceOptions opts: Options for the resource.
471
+ :param pulumi.Input[Sequence[pulumi.Input[Union['TrustConfigAllowlistedCertificateArgs', 'TrustConfigAllowlistedCertificateArgsDict']]]] allowlisted_certificates: Allowlisted PEM-encoded certificates. A certificate matching an allowlisted certificate is always considered valid as long as
472
+ the certificate is parseable, proof of private key possession is established, and constraints on the certificate's SAN field are met.
473
+ Structure is documented below.
407
474
  :param pulumi.Input[str] description: One or more paragraphs of text description of a trust config.
408
475
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Set of label tags associated with the trust config.
409
476
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
@@ -459,6 +526,29 @@ class TrustConfig(pulumi.CustomResource):
459
526
  "foo": "bar",
460
527
  })
461
528
  ```
529
+ ### Certificate Manager Trust Config Allowlisted Certificates
530
+
531
+ ```python
532
+ import pulumi
533
+ import pulumi_gcp as gcp
534
+ import pulumi_std as std
535
+
536
+ default = gcp.certificatemanager.TrustConfig("default",
537
+ name="trust-config",
538
+ description="A sample trust config resource with allowlisted certificates",
539
+ location="global",
540
+ allowlisted_certificates=[
541
+ {
542
+ "pemCertificate": std.file(input="test-fixtures/cert.pem").result,
543
+ },
544
+ {
545
+ "pemCertificate": std.file(input="test-fixtures/cert2.pem").result,
546
+ },
547
+ ],
548
+ labels={
549
+ "foo": "bar",
550
+ })
551
+ ```
462
552
 
463
553
  ## Import
464
554
 
@@ -499,6 +589,7 @@ class TrustConfig(pulumi.CustomResource):
499
589
  def _internal_init(__self__,
500
590
  resource_name: str,
501
591
  opts: Optional[pulumi.ResourceOptions] = None,
592
+ allowlisted_certificates: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TrustConfigAllowlistedCertificateArgs', 'TrustConfigAllowlistedCertificateArgsDict']]]]] = None,
502
593
  description: Optional[pulumi.Input[str]] = None,
503
594
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
504
595
  location: Optional[pulumi.Input[str]] = None,
@@ -514,6 +605,7 @@ class TrustConfig(pulumi.CustomResource):
514
605
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
515
606
  __props__ = TrustConfigArgs.__new__(TrustConfigArgs)
516
607
 
608
+ __props__.__dict__["allowlisted_certificates"] = allowlisted_certificates
517
609
  __props__.__dict__["description"] = description
518
610
  __props__.__dict__["labels"] = labels
519
611
  if location is None and not opts.urn:
@@ -538,6 +630,7 @@ class TrustConfig(pulumi.CustomResource):
538
630
  def get(resource_name: str,
539
631
  id: pulumi.Input[str],
540
632
  opts: Optional[pulumi.ResourceOptions] = None,
633
+ allowlisted_certificates: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TrustConfigAllowlistedCertificateArgs', 'TrustConfigAllowlistedCertificateArgsDict']]]]] = None,
541
634
  create_time: Optional[pulumi.Input[str]] = None,
542
635
  description: Optional[pulumi.Input[str]] = None,
543
636
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
@@ -555,6 +648,9 @@ class TrustConfig(pulumi.CustomResource):
555
648
  :param str resource_name: The unique name of the resulting resource.
556
649
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
557
650
  :param pulumi.ResourceOptions opts: Options for the resource.
651
+ :param pulumi.Input[Sequence[pulumi.Input[Union['TrustConfigAllowlistedCertificateArgs', 'TrustConfigAllowlistedCertificateArgsDict']]]] allowlisted_certificates: Allowlisted PEM-encoded certificates. A certificate matching an allowlisted certificate is always considered valid as long as
652
+ the certificate is parseable, proof of private key possession is established, and constraints on the certificate's SAN field are met.
653
+ Structure is documented below.
558
654
  :param pulumi.Input[str] create_time: The creation timestamp of a TrustConfig.
559
655
  A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
560
656
  Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
@@ -583,6 +679,7 @@ class TrustConfig(pulumi.CustomResource):
583
679
 
584
680
  __props__ = _TrustConfigState.__new__(_TrustConfigState)
585
681
 
682
+ __props__.__dict__["allowlisted_certificates"] = allowlisted_certificates
586
683
  __props__.__dict__["create_time"] = create_time
587
684
  __props__.__dict__["description"] = description
588
685
  __props__.__dict__["effective_labels"] = effective_labels
@@ -595,6 +692,16 @@ class TrustConfig(pulumi.CustomResource):
595
692
  __props__.__dict__["update_time"] = update_time
596
693
  return TrustConfig(resource_name, opts=opts, __props__=__props__)
597
694
 
695
+ @property
696
+ @pulumi.getter(name="allowlistedCertificates")
697
+ def allowlisted_certificates(self) -> pulumi.Output[Optional[Sequence['outputs.TrustConfigAllowlistedCertificate']]]:
698
+ """
699
+ Allowlisted PEM-encoded certificates. A certificate matching an allowlisted certificate is always considered valid as long as
700
+ the certificate is parseable, proof of private key possession is established, and constraints on the certificate's SAN field are met.
701
+ Structure is documented below.
702
+ """
703
+ return pulumi.get(self, "allowlisted_certificates")
704
+
598
705
  @property
599
706
  @pulumi.getter(name="createTime")
600
707
  def create_time(self) -> pulumi.Output[str]:
@@ -39654,8 +39654,7 @@ if not MYPY:
39654
39654
  """
39655
39655
  Time within the window to start the operations.
39656
39656
  It must be in an hourly format "HH:MM",
39657
- where HH : [00-23] and MM : [00] GMT.
39658
- eg: 21:00
39657
+ where HH : [00-23] and MM : [00] GMT. eg: 21:00
39659
39658
  """
39660
39659
  elif False:
39661
39660
  ResourcePolicySnapshotSchedulePolicyScheduleHourlyScheduleArgsDict: TypeAlias = Mapping[str, Any]
@@ -39669,8 +39668,7 @@ class ResourcePolicySnapshotSchedulePolicyScheduleHourlyScheduleArgs:
39669
39668
  :param pulumi.Input[int] hours_in_cycle: The number of hours between snapshots.
39670
39669
  :param pulumi.Input[str] start_time: Time within the window to start the operations.
39671
39670
  It must be in an hourly format "HH:MM",
39672
- where HH : [00-23] and MM : [00] GMT.
39673
- eg: 21:00
39671
+ where HH : [00-23] and MM : [00] GMT. eg: 21:00
39674
39672
  """
39675
39673
  pulumi.set(__self__, "hours_in_cycle", hours_in_cycle)
39676
39674
  pulumi.set(__self__, "start_time", start_time)
@@ -39693,8 +39691,7 @@ class ResourcePolicySnapshotSchedulePolicyScheduleHourlyScheduleArgs:
39693
39691
  """
39694
39692
  Time within the window to start the operations.
39695
39693
  It must be in an hourly format "HH:MM",
39696
- where HH : [00-23] and MM : [00] GMT.
39697
- eg: 21:00
39694
+ where HH : [00-23] and MM : [00] GMT. eg: 21:00
39698
39695
  """
39699
39696
  return pulumi.get(self, "start_time")
39700
39697
 
@@ -170,8 +170,8 @@ class CaExternalAccountKey(pulumi.CustomResource):
170
170
  * [API documentation](https://cloud.google.com/certificate-manager/docs/reference/public-ca/rest/v1/projects.locations.externalAccountKeys/create)
171
171
  * How-to Guides
172
172
  * [Official Documentation](https://cloud.google.com/certificate-manager/docs/public-ca)
173
- * [Request EAB key ID and HMAC](https://cloud.google.com/certificate-manager/docs/public-ca-tutorial#request-key-hmac)
174
173
  * [Request Certificate Using Public CA](https://cloud.google.com/certificate-manager/docs/public-ca-tutorial)
174
+ * [Request EAB key ID and HMAC](https://cloud.google.com/certificate-manager/docs/public-ca-tutorial#request-key-hmac)
175
175
 
176
176
  > **Warning:** This resource is create-only and could not be read from the API.
177
177
  On delete, the resource would be removed from the state.
@@ -214,8 +214,8 @@ class CaExternalAccountKey(pulumi.CustomResource):
214
214
  * [API documentation](https://cloud.google.com/certificate-manager/docs/reference/public-ca/rest/v1/projects.locations.externalAccountKeys/create)
215
215
  * How-to Guides
216
216
  * [Official Documentation](https://cloud.google.com/certificate-manager/docs/public-ca)
217
- * [Request EAB key ID and HMAC](https://cloud.google.com/certificate-manager/docs/public-ca-tutorial#request-key-hmac)
218
217
  * [Request Certificate Using Public CA](https://cloud.google.com/certificate-manager/docs/public-ca-tutorial)
218
+ * [Request EAB key ID and HMAC](https://cloud.google.com/certificate-manager/docs/public-ca-tutorial#request-key-hmac)
219
219
 
220
220
  > **Warning:** This resource is create-only and could not be read from the API.
221
221
  On delete, the resource would be removed from the state.
@@ -27,7 +27,7 @@ class GetHealthCheckResult:
27
27
  """
28
28
  A collection of values returned by getHealthCheck.
29
29
  """
30
- def __init__(__self__, check_interval_sec=None, creation_timestamp=None, description=None, grpc_health_checks=None, healthy_threshold=None, http2_health_checks=None, http_health_checks=None, https_health_checks=None, id=None, log_configs=None, name=None, project=None, self_link=None, ssl_health_checks=None, tcp_health_checks=None, timeout_sec=None, type=None, unhealthy_threshold=None):
30
+ def __init__(__self__, check_interval_sec=None, creation_timestamp=None, description=None, grpc_health_checks=None, healthy_threshold=None, http2_health_checks=None, http_health_checks=None, https_health_checks=None, id=None, log_configs=None, name=None, project=None, self_link=None, source_regions=None, ssl_health_checks=None, tcp_health_checks=None, timeout_sec=None, type=None, unhealthy_threshold=None):
31
31
  if check_interval_sec and not isinstance(check_interval_sec, int):
32
32
  raise TypeError("Expected argument 'check_interval_sec' to be a int")
33
33
  pulumi.set(__self__, "check_interval_sec", check_interval_sec)
@@ -67,6 +67,9 @@ class GetHealthCheckResult:
67
67
  if self_link and not isinstance(self_link, str):
68
68
  raise TypeError("Expected argument 'self_link' to be a str")
69
69
  pulumi.set(__self__, "self_link", self_link)
70
+ if source_regions and not isinstance(source_regions, list):
71
+ raise TypeError("Expected argument 'source_regions' to be a list")
72
+ pulumi.set(__self__, "source_regions", source_regions)
70
73
  if ssl_health_checks and not isinstance(ssl_health_checks, list):
71
74
  raise TypeError("Expected argument 'ssl_health_checks' to be a list")
72
75
  pulumi.set(__self__, "ssl_health_checks", ssl_health_checks)
@@ -151,6 +154,11 @@ class GetHealthCheckResult:
151
154
  def self_link(self) -> str:
152
155
  return pulumi.get(self, "self_link")
153
156
 
157
+ @property
158
+ @pulumi.getter(name="sourceRegions")
159
+ def source_regions(self) -> Sequence[str]:
160
+ return pulumi.get(self, "source_regions")
161
+
154
162
  @property
155
163
  @pulumi.getter(name="sslHealthChecks")
156
164
  def ssl_health_checks(self) -> Sequence['outputs.GetHealthCheckSslHealthCheckResult']:
@@ -196,6 +204,7 @@ class AwaitableGetHealthCheckResult(GetHealthCheckResult):
196
204
  name=self.name,
197
205
  project=self.project,
198
206
  self_link=self.self_link,
207
+ source_regions=self.source_regions,
199
208
  ssl_health_checks=self.ssl_health_checks,
200
209
  tcp_health_checks=self.tcp_health_checks,
201
210
  timeout_sec=self.timeout_sec,
@@ -238,6 +247,7 @@ def get_health_check(name: Optional[str] = None,
238
247
  name=pulumi.get(__ret__, 'name'),
239
248
  project=pulumi.get(__ret__, 'project'),
240
249
  self_link=pulumi.get(__ret__, 'self_link'),
250
+ source_regions=pulumi.get(__ret__, 'source_regions'),
241
251
  ssl_health_checks=pulumi.get(__ret__, 'ssl_health_checks'),
242
252
  tcp_health_checks=pulumi.get(__ret__, 'tcp_health_checks'),
243
253
  timeout_sec=pulumi.get(__ret__, 'timeout_sec'),
@@ -270,6 +270,7 @@ class _GlobalAddressState:
270
270
  Possible values are: `EXTERNAL`, `INTERNAL`.
271
271
  :param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
272
272
  :param pulumi.Input[str] description: An optional description of this resource.
273
+ :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.
273
274
  :param pulumi.Input[str] ip_version: The IP Version that will be used by this address. The default value is `IPV4`.
274
275
  Possible values are: `IPV4`, `IPV6`.
275
276
  :param pulumi.Input[str] label_fingerprint: The fingerprint used for optimistic locking of this resource. Used internally during updates.
@@ -297,7 +298,8 @@ class _GlobalAddressState:
297
298
  when purpose=PRIVATE_SERVICE_CONNECT
298
299
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
299
300
  If it is not provided, the provider project is used.
300
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource and default labels configured on the provider.
301
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
302
+ and default labels configured on the provider.
301
303
  :param pulumi.Input[str] purpose: The purpose of the resource. Possible values include:
302
304
  * VPC_PEERING - for peer networks
303
305
  * PRIVATE_SERVICE_CONNECT - for Private Service Connect networks
@@ -391,6 +393,9 @@ class _GlobalAddressState:
391
393
  @property
392
394
  @pulumi.getter(name="effectiveLabels")
393
395
  def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
396
+ """
397
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
398
+ """
394
399
  return pulumi.get(self, "effective_labels")
395
400
 
396
401
  @effective_labels.setter
@@ -505,7 +510,8 @@ class _GlobalAddressState:
505
510
  @pulumi.getter(name="pulumiLabels")
506
511
  def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
507
512
  """
508
- The combination of labels configured directly on the resource and default labels configured on the provider.
513
+ The combination of labels configured directly on the resource
514
+ and default labels configured on the provider.
509
515
  """
510
516
  return pulumi.get(self, "pulumi_labels")
511
517
 
@@ -818,6 +824,7 @@ class GlobalAddress(pulumi.CustomResource):
818
824
  Possible values are: `EXTERNAL`, `INTERNAL`.
819
825
  :param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
820
826
  :param pulumi.Input[str] description: An optional description of this resource.
827
+ :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.
821
828
  :param pulumi.Input[str] ip_version: The IP Version that will be used by this address. The default value is `IPV4`.
822
829
  Possible values are: `IPV4`, `IPV6`.
823
830
  :param pulumi.Input[str] label_fingerprint: The fingerprint used for optimistic locking of this resource. Used internally during updates.
@@ -845,7 +852,8 @@ class GlobalAddress(pulumi.CustomResource):
845
852
  when purpose=PRIVATE_SERVICE_CONNECT
846
853
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
847
854
  If it is not provided, the provider project is used.
848
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource and default labels configured on the provider.
855
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
856
+ and default labels configured on the provider.
849
857
  :param pulumi.Input[str] purpose: The purpose of the resource. Possible values include:
850
858
  * VPC_PEERING - for peer networks
851
859
  * PRIVATE_SERVICE_CONNECT - for Private Service Connect networks
@@ -913,6 +921,9 @@ class GlobalAddress(pulumi.CustomResource):
913
921
  @property
914
922
  @pulumi.getter(name="effectiveLabels")
915
923
  def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
924
+ """
925
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
926
+ """
916
927
  return pulumi.get(self, "effective_labels")
917
928
 
918
929
  @property
@@ -995,7 +1006,8 @@ class GlobalAddress(pulumi.CustomResource):
995
1006
  @pulumi.getter(name="pulumiLabels")
996
1007
  def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
997
1008
  """
998
- The combination of labels configured directly on the resource and default labels configured on the provider.
1009
+ The combination of labels configured directly on the resource
1010
+ and default labels configured on the provider.
999
1011
  """
1000
1012
  return pulumi.get(self, "pulumi_labels")
1001
1013
 
@@ -1174,8 +1174,7 @@ class GlobalForwardingRule(pulumi.CustomResource):
1174
1174
  balancing. Global forwarding rules can only be used for HTTP load
1175
1175
  balancing.
1176
1176
 
1177
- For more information, see
1178
- https://cloud.google.com/compute/docs/load-balancing/http/
1177
+ For more information, see https://cloud.google.com/compute/docs/load-balancing/http/
1179
1178
 
1180
1179
  ## Example Usage
1181
1180
 
@@ -1687,8 +1686,7 @@ class GlobalForwardingRule(pulumi.CustomResource):
1687
1686
  balancing. Global forwarding rules can only be used for HTTP load
1688
1687
  balancing.
1689
1688
 
1690
- For more information, see
1691
- https://cloud.google.com/compute/docs/load-balancing/http/
1689
+ For more information, see https://cloud.google.com/compute/docs/load-balancing/http/
1692
1690
 
1693
1691
  ## Example Usage
1694
1692
 
@@ -31,6 +31,7 @@ class HealthCheckArgs:
31
31
  log_config: Optional[pulumi.Input['HealthCheckLogConfigArgs']] = None,
32
32
  name: Optional[pulumi.Input[str]] = None,
33
33
  project: Optional[pulumi.Input[str]] = None,
34
+ source_regions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
34
35
  ssl_health_check: Optional[pulumi.Input['HealthCheckSslHealthCheckArgs']] = None,
35
36
  tcp_health_check: Optional[pulumi.Input['HealthCheckTcpHealthCheckArgs']] = None,
36
37
  timeout_sec: Optional[pulumi.Input[int]] = None,
@@ -65,6 +66,18 @@ class HealthCheckArgs:
65
66
  - - -
66
67
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
67
68
  If it is not provided, the provider project is used.
69
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] source_regions: The list of cloud regions from which health checks are performed. If
70
+ any regions are specified, then exactly 3 regions should be specified.
71
+ The region names must be valid names of Google Cloud regions. This can
72
+ only be set for global health check. If this list is non-empty, then
73
+ there are restrictions on what other health check fields are supported
74
+ and what other resources can use this health check:
75
+ * SSL, HTTP2, and GRPC protocols are not supported.
76
+ * The TCP request field is not supported.
77
+ * The proxyHeader field for HTTP, HTTPS, and TCP is not supported.
78
+ * The checkIntervalSec field must be at least 30.
79
+ * The health check cannot be used with BackendService nor with managed
80
+ instance group auto-healing.
68
81
  :param pulumi.Input['HealthCheckSslHealthCheckArgs'] ssl_health_check: A nested object resource
69
82
  Structure is documented below.
70
83
  :param pulumi.Input['HealthCheckTcpHealthCheckArgs'] tcp_health_check: A nested object resource
@@ -95,6 +108,8 @@ class HealthCheckArgs:
95
108
  pulumi.set(__self__, "name", name)
96
109
  if project is not None:
97
110
  pulumi.set(__self__, "project", project)
111
+ if source_regions is not None:
112
+ pulumi.set(__self__, "source_regions", source_regions)
98
113
  if ssl_health_check is not None:
99
114
  pulumi.set(__self__, "ssl_health_check", ssl_health_check)
100
115
  if tcp_health_check is not None:
@@ -242,6 +257,29 @@ class HealthCheckArgs:
242
257
  def project(self, value: Optional[pulumi.Input[str]]):
243
258
  pulumi.set(self, "project", value)
244
259
 
260
+ @property
261
+ @pulumi.getter(name="sourceRegions")
262
+ def source_regions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
263
+ """
264
+ The list of cloud regions from which health checks are performed. If
265
+ any regions are specified, then exactly 3 regions should be specified.
266
+ The region names must be valid names of Google Cloud regions. This can
267
+ only be set for global health check. If this list is non-empty, then
268
+ there are restrictions on what other health check fields are supported
269
+ and what other resources can use this health check:
270
+ * SSL, HTTP2, and GRPC protocols are not supported.
271
+ * The TCP request field is not supported.
272
+ * The proxyHeader field for HTTP, HTTPS, and TCP is not supported.
273
+ * The checkIntervalSec field must be at least 30.
274
+ * The health check cannot be used with BackendService nor with managed
275
+ instance group auto-healing.
276
+ """
277
+ return pulumi.get(self, "source_regions")
278
+
279
+ @source_regions.setter
280
+ def source_regions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
281
+ pulumi.set(self, "source_regions", value)
282
+
245
283
  @property
246
284
  @pulumi.getter(name="sslHealthCheck")
247
285
  def ssl_health_check(self) -> Optional[pulumi.Input['HealthCheckSslHealthCheckArgs']]:
@@ -311,6 +349,7 @@ class _HealthCheckState:
311
349
  name: Optional[pulumi.Input[str]] = None,
312
350
  project: Optional[pulumi.Input[str]] = None,
313
351
  self_link: Optional[pulumi.Input[str]] = None,
352
+ source_regions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
314
353
  ssl_health_check: Optional[pulumi.Input['HealthCheckSslHealthCheckArgs']] = None,
315
354
  tcp_health_check: Optional[pulumi.Input['HealthCheckTcpHealthCheckArgs']] = None,
316
355
  timeout_sec: Optional[pulumi.Input[int]] = None,
@@ -348,6 +387,18 @@ class _HealthCheckState:
348
387
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
349
388
  If it is not provided, the provider project is used.
350
389
  :param pulumi.Input[str] self_link: The URI of the created resource.
390
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] source_regions: The list of cloud regions from which health checks are performed. If
391
+ any regions are specified, then exactly 3 regions should be specified.
392
+ The region names must be valid names of Google Cloud regions. This can
393
+ only be set for global health check. If this list is non-empty, then
394
+ there are restrictions on what other health check fields are supported
395
+ and what other resources can use this health check:
396
+ * SSL, HTTP2, and GRPC protocols are not supported.
397
+ * The TCP request field is not supported.
398
+ * The proxyHeader field for HTTP, HTTPS, and TCP is not supported.
399
+ * The checkIntervalSec field must be at least 30.
400
+ * The health check cannot be used with BackendService nor with managed
401
+ instance group auto-healing.
351
402
  :param pulumi.Input['HealthCheckSslHealthCheckArgs'] ssl_health_check: A nested object resource
352
403
  Structure is documented below.
353
404
  :param pulumi.Input['HealthCheckTcpHealthCheckArgs'] tcp_health_check: A nested object resource
@@ -383,6 +434,8 @@ class _HealthCheckState:
383
434
  pulumi.set(__self__, "project", project)
384
435
  if self_link is not None:
385
436
  pulumi.set(__self__, "self_link", self_link)
437
+ if source_regions is not None:
438
+ pulumi.set(__self__, "source_regions", source_regions)
386
439
  if ssl_health_check is not None:
387
440
  pulumi.set(__self__, "ssl_health_check", ssl_health_check)
388
441
  if tcp_health_check is not None:
@@ -556,6 +609,29 @@ class _HealthCheckState:
556
609
  def self_link(self, value: Optional[pulumi.Input[str]]):
557
610
  pulumi.set(self, "self_link", value)
558
611
 
612
+ @property
613
+ @pulumi.getter(name="sourceRegions")
614
+ def source_regions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
615
+ """
616
+ The list of cloud regions from which health checks are performed. If
617
+ any regions are specified, then exactly 3 regions should be specified.
618
+ The region names must be valid names of Google Cloud regions. This can
619
+ only be set for global health check. If this list is non-empty, then
620
+ there are restrictions on what other health check fields are supported
621
+ and what other resources can use this health check:
622
+ * SSL, HTTP2, and GRPC protocols are not supported.
623
+ * The TCP request field is not supported.
624
+ * The proxyHeader field for HTTP, HTTPS, and TCP is not supported.
625
+ * The checkIntervalSec field must be at least 30.
626
+ * The health check cannot be used with BackendService nor with managed
627
+ instance group auto-healing.
628
+ """
629
+ return pulumi.get(self, "source_regions")
630
+
631
+ @source_regions.setter
632
+ def source_regions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
633
+ pulumi.set(self, "source_regions", value)
634
+
559
635
  @property
560
636
  @pulumi.getter(name="sslHealthCheck")
561
637
  def ssl_health_check(self) -> Optional[pulumi.Input['HealthCheckSslHealthCheckArgs']]:
@@ -637,6 +713,7 @@ class HealthCheck(pulumi.CustomResource):
637
713
  log_config: Optional[pulumi.Input[Union['HealthCheckLogConfigArgs', 'HealthCheckLogConfigArgsDict']]] = None,
638
714
  name: Optional[pulumi.Input[str]] = None,
639
715
  project: Optional[pulumi.Input[str]] = None,
716
+ source_regions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
640
717
  ssl_health_check: Optional[pulumi.Input[Union['HealthCheckSslHealthCheckArgs', 'HealthCheckSslHealthCheckArgsDict']]] = None,
641
718
  tcp_health_check: Optional[pulumi.Input[Union['HealthCheckTcpHealthCheckArgs', 'HealthCheckTcpHealthCheckArgsDict']]] = None,
642
719
  timeout_sec: Optional[pulumi.Input[int]] = None,
@@ -947,6 +1024,18 @@ class HealthCheck(pulumi.CustomResource):
947
1024
  - - -
948
1025
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
949
1026
  If it is not provided, the provider project is used.
1027
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] source_regions: The list of cloud regions from which health checks are performed. If
1028
+ any regions are specified, then exactly 3 regions should be specified.
1029
+ The region names must be valid names of Google Cloud regions. This can
1030
+ only be set for global health check. If this list is non-empty, then
1031
+ there are restrictions on what other health check fields are supported
1032
+ and what other resources can use this health check:
1033
+ * SSL, HTTP2, and GRPC protocols are not supported.
1034
+ * The TCP request field is not supported.
1035
+ * The proxyHeader field for HTTP, HTTPS, and TCP is not supported.
1036
+ * The checkIntervalSec field must be at least 30.
1037
+ * The health check cannot be used with BackendService nor with managed
1038
+ instance group auto-healing.
950
1039
  :param pulumi.Input[Union['HealthCheckSslHealthCheckArgs', 'HealthCheckSslHealthCheckArgsDict']] ssl_health_check: A nested object resource
951
1040
  Structure is documented below.
952
1041
  :param pulumi.Input[Union['HealthCheckTcpHealthCheckArgs', 'HealthCheckTcpHealthCheckArgsDict']] tcp_health_check: A nested object resource
@@ -1263,6 +1352,7 @@ class HealthCheck(pulumi.CustomResource):
1263
1352
  log_config: Optional[pulumi.Input[Union['HealthCheckLogConfigArgs', 'HealthCheckLogConfigArgsDict']]] = None,
1264
1353
  name: Optional[pulumi.Input[str]] = None,
1265
1354
  project: Optional[pulumi.Input[str]] = None,
1355
+ source_regions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1266
1356
  ssl_health_check: Optional[pulumi.Input[Union['HealthCheckSslHealthCheckArgs', 'HealthCheckSslHealthCheckArgsDict']]] = None,
1267
1357
  tcp_health_check: Optional[pulumi.Input[Union['HealthCheckTcpHealthCheckArgs', 'HealthCheckTcpHealthCheckArgsDict']]] = None,
1268
1358
  timeout_sec: Optional[pulumi.Input[int]] = None,
@@ -1286,6 +1376,7 @@ class HealthCheck(pulumi.CustomResource):
1286
1376
  __props__.__dict__["log_config"] = log_config
1287
1377
  __props__.__dict__["name"] = name
1288
1378
  __props__.__dict__["project"] = project
1379
+ __props__.__dict__["source_regions"] = source_regions
1289
1380
  __props__.__dict__["ssl_health_check"] = ssl_health_check
1290
1381
  __props__.__dict__["tcp_health_check"] = tcp_health_check
1291
1382
  __props__.__dict__["timeout_sec"] = timeout_sec
@@ -1315,6 +1406,7 @@ class HealthCheck(pulumi.CustomResource):
1315
1406
  name: Optional[pulumi.Input[str]] = None,
1316
1407
  project: Optional[pulumi.Input[str]] = None,
1317
1408
  self_link: Optional[pulumi.Input[str]] = None,
1409
+ source_regions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1318
1410
  ssl_health_check: Optional[pulumi.Input[Union['HealthCheckSslHealthCheckArgs', 'HealthCheckSslHealthCheckArgsDict']]] = None,
1319
1411
  tcp_health_check: Optional[pulumi.Input[Union['HealthCheckTcpHealthCheckArgs', 'HealthCheckTcpHealthCheckArgsDict']]] = None,
1320
1412
  timeout_sec: Optional[pulumi.Input[int]] = None,
@@ -1357,6 +1449,18 @@ class HealthCheck(pulumi.CustomResource):
1357
1449
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
1358
1450
  If it is not provided, the provider project is used.
1359
1451
  :param pulumi.Input[str] self_link: The URI of the created resource.
1452
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] source_regions: The list of cloud regions from which health checks are performed. If
1453
+ any regions are specified, then exactly 3 regions should be specified.
1454
+ The region names must be valid names of Google Cloud regions. This can
1455
+ only be set for global health check. If this list is non-empty, then
1456
+ there are restrictions on what other health check fields are supported
1457
+ and what other resources can use this health check:
1458
+ * SSL, HTTP2, and GRPC protocols are not supported.
1459
+ * The TCP request field is not supported.
1460
+ * The proxyHeader field for HTTP, HTTPS, and TCP is not supported.
1461
+ * The checkIntervalSec field must be at least 30.
1462
+ * The health check cannot be used with BackendService nor with managed
1463
+ instance group auto-healing.
1360
1464
  :param pulumi.Input[Union['HealthCheckSslHealthCheckArgs', 'HealthCheckSslHealthCheckArgsDict']] ssl_health_check: A nested object resource
1361
1465
  Structure is documented below.
1362
1466
  :param pulumi.Input[Union['HealthCheckTcpHealthCheckArgs', 'HealthCheckTcpHealthCheckArgsDict']] tcp_health_check: A nested object resource
@@ -1384,6 +1488,7 @@ class HealthCheck(pulumi.CustomResource):
1384
1488
  __props__.__dict__["name"] = name
1385
1489
  __props__.__dict__["project"] = project
1386
1490
  __props__.__dict__["self_link"] = self_link
1491
+ __props__.__dict__["source_regions"] = source_regions
1387
1492
  __props__.__dict__["ssl_health_check"] = ssl_health_check
1388
1493
  __props__.__dict__["tcp_health_check"] = tcp_health_check
1389
1494
  __props__.__dict__["timeout_sec"] = timeout_sec
@@ -1505,6 +1610,25 @@ class HealthCheck(pulumi.CustomResource):
1505
1610
  """
1506
1611
  return pulumi.get(self, "self_link")
1507
1612
 
1613
+ @property
1614
+ @pulumi.getter(name="sourceRegions")
1615
+ def source_regions(self) -> pulumi.Output[Optional[Sequence[str]]]:
1616
+ """
1617
+ The list of cloud regions from which health checks are performed. If
1618
+ any regions are specified, then exactly 3 regions should be specified.
1619
+ The region names must be valid names of Google Cloud regions. This can
1620
+ only be set for global health check. If this list is non-empty, then
1621
+ there are restrictions on what other health check fields are supported
1622
+ and what other resources can use this health check:
1623
+ * SSL, HTTP2, and GRPC protocols are not supported.
1624
+ * The TCP request field is not supported.
1625
+ * The proxyHeader field for HTTP, HTTPS, and TCP is not supported.
1626
+ * The checkIntervalSec field must be at least 30.
1627
+ * The health check cannot be used with BackendService nor with managed
1628
+ instance group auto-healing.
1629
+ """
1630
+ return pulumi.get(self, "source_regions")
1631
+
1508
1632
  @property
1509
1633
  @pulumi.getter(name="sslHealthCheck")
1510
1634
  def ssl_health_check(self) -> pulumi.Output[Optional['outputs.HealthCheckSslHealthCheck']]: