pulumi-gcp 7.39.0a1726118759__py3-none-any.whl → 8.0.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 (132) hide show
  1. pulumi_gcp/__init__.py +32 -19
  2. pulumi_gcp/accesscontextmanager/access_policy.py +4 -2
  3. pulumi_gcp/activedirectory/domain.py +38 -2
  4. pulumi_gcp/activedirectory/domain_trust.py +0 -30
  5. pulumi_gcp/activedirectory/peering.py +0 -72
  6. pulumi_gcp/alloydb/cluster.py +12 -200
  7. pulumi_gcp/alloydb/instance.py +13 -5
  8. pulumi_gcp/alloydb/user.py +14 -6
  9. pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +4 -2
  10. pulumi_gcp/apigee/sync_authorization.py +4 -2
  11. pulumi_gcp/apigee/target_server.py +4 -2
  12. pulumi_gcp/appengine/firewall_rule.py +4 -2
  13. pulumi_gcp/appengine/flexible_app_version.py +4 -2
  14. pulumi_gcp/apphub/service.py +8 -4
  15. pulumi_gcp/apphub/service_project_attachment.py +8 -4
  16. pulumi_gcp/applicationintegration/client.py +0 -154
  17. pulumi_gcp/bigquery/_inputs.py +0 -70
  18. pulumi_gcp/bigquery/iam_binding.py +0 -260
  19. pulumi_gcp/bigquery/iam_member.py +0 -260
  20. pulumi_gcp/bigquery/iam_policy.py +0 -240
  21. pulumi_gcp/bigquery/outputs.py +0 -44
  22. pulumi_gcp/bigquery/reservation.py +0 -84
  23. pulumi_gcp/bigquery/table.py +0 -98
  24. pulumi_gcp/billing/project_info.py +4 -2
  25. pulumi_gcp/cloudasset/folder_feed.py +4 -2
  26. pulumi_gcp/cloudrunv2/_inputs.py +25 -25
  27. pulumi_gcp/cloudrunv2/get_job.py +11 -1
  28. pulumi_gcp/cloudrunv2/get_service.py +11 -1
  29. pulumi_gcp/cloudrunv2/job.py +50 -0
  30. pulumi_gcp/cloudrunv2/outputs.py +26 -26
  31. pulumi_gcp/cloudrunv2/service.py +54 -0
  32. pulumi_gcp/compute/_inputs.py +117 -54
  33. pulumi_gcp/compute/backend_service.py +52 -0
  34. pulumi_gcp/compute/firewall_policy_rule.py +4 -2
  35. pulumi_gcp/compute/forwarding_rule.py +42 -0
  36. pulumi_gcp/compute/get_forwarding_rule.py +11 -1
  37. pulumi_gcp/compute/global_address.py +8 -4
  38. pulumi_gcp/compute/global_forwarding_rule.py +7 -0
  39. pulumi_gcp/compute/instance_template.py +56 -7
  40. pulumi_gcp/compute/managed_ssl_certificate.py +1 -20
  41. pulumi_gcp/compute/manged_ssl_certificate.py +1 -20
  42. pulumi_gcp/compute/network_attachment.py +8 -4
  43. pulumi_gcp/compute/node_group.py +4 -2
  44. pulumi_gcp/compute/organization_security_policy_association.py +4 -2
  45. pulumi_gcp/compute/outputs.py +101 -42
  46. pulumi_gcp/compute/project_cloud_armor_tier.py +4 -2
  47. pulumi_gcp/compute/region_backend_service.py +36 -7
  48. pulumi_gcp/compute/region_instance_template.py +56 -7
  49. pulumi_gcp/compute/region_ssl_certificate.py +49 -7
  50. pulumi_gcp/compute/ssl_certificate.py +49 -7
  51. pulumi_gcp/compute/subnetwork.py +193 -23
  52. pulumi_gcp/config/__init__.pyi +3 -5
  53. pulumi_gcp/config/vars.py +6 -10
  54. pulumi_gcp/container/_inputs.py +19 -41
  55. pulumi_gcp/container/cluster.py +79 -0
  56. pulumi_gcp/container/get_cluster.py +21 -1
  57. pulumi_gcp/container/get_engine_versions.py +8 -2
  58. pulumi_gcp/container/outputs.py +17 -40
  59. pulumi_gcp/diagflow/intent.py +4 -2
  60. pulumi_gcp/edgenetwork/network.py +83 -0
  61. pulumi_gcp/edgenetwork/subnet.py +83 -0
  62. pulumi_gcp/firebase/database_instance.py +2 -0
  63. pulumi_gcp/firebase/hosting_custom_domain.py +4 -2
  64. pulumi_gcp/firebase/hosting_version.py +4 -2
  65. pulumi_gcp/firebase/project.py +2 -0
  66. pulumi_gcp/firestore/document.py +8 -4
  67. pulumi_gcp/folder/access_approval_settings.py +12 -6
  68. pulumi_gcp/gkeonprem/_inputs.py +11 -11
  69. pulumi_gcp/gkeonprem/outputs.py +9 -9
  70. pulumi_gcp/gkeonprem/v_mware_cluster.py +31 -31
  71. pulumi_gcp/gkeonprem/v_mware_node_pool.py +186 -0
  72. pulumi_gcp/iam/access_boundary_policy.py +4 -2
  73. pulumi_gcp/iam/deny_policy.py +4 -2
  74. pulumi_gcp/iap/brand.py +4 -2
  75. pulumi_gcp/iap/client.py +4 -2
  76. pulumi_gcp/identityplatform/__init__.py +0 -1
  77. pulumi_gcp/identityplatform/_inputs.py +0 -396
  78. pulumi_gcp/identityplatform/config.py +2 -0
  79. pulumi_gcp/identityplatform/outputs.py +0 -313
  80. pulumi_gcp/integrationconnectors/managed_zone.py +4 -2
  81. pulumi_gcp/kms/__init__.py +4 -0
  82. pulumi_gcp/kms/_inputs.py +130 -0
  83. pulumi_gcp/kms/autokey_config.py +6 -2
  84. pulumi_gcp/kms/ekm_connection_iam_binding.py +1097 -0
  85. pulumi_gcp/kms/ekm_connection_iam_member.py +1097 -0
  86. pulumi_gcp/kms/ekm_connection_iam_policy.py +916 -0
  87. pulumi_gcp/kms/get_ekm_connection_iam_policy.py +177 -0
  88. pulumi_gcp/kms/key_handle.py +8 -2
  89. pulumi_gcp/kms/outputs.py +76 -0
  90. pulumi_gcp/logging/folder_settings.py +4 -2
  91. pulumi_gcp/monitoring/monitored_project.py +4 -2
  92. pulumi_gcp/networksecurity/firewall_endpoint_association.py +12 -44
  93. pulumi_gcp/networkservices/_inputs.py +23 -0
  94. pulumi_gcp/networkservices/outputs.py +17 -1
  95. pulumi_gcp/networkservices/tcp_route.py +2 -0
  96. pulumi_gcp/organizations/access_approval_settings.py +4 -2
  97. pulumi_gcp/organizations/folder.py +35 -1
  98. pulumi_gcp/organizations/get_client_config.py +14 -1
  99. pulumi_gcp/organizations/get_folder.py +11 -1
  100. pulumi_gcp/organizations/get_project.py +3 -13
  101. pulumi_gcp/organizations/project.py +3 -87
  102. pulumi_gcp/orgpolicy/policy.py +12 -6
  103. pulumi_gcp/projects/api_key.py +2 -52
  104. pulumi_gcp/provider.py +32 -52
  105. pulumi_gcp/pubsub/topic.py +1 -1
  106. pulumi_gcp/pulumi-plugin.json +1 -1
  107. pulumi_gcp/redis/cluster.py +58 -0
  108. pulumi_gcp/resourcemanager/lien.py +4 -2
  109. pulumi_gcp/securitycenter/__init__.py +1 -0
  110. pulumi_gcp/securitycenter/folder_custom_module.py +8 -4
  111. pulumi_gcp/securitycenter/management_folder_security_health_analytics_custom_module.py +8 -4
  112. pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +862 -0
  113. pulumi_gcp/serviceusage/consumer_quota_override.py +12 -6
  114. pulumi_gcp/sql/_inputs.py +3 -36
  115. pulumi_gcp/sql/outputs.py +6 -49
  116. pulumi_gcp/storage/_inputs.py +23 -23
  117. pulumi_gcp/storage/bucket.py +6 -6
  118. pulumi_gcp/storage/outputs.py +27 -27
  119. pulumi_gcp/tags/tag_binding.py +4 -2
  120. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -2
  121. pulumi_gcp/vmwareengine/network.py +4 -2
  122. pulumi_gcp/vpcaccess/connector.py +14 -6
  123. pulumi_gcp/vpcaccess/get_connector.py +6 -2
  124. {pulumi_gcp-7.39.0a1726118759.dist-info → pulumi_gcp-8.0.0.dist-info}/METADATA +1 -1
  125. {pulumi_gcp-7.39.0a1726118759.dist-info → pulumi_gcp-8.0.0.dist-info}/RECORD +127 -127
  126. pulumi_gcp/datastore/__init__.py +0 -10
  127. pulumi_gcp/datastore/_inputs.py +0 -76
  128. pulumi_gcp/datastore/data_store_index.py +0 -515
  129. pulumi_gcp/datastore/outputs.py +0 -51
  130. pulumi_gcp/identityplatform/project_default_config.py +0 -357
  131. {pulumi_gcp-7.39.0a1726118759.dist-info → pulumi_gcp-8.0.0.dist-info}/WHEEL +0 -0
  132. {pulumi_gcp-7.39.0a1726118759.dist-info → pulumi_gcp-8.0.0.dist-info}/top_level.txt +0 -0
@@ -21,7 +21,6 @@ __all__ = ['ManagedSslCertificateArgs', 'ManagedSslCertificate']
21
21
  @pulumi.input_type
22
22
  class ManagedSslCertificateArgs:
23
23
  def __init__(__self__, *,
24
- certificate_id: Optional[pulumi.Input[int]] = None,
25
24
  description: Optional[pulumi.Input[str]] = None,
26
25
  managed: Optional[pulumi.Input['ManagedSslCertificateManagedArgs']] = None,
27
26
  name: Optional[pulumi.Input[str]] = None,
@@ -29,7 +28,6 @@ class ManagedSslCertificateArgs:
29
28
  type: Optional[pulumi.Input[str]] = None):
30
29
  """
31
30
  The set of arguments for constructing a ManagedSslCertificate resource.
32
- :param pulumi.Input[int] certificate_id: The unique identifier for the resource.
33
31
  :param pulumi.Input[str] description: An optional description of this resource.
34
32
  :param pulumi.Input['ManagedSslCertificateManagedArgs'] managed: Properties relevant to a managed certificate. These will be used if the
35
33
  certificate is managed (as indicated by a value of `MANAGED` in `type`).
@@ -49,8 +47,6 @@ class ManagedSslCertificateArgs:
49
47
  Default value is `MANAGED`.
50
48
  Possible values are: `MANAGED`.
51
49
  """
52
- if certificate_id is not None:
53
- pulumi.set(__self__, "certificate_id", certificate_id)
54
50
  if description is not None:
55
51
  pulumi.set(__self__, "description", description)
56
52
  if managed is not None:
@@ -62,18 +58,6 @@ class ManagedSslCertificateArgs:
62
58
  if type is not None:
63
59
  pulumi.set(__self__, "type", type)
64
60
 
65
- @property
66
- @pulumi.getter(name="certificateId")
67
- def certificate_id(self) -> Optional[pulumi.Input[int]]:
68
- """
69
- The unique identifier for the resource.
70
- """
71
- return pulumi.get(self, "certificate_id")
72
-
73
- @certificate_id.setter
74
- def certificate_id(self, value: Optional[pulumi.Input[int]]):
75
- pulumi.set(self, "certificate_id", value)
76
-
77
61
  @property
78
62
  @pulumi.getter
79
63
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -347,7 +331,6 @@ class ManagedSslCertificate(pulumi.CustomResource):
347
331
  def __init__(__self__,
348
332
  resource_name: str,
349
333
  opts: Optional[pulumi.ResourceOptions] = None,
350
- certificate_id: Optional[pulumi.Input[int]] = None,
351
334
  description: Optional[pulumi.Input[str]] = None,
352
335
  managed: Optional[pulumi.Input[Union['ManagedSslCertificateManagedArgs', 'ManagedSslCertificateManagedArgsDict']]] = None,
353
336
  name: Optional[pulumi.Input[str]] = None,
@@ -456,7 +439,6 @@ class ManagedSslCertificate(pulumi.CustomResource):
456
439
 
457
440
  :param str resource_name: The name of the resource.
458
441
  :param pulumi.ResourceOptions opts: Options for the resource.
459
- :param pulumi.Input[int] certificate_id: The unique identifier for the resource.
460
442
  :param pulumi.Input[str] description: An optional description of this resource.
461
443
  :param pulumi.Input[Union['ManagedSslCertificateManagedArgs', 'ManagedSslCertificateManagedArgsDict']] managed: Properties relevant to a managed certificate. These will be used if the
462
444
  certificate is managed (as indicated by a value of `MANAGED` in `type`).
@@ -597,7 +579,6 @@ class ManagedSslCertificate(pulumi.CustomResource):
597
579
  def _internal_init(__self__,
598
580
  resource_name: str,
599
581
  opts: Optional[pulumi.ResourceOptions] = None,
600
- certificate_id: Optional[pulumi.Input[int]] = None,
601
582
  description: Optional[pulumi.Input[str]] = None,
602
583
  managed: Optional[pulumi.Input[Union['ManagedSslCertificateManagedArgs', 'ManagedSslCertificateManagedArgsDict']]] = None,
603
584
  name: Optional[pulumi.Input[str]] = None,
@@ -612,12 +593,12 @@ class ManagedSslCertificate(pulumi.CustomResource):
612
593
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
613
594
  __props__ = ManagedSslCertificateArgs.__new__(ManagedSslCertificateArgs)
614
595
 
615
- __props__.__dict__["certificate_id"] = certificate_id
616
596
  __props__.__dict__["description"] = description
617
597
  __props__.__dict__["managed"] = managed
618
598
  __props__.__dict__["name"] = name
619
599
  __props__.__dict__["project"] = project
620
600
  __props__.__dict__["type"] = type
601
+ __props__.__dict__["certificate_id"] = None
621
602
  __props__.__dict__["creation_timestamp"] = None
622
603
  __props__.__dict__["expire_time"] = None
623
604
  __props__.__dict__["self_link"] = None
@@ -21,7 +21,6 @@ __all__ = ['MangedSslCertificateArgs', 'MangedSslCertificate']
21
21
  @pulumi.input_type
22
22
  class MangedSslCertificateArgs:
23
23
  def __init__(__self__, *,
24
- certificate_id: Optional[pulumi.Input[int]] = None,
25
24
  description: Optional[pulumi.Input[str]] = None,
26
25
  managed: Optional[pulumi.Input['MangedSslCertificateManagedArgs']] = None,
27
26
  name: Optional[pulumi.Input[str]] = None,
@@ -29,7 +28,6 @@ class MangedSslCertificateArgs:
29
28
  type: Optional[pulumi.Input[str]] = None):
30
29
  """
31
30
  The set of arguments for constructing a MangedSslCertificate resource.
32
- :param pulumi.Input[int] certificate_id: The unique identifier for the resource.
33
31
  :param pulumi.Input[str] description: An optional description of this resource.
34
32
  :param pulumi.Input['MangedSslCertificateManagedArgs'] managed: Properties relevant to a managed certificate. These will be used if the
35
33
  certificate is managed (as indicated by a value of `MANAGED` in `type`).
@@ -49,8 +47,6 @@ class MangedSslCertificateArgs:
49
47
  Default value is `MANAGED`.
50
48
  Possible values are: `MANAGED`.
51
49
  """
52
- if certificate_id is not None:
53
- pulumi.set(__self__, "certificate_id", certificate_id)
54
50
  if description is not None:
55
51
  pulumi.set(__self__, "description", description)
56
52
  if managed is not None:
@@ -62,18 +58,6 @@ class MangedSslCertificateArgs:
62
58
  if type is not None:
63
59
  pulumi.set(__self__, "type", type)
64
60
 
65
- @property
66
- @pulumi.getter(name="certificateId")
67
- def certificate_id(self) -> Optional[pulumi.Input[int]]:
68
- """
69
- The unique identifier for the resource.
70
- """
71
- return pulumi.get(self, "certificate_id")
72
-
73
- @certificate_id.setter
74
- def certificate_id(self, value: Optional[pulumi.Input[int]]):
75
- pulumi.set(self, "certificate_id", value)
76
-
77
61
  @property
78
62
  @pulumi.getter
79
63
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -352,7 +336,6 @@ class MangedSslCertificate(pulumi.CustomResource):
352
336
  def __init__(__self__,
353
337
  resource_name: str,
354
338
  opts: Optional[pulumi.ResourceOptions] = None,
355
- certificate_id: Optional[pulumi.Input[int]] = None,
356
339
  description: Optional[pulumi.Input[str]] = None,
357
340
  managed: Optional[pulumi.Input[Union['MangedSslCertificateManagedArgs', 'MangedSslCertificateManagedArgsDict']]] = None,
358
341
  name: Optional[pulumi.Input[str]] = None,
@@ -461,7 +444,6 @@ class MangedSslCertificate(pulumi.CustomResource):
461
444
 
462
445
  :param str resource_name: The name of the resource.
463
446
  :param pulumi.ResourceOptions opts: Options for the resource.
464
- :param pulumi.Input[int] certificate_id: The unique identifier for the resource.
465
447
  :param pulumi.Input[str] description: An optional description of this resource.
466
448
  :param pulumi.Input[Union['MangedSslCertificateManagedArgs', 'MangedSslCertificateManagedArgsDict']] managed: Properties relevant to a managed certificate. These will be used if the
467
449
  certificate is managed (as indicated by a value of `MANAGED` in `type`).
@@ -602,7 +584,6 @@ class MangedSslCertificate(pulumi.CustomResource):
602
584
  def _internal_init(__self__,
603
585
  resource_name: str,
604
586
  opts: Optional[pulumi.ResourceOptions] = None,
605
- certificate_id: Optional[pulumi.Input[int]] = None,
606
587
  description: Optional[pulumi.Input[str]] = None,
607
588
  managed: Optional[pulumi.Input[Union['MangedSslCertificateManagedArgs', 'MangedSslCertificateManagedArgsDict']]] = None,
608
589
  name: Optional[pulumi.Input[str]] = None,
@@ -618,12 +599,12 @@ class MangedSslCertificate(pulumi.CustomResource):
618
599
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
619
600
  __props__ = MangedSslCertificateArgs.__new__(MangedSslCertificateArgs)
620
601
 
621
- __props__.__dict__["certificate_id"] = certificate_id
622
602
  __props__.__dict__["description"] = description
623
603
  __props__.__dict__["managed"] = managed
624
604
  __props__.__dict__["name"] = name
625
605
  __props__.__dict__["project"] = project
626
606
  __props__.__dict__["type"] = type
607
+ __props__.__dict__["certificate_id"] = None
627
608
  __props__.__dict__["creation_timestamp"] = None
628
609
  __props__.__dict__["expire_time"] = None
629
610
  __props__.__dict__["self_link"] = None
@@ -469,12 +469,14 @@ class NetworkAttachment(pulumi.CustomResource):
469
469
  project_id="prj-rejected",
470
470
  name="prj-rejected",
471
471
  org_id="123456789",
472
- billing_account="000000-0000000-0000000-000000")
472
+ billing_account="000000-0000000-0000000-000000",
473
+ deletion_policy="DELETE")
473
474
  accepted_producer_project = gcp.organizations.Project("accepted_producer_project",
474
475
  project_id="prj-accepted",
475
476
  name="prj-accepted",
476
477
  org_id="123456789",
477
- billing_account="000000-0000000-0000000-000000")
478
+ billing_account="000000-0000000-0000000-000000",
479
+ deletion_policy="DELETE")
478
480
  default = gcp.compute.NetworkAttachment("default",
479
481
  name="basic-network-attachment",
480
482
  region="us-central1",
@@ -604,12 +606,14 @@ class NetworkAttachment(pulumi.CustomResource):
604
606
  project_id="prj-rejected",
605
607
  name="prj-rejected",
606
608
  org_id="123456789",
607
- billing_account="000000-0000000-0000000-000000")
609
+ billing_account="000000-0000000-0000000-000000",
610
+ deletion_policy="DELETE")
608
611
  accepted_producer_project = gcp.organizations.Project("accepted_producer_project",
609
612
  project_id="prj-accepted",
610
613
  name="prj-accepted",
611
614
  org_id="123456789",
612
- billing_account="000000-0000000-0000000-000000")
615
+ billing_account="000000-0000000-0000000-000000",
616
+ deletion_policy="DELETE")
613
617
  default = gcp.compute.NetworkAttachment("default",
614
618
  name="basic-network-attachment",
615
619
  region="us-central1",
@@ -584,7 +584,8 @@ class NodeGroup(pulumi.CustomResource):
584
584
  guest_project = gcp.organizations.Project("guest_project",
585
585
  project_id="project-id",
586
586
  name="project-name",
587
- org_id="123456789")
587
+ org_id="123456789",
588
+ deletion_policy="DELETE")
588
589
  soletenant_tmpl = gcp.compute.NodeTemplate("soletenant-tmpl",
589
590
  name="soletenant-tmpl",
590
591
  region="us-central1",
@@ -752,7 +753,8 @@ class NodeGroup(pulumi.CustomResource):
752
753
  guest_project = gcp.organizations.Project("guest_project",
753
754
  project_id="project-id",
754
755
  name="project-name",
755
- org_id="123456789")
756
+ org_id="123456789",
757
+ deletion_policy="DELETE")
756
758
  soletenant_tmpl = gcp.compute.NodeTemplate("soletenant-tmpl",
757
759
  name="soletenant-tmpl",
758
760
  region="us-central1",
@@ -182,7 +182,8 @@ class OrganizationSecurityPolicyAssociation(pulumi.CustomResource):
182
182
 
183
183
  security_policy_target = gcp.organizations.Folder("security_policy_target",
184
184
  display_name="tf-test-secpol",
185
- parent="organizations/123456789")
185
+ parent="organizations/123456789",
186
+ deletion_protection=False)
186
187
  policy = gcp.compute.OrganizationSecurityPolicy("policy",
187
188
  display_name="tf-test",
188
189
  parent=security_policy_target.name)
@@ -261,7 +262,8 @@ class OrganizationSecurityPolicyAssociation(pulumi.CustomResource):
261
262
 
262
263
  security_policy_target = gcp.organizations.Folder("security_policy_target",
263
264
  display_name="tf-test-secpol",
264
- parent="organizations/123456789")
265
+ parent="organizations/123456789",
266
+ deletion_protection=False)
265
267
  policy = gcp.compute.OrganizationSecurityPolicy("policy",
266
268
  display_name="tf-test",
267
269
  parent=security_policy_target.name)
@@ -2005,7 +2005,6 @@ class BackendServiceBackend(dict):
2005
2005
  and CONNECTION (for TCP/SSL).
2006
2006
  See the [Backend Services Overview](https://cloud.google.com/load-balancing/docs/backend-service#balancing-mode)
2007
2007
  for an explanation of load balancing modes.
2008
- From version 6.0.0 default value will be UTILIZATION to match default GCP value.
2009
2008
  Default value is `UTILIZATION`.
2010
2009
  Possible values are: `UTILIZATION`, `RATE`, `CONNECTION`.
2011
2010
  :param float capacity_scaler: A multiplier applied to the group's maximum servicing capacity
@@ -2102,7 +2101,6 @@ class BackendServiceBackend(dict):
2102
2101
  and CONNECTION (for TCP/SSL).
2103
2102
  See the [Backend Services Overview](https://cloud.google.com/load-balancing/docs/backend-service#balancing-mode)
2104
2103
  for an explanation of load balancing modes.
2105
- From version 6.0.0 default value will be UTILIZATION to match default GCP value.
2106
2104
  Default value is `UTILIZATION`.
2107
2105
  Possible values are: `UTILIZATION`, `RATE`, `CONNECTION`.
2108
2106
  """
@@ -3049,10 +3047,12 @@ class BackendServiceIap(dict):
3049
3047
  return super().get(key, default)
3050
3048
 
3051
3049
  def __init__(__self__, *,
3052
- oauth2_client_id: str,
3053
- oauth2_client_secret: str,
3050
+ enabled: bool,
3051
+ oauth2_client_id: Optional[str] = None,
3052
+ oauth2_client_secret: Optional[str] = None,
3054
3053
  oauth2_client_secret_sha256: Optional[str] = None):
3055
3054
  """
3055
+ :param bool enabled: Whether the serving infrastructure will authenticate and authorize all incoming requests.
3056
3056
  :param str oauth2_client_id: OAuth2 Client ID for IAP
3057
3057
  :param str oauth2_client_secret: OAuth2 Client Secret for IAP
3058
3058
  **Note**: This property is sensitive and will not be displayed in the plan.
@@ -3060,14 +3060,25 @@ class BackendServiceIap(dict):
3060
3060
  OAuth2 Client Secret SHA-256 for IAP
3061
3061
  **Note**: This property is sensitive and will not be displayed in the plan.
3062
3062
  """
3063
- pulumi.set(__self__, "oauth2_client_id", oauth2_client_id)
3064
- pulumi.set(__self__, "oauth2_client_secret", oauth2_client_secret)
3063
+ pulumi.set(__self__, "enabled", enabled)
3064
+ if oauth2_client_id is not None:
3065
+ pulumi.set(__self__, "oauth2_client_id", oauth2_client_id)
3066
+ if oauth2_client_secret is not None:
3067
+ pulumi.set(__self__, "oauth2_client_secret", oauth2_client_secret)
3065
3068
  if oauth2_client_secret_sha256 is not None:
3066
3069
  pulumi.set(__self__, "oauth2_client_secret_sha256", oauth2_client_secret_sha256)
3067
3070
 
3071
+ @property
3072
+ @pulumi.getter
3073
+ def enabled(self) -> bool:
3074
+ """
3075
+ Whether the serving infrastructure will authenticate and authorize all incoming requests.
3076
+ """
3077
+ return pulumi.get(self, "enabled")
3078
+
3068
3079
  @property
3069
3080
  @pulumi.getter(name="oauth2ClientId")
3070
- def oauth2_client_id(self) -> str:
3081
+ def oauth2_client_id(self) -> Optional[str]:
3071
3082
  """
3072
3083
  OAuth2 Client ID for IAP
3073
3084
  """
@@ -3075,7 +3086,7 @@ class BackendServiceIap(dict):
3075
3086
 
3076
3087
  @property
3077
3088
  @pulumi.getter(name="oauth2ClientSecret")
3078
- def oauth2_client_secret(self) -> str:
3089
+ def oauth2_client_secret(self) -> Optional[str]:
3079
3090
  """
3080
3091
  OAuth2 Client Secret for IAP
3081
3092
  **Note**: This property is sensitive and will not be displayed in the plan.
@@ -16753,8 +16764,7 @@ class RegionBackendServiceBackend(dict):
16753
16764
  :param str balancing_mode: Specifies the balancing mode for this backend.
16754
16765
  See the [Backend Services Overview](https://cloud.google.com/load-balancing/docs/backend-service#balancing-mode)
16755
16766
  for an explanation of load balancing modes.
16756
- From version 6.0.0 default value will be UTILIZATION to match default GCP value.
16757
- Default value is `CONNECTION`.
16767
+ Default value is `UTILIZATION`.
16758
16768
  Possible values are: `UTILIZATION`, `RATE`, `CONNECTION`.
16759
16769
  :param float capacity_scaler: A multiplier applied to the group's maximum servicing capacity
16760
16770
  (based on UTILIZATION, RATE or CONNECTION).
@@ -16862,8 +16872,7 @@ class RegionBackendServiceBackend(dict):
16862
16872
  Specifies the balancing mode for this backend.
16863
16873
  See the [Backend Services Overview](https://cloud.google.com/load-balancing/docs/backend-service#balancing-mode)
16864
16874
  for an explanation of load balancing modes.
16865
- From version 6.0.0 default value will be UTILIZATION to match default GCP value.
16866
- Default value is `CONNECTION`.
16875
+ Default value is `UTILIZATION`.
16867
16876
  Possible values are: `UTILIZATION`, `RATE`, `CONNECTION`.
16868
16877
  """
16869
16878
  return pulumi.get(self, "balancing_mode")
@@ -17980,10 +17989,12 @@ class RegionBackendServiceIap(dict):
17980
17989
  return super().get(key, default)
17981
17990
 
17982
17991
  def __init__(__self__, *,
17983
- oauth2_client_id: str,
17984
- oauth2_client_secret: str,
17992
+ enabled: bool,
17993
+ oauth2_client_id: Optional[str] = None,
17994
+ oauth2_client_secret: Optional[str] = None,
17985
17995
  oauth2_client_secret_sha256: Optional[str] = None):
17986
17996
  """
17997
+ :param bool enabled: Whether the serving infrastructure will authenticate and authorize all incoming requests.
17987
17998
  :param str oauth2_client_id: OAuth2 Client ID for IAP
17988
17999
  :param str oauth2_client_secret: OAuth2 Client Secret for IAP
17989
18000
  **Note**: This property is sensitive and will not be displayed in the plan.
@@ -17991,14 +18002,25 @@ class RegionBackendServiceIap(dict):
17991
18002
  OAuth2 Client Secret SHA-256 for IAP
17992
18003
  **Note**: This property is sensitive and will not be displayed in the plan.
17993
18004
  """
17994
- pulumi.set(__self__, "oauth2_client_id", oauth2_client_id)
17995
- pulumi.set(__self__, "oauth2_client_secret", oauth2_client_secret)
18005
+ pulumi.set(__self__, "enabled", enabled)
18006
+ if oauth2_client_id is not None:
18007
+ pulumi.set(__self__, "oauth2_client_id", oauth2_client_id)
18008
+ if oauth2_client_secret is not None:
18009
+ pulumi.set(__self__, "oauth2_client_secret", oauth2_client_secret)
17996
18010
  if oauth2_client_secret_sha256 is not None:
17997
18011
  pulumi.set(__self__, "oauth2_client_secret_sha256", oauth2_client_secret_sha256)
17998
18012
 
18013
+ @property
18014
+ @pulumi.getter
18015
+ def enabled(self) -> bool:
18016
+ """
18017
+ Whether the serving infrastructure will authenticate and authorize all incoming requests.
18018
+ """
18019
+ return pulumi.get(self, "enabled")
18020
+
17999
18021
  @property
18000
18022
  @pulumi.getter(name="oauth2ClientId")
18001
- def oauth2_client_id(self) -> str:
18023
+ def oauth2_client_id(self) -> Optional[str]:
18002
18024
  """
18003
18025
  OAuth2 Client ID for IAP
18004
18026
  """
@@ -18006,7 +18028,7 @@ class RegionBackendServiceIap(dict):
18006
18028
 
18007
18029
  @property
18008
18030
  @pulumi.getter(name="oauth2ClientSecret")
18009
- def oauth2_client_secret(self) -> str:
18031
+ def oauth2_client_secret(self) -> Optional[str]:
18010
18032
  """
18011
18033
  OAuth2 Client Secret for IAP
18012
18034
  **Note**: This property is sensitive and will not be displayed in the plan.
@@ -34985,10 +35007,12 @@ class SubnetworkSecondaryIpRange(dict):
34985
35007
  @staticmethod
34986
35008
  def __key_warning(key: str):
34987
35009
  suggest = None
34988
- if key == "ipCidrRange":
34989
- suggest = "ip_cidr_range"
34990
- elif key == "rangeName":
35010
+ if key == "rangeName":
34991
35011
  suggest = "range_name"
35012
+ elif key == "ipCidrRange":
35013
+ suggest = "ip_cidr_range"
35014
+ elif key == "reservedInternalRange":
35015
+ suggest = "reserved_internal_range"
34992
35016
 
34993
35017
  if suggest:
34994
35018
  pulumi.log.warn(f"Key '{key}' not found in SubnetworkSecondaryIpRange. Access the value via the '{suggest}' property getter instead.")
@@ -35002,42 +35026,59 @@ class SubnetworkSecondaryIpRange(dict):
35002
35026
  return super().get(key, default)
35003
35027
 
35004
35028
  def __init__(__self__, *,
35005
- ip_cidr_range: str,
35006
- range_name: str):
35029
+ range_name: str,
35030
+ ip_cidr_range: Optional[str] = None,
35031
+ reserved_internal_range: Optional[str] = None):
35007
35032
  """
35008
- :param str ip_cidr_range: The range of IP addresses belonging to this subnetwork secondary
35009
- range. Provide this property when you create the subnetwork.
35010
- Ranges must be unique and non-overlapping with all primary and
35011
- secondary IP ranges within a network. Only IPv4 is supported.
35012
35033
  :param str range_name: The name associated with this subnetwork secondary range, used
35013
35034
  when adding an alias IP range to a VM instance. The name must
35014
35035
  be 1-63 characters long, and comply with RFC1035. The name
35015
35036
  must be unique within the subnetwork.
35037
+ :param str ip_cidr_range: The range of IP addresses belonging to this subnetwork secondary
35038
+ range. Provide this property when you create the subnetwork.
35039
+ Ranges must be unique and non-overlapping with all primary and
35040
+ secondary IP ranges within a network. Only IPv4 is supported.
35041
+ Field is optional when `reserved_internal_range` is defined, otherwise required.
35042
+ :param str reserved_internal_range: The ID of the reserved internal range. Must be prefixed with `networkconnectivity.googleapis.com`
35043
+ E.g. `networkconnectivity.googleapis.com/projects/{project}/locations/global/internalRanges/{rangeId}`
35016
35044
  """
35017
- pulumi.set(__self__, "ip_cidr_range", ip_cidr_range)
35018
35045
  pulumi.set(__self__, "range_name", range_name)
35046
+ if ip_cidr_range is not None:
35047
+ pulumi.set(__self__, "ip_cidr_range", ip_cidr_range)
35048
+ if reserved_internal_range is not None:
35049
+ pulumi.set(__self__, "reserved_internal_range", reserved_internal_range)
35050
+
35051
+ @property
35052
+ @pulumi.getter(name="rangeName")
35053
+ def range_name(self) -> str:
35054
+ """
35055
+ The name associated with this subnetwork secondary range, used
35056
+ when adding an alias IP range to a VM instance. The name must
35057
+ be 1-63 characters long, and comply with RFC1035. The name
35058
+ must be unique within the subnetwork.
35059
+ """
35060
+ return pulumi.get(self, "range_name")
35019
35061
 
35020
35062
  @property
35021
35063
  @pulumi.getter(name="ipCidrRange")
35022
- def ip_cidr_range(self) -> str:
35064
+ def ip_cidr_range(self) -> Optional[str]:
35023
35065
  """
35024
35066
  The range of IP addresses belonging to this subnetwork secondary
35025
35067
  range. Provide this property when you create the subnetwork.
35026
35068
  Ranges must be unique and non-overlapping with all primary and
35027
35069
  secondary IP ranges within a network. Only IPv4 is supported.
35070
+ Field is optional when `reserved_internal_range` is defined, otherwise required.
35028
35071
  """
35029
35072
  return pulumi.get(self, "ip_cidr_range")
35030
35073
 
35031
35074
  @property
35032
- @pulumi.getter(name="rangeName")
35033
- def range_name(self) -> str:
35075
+ @pulumi.getter(name="reservedInternalRange")
35076
+ def reserved_internal_range(self) -> Optional[str]:
35034
35077
  """
35035
- The name associated with this subnetwork secondary range, used
35036
- when adding an alias IP range to a VM instance. The name must
35037
- be 1-63 characters long, and comply with RFC1035. The name
35038
- must be unique within the subnetwork.
35078
+ The ID of the reserved internal range. Must be prefixed with `networkconnectivity.googleapis.com`
35079
+ E.g. `networkconnectivity.googleapis.com/projects/{project}/locations/global/internalRanges/{rangeId}`
35039
35080
  """
35040
- return pulumi.get(self, "range_name")
35081
+ return pulumi.get(self, "reserved_internal_range")
35041
35082
 
35042
35083
 
35043
35084
  @pulumi.output_type
@@ -42432,9 +42473,7 @@ class GetBackendServiceBackendResult(dict):
42432
42473
  and CONNECTION (for TCP/SSL).
42433
42474
 
42434
42475
  See the [Backend Services Overview](https://cloud.google.com/load-balancing/docs/backend-service#balancing-mode)
42435
- for an explanation of load balancing modes.
42436
-
42437
- From version 6.0.0 default value will be UTILIZATION to match default GCP value. Default value: "UTILIZATION" Possible values: ["UTILIZATION", "RATE", "CONNECTION"]
42476
+ for an explanation of load balancing modes. Default value: "UTILIZATION" Possible values: ["UTILIZATION", "RATE", "CONNECTION"]
42438
42477
  :param float capacity_scaler: A multiplier applied to the group's maximum servicing capacity
42439
42478
  (based on UTILIZATION, RATE or CONNECTION).
42440
42479
 
@@ -42520,9 +42559,7 @@ class GetBackendServiceBackendResult(dict):
42520
42559
  and CONNECTION (for TCP/SSL).
42521
42560
 
42522
42561
  See the [Backend Services Overview](https://cloud.google.com/load-balancing/docs/backend-service#balancing-mode)
42523
- for an explanation of load balancing modes.
42524
-
42525
- From version 6.0.0 default value will be UTILIZATION to match default GCP value. Default value: "UTILIZATION" Possible values: ["UTILIZATION", "RATE", "CONNECTION"]
42562
+ for an explanation of load balancing modes. Default value: "UTILIZATION" Possible values: ["UTILIZATION", "RATE", "CONNECTION"]
42526
42563
  """
42527
42564
  return pulumi.get(self, "balancing_mode")
42528
42565
 
@@ -43236,18 +43273,29 @@ class GetBackendServiceConsistentHashHttpCookyTtlResult(dict):
43236
43273
  @pulumi.output_type
43237
43274
  class GetBackendServiceIapResult(dict):
43238
43275
  def __init__(__self__, *,
43276
+ enabled: bool,
43239
43277
  oauth2_client_id: str,
43240
43278
  oauth2_client_secret: str,
43241
43279
  oauth2_client_secret_sha256: str):
43242
43280
  """
43281
+ :param bool enabled: Whether the serving infrastructure will authenticate and authorize all incoming requests.
43243
43282
  :param str oauth2_client_id: OAuth2 Client ID for IAP
43244
43283
  :param str oauth2_client_secret: OAuth2 Client Secret for IAP
43245
43284
  :param str oauth2_client_secret_sha256: OAuth2 Client Secret SHA-256 for IAP
43246
43285
  """
43286
+ pulumi.set(__self__, "enabled", enabled)
43247
43287
  pulumi.set(__self__, "oauth2_client_id", oauth2_client_id)
43248
43288
  pulumi.set(__self__, "oauth2_client_secret", oauth2_client_secret)
43249
43289
  pulumi.set(__self__, "oauth2_client_secret_sha256", oauth2_client_secret_sha256)
43250
43290
 
43291
+ @property
43292
+ @pulumi.getter
43293
+ def enabled(self) -> bool:
43294
+ """
43295
+ Whether the serving infrastructure will authenticate and authorize all incoming requests.
43296
+ """
43297
+ return pulumi.get(self, "enabled")
43298
+
43251
43299
  @property
43252
43300
  @pulumi.getter(name="oauth2ClientId")
43253
43301
  def oauth2_client_id(self) -> str:
@@ -44039,6 +44087,7 @@ class GetForwardingRulesRuleResult(dict):
44039
44087
  creation_timestamp: str,
44040
44088
  description: str,
44041
44089
  effective_labels: Mapping[str, str],
44090
+ forwarding_rule_id: int,
44042
44091
  ip_address: str,
44043
44092
  ip_protocol: str,
44044
44093
  ip_version: str,
@@ -44099,6 +44148,7 @@ class GetForwardingRulesRuleResult(dict):
44099
44148
  :param str creation_timestamp: Creation timestamp in RFC3339 text format.
44100
44149
  :param str description: An optional description of this resource. Provide this property when
44101
44150
  you create the resource.
44151
+ :param int forwarding_rule_id: The unique identifier number for the resource. This identifier is defined by the server.
44102
44152
  :param str ip_address: IP address for which this forwarding rule accepts traffic. When a client
44103
44153
  sends traffic to this IP address, the forwarding rule directs the traffic
44104
44154
  to the referenced 'target' or 'backendService'.
@@ -44310,6 +44360,7 @@ class GetForwardingRulesRuleResult(dict):
44310
44360
  pulumi.set(__self__, "creation_timestamp", creation_timestamp)
44311
44361
  pulumi.set(__self__, "description", description)
44312
44362
  pulumi.set(__self__, "effective_labels", effective_labels)
44363
+ pulumi.set(__self__, "forwarding_rule_id", forwarding_rule_id)
44313
44364
  pulumi.set(__self__, "ip_address", ip_address)
44314
44365
  pulumi.set(__self__, "ip_protocol", ip_protocol)
44315
44366
  pulumi.set(__self__, "ip_version", ip_version)
@@ -44424,6 +44475,14 @@ class GetForwardingRulesRuleResult(dict):
44424
44475
  def effective_labels(self) -> Mapping[str, str]:
44425
44476
  return pulumi.get(self, "effective_labels")
44426
44477
 
44478
+ @property
44479
+ @pulumi.getter(name="forwardingRuleId")
44480
+ def forwarding_rule_id(self) -> int:
44481
+ """
44482
+ The unique identifier number for the resource. This identifier is defined by the server.
44483
+ """
44484
+ return pulumi.get(self, "forwarding_rule_id")
44485
+
44427
44486
  @property
44428
44487
  @pulumi.getter(name="ipAddress")
44429
44488
  def ip_address(self) -> str:
@@ -152,7 +152,8 @@ class ProjectCloudArmorTier(pulumi.CustomResource):
152
152
  project_id="your_project_id",
153
153
  name="your_project_id",
154
154
  org_id="123456789",
155
- billing_account="000000-0000000-0000000-000000")
155
+ billing_account="000000-0000000-0000000-000000",
156
+ deletion_policy="DELETE")
156
157
  compute = gcp.projects.Service("compute",
157
158
  project=project.project_id,
158
159
  service="compute.googleapis.com")
@@ -225,7 +226,8 @@ class ProjectCloudArmorTier(pulumi.CustomResource):
225
226
  project_id="your_project_id",
226
227
  name="your_project_id",
227
228
  org_id="123456789",
228
- billing_account="000000-0000000-0000000-000000")
229
+ billing_account="000000-0000000-0000000-000000",
230
+ deletion_policy="DELETE")
229
231
  compute = gcp.projects.Service("compute",
230
232
  project=project.project_id,
231
233
  service="compute.googleapis.com")