pulumi-gcp 7.39.0a1726207510__py3-none-any.whl → 8.0.0a1__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 (167) 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/certificateauthority/get_authority.py +0 -20
  26. pulumi_gcp/certificatemanager/get_certificate_map.py +0 -14
  27. pulumi_gcp/cloudasset/folder_feed.py +4 -2
  28. pulumi_gcp/cloudidentity/get_group_lookup.py +0 -18
  29. pulumi_gcp/cloudidentity/get_group_memberships.py +0 -14
  30. pulumi_gcp/cloudidentity/get_groups.py +0 -14
  31. pulumi_gcp/cloudrunv2/_inputs.py +25 -25
  32. pulumi_gcp/cloudrunv2/get_job.py +11 -1
  33. pulumi_gcp/cloudrunv2/get_service.py +11 -1
  34. pulumi_gcp/cloudrunv2/job.py +50 -0
  35. pulumi_gcp/cloudrunv2/outputs.py +26 -26
  36. pulumi_gcp/cloudrunv2/service.py +54 -0
  37. pulumi_gcp/compute/_inputs.py +117 -54
  38. pulumi_gcp/compute/backend_service.py +52 -0
  39. pulumi_gcp/compute/disk_async_replication.py +0 -48
  40. pulumi_gcp/compute/firewall_policy_rule.py +4 -2
  41. pulumi_gcp/compute/forwarding_rule.py +42 -0
  42. pulumi_gcp/compute/get_backend_bucket.py +0 -14
  43. pulumi_gcp/compute/get_backend_service.py +0 -20
  44. pulumi_gcp/compute/get_certificate.py +0 -20
  45. pulumi_gcp/compute/get_forwarding_rule.py +11 -15
  46. pulumi_gcp/compute/get_forwarding_rules.py +0 -16
  47. pulumi_gcp/compute/get_global_forwarding_rule.py +0 -14
  48. pulumi_gcp/compute/get_hc_vpn_gateway.py +0 -14
  49. pulumi_gcp/compute/get_health_check.py +0 -14
  50. pulumi_gcp/compute/get_lbip_ranges.py +0 -32
  51. pulumi_gcp/compute/get_netblock_ip_ranges.py +0 -52
  52. pulumi_gcp/compute/get_network.py +0 -14
  53. pulumi_gcp/compute/get_networks.py +0 -14
  54. pulumi_gcp/compute/get_region_ssl_certificate.py +0 -20
  55. pulumi_gcp/compute/get_ssl_policy.py +0 -14
  56. pulumi_gcp/compute/get_vpn_gateway.py +0 -14
  57. pulumi_gcp/compute/global_address.py +8 -4
  58. pulumi_gcp/compute/global_forwarding_rule.py +7 -0
  59. pulumi_gcp/compute/instance_template.py +56 -63
  60. pulumi_gcp/compute/managed_ssl_certificate.py +1 -20
  61. pulumi_gcp/compute/manged_ssl_certificate.py +1 -20
  62. pulumi_gcp/compute/network_attachment.py +8 -4
  63. pulumi_gcp/compute/node_group.py +4 -2
  64. pulumi_gcp/compute/organization_security_policy_association.py +4 -2
  65. pulumi_gcp/compute/outputs.py +101 -42
  66. pulumi_gcp/compute/project_cloud_armor_tier.py +4 -2
  67. pulumi_gcp/compute/region_backend_service.py +36 -7
  68. pulumi_gcp/compute/region_instance_template.py +56 -7
  69. pulumi_gcp/compute/region_ssl_certificate.py +49 -7
  70. pulumi_gcp/compute/ssl_certificate.py +49 -7
  71. pulumi_gcp/compute/subnetwork.py +193 -23
  72. pulumi_gcp/config/__init__.pyi +3 -5
  73. pulumi_gcp/config/vars.py +6 -10
  74. pulumi_gcp/container/_inputs.py +19 -41
  75. pulumi_gcp/container/cluster.py +79 -0
  76. pulumi_gcp/container/get_cluster.py +21 -25
  77. pulumi_gcp/container/get_engine_versions.py +8 -2
  78. pulumi_gcp/container/outputs.py +17 -40
  79. pulumi_gcp/dataproc/get_metastore_service.py +0 -16
  80. pulumi_gcp/diagflow/intent.py +4 -2
  81. pulumi_gcp/dns/get_record_set.py +0 -20
  82. pulumi_gcp/edgenetwork/network.py +83 -0
  83. pulumi_gcp/edgenetwork/subnet.py +83 -0
  84. pulumi_gcp/filestore/get_instance.py +0 -20
  85. pulumi_gcp/firebase/database_instance.py +2 -0
  86. pulumi_gcp/firebase/hosting_custom_domain.py +4 -2
  87. pulumi_gcp/firebase/hosting_version.py +4 -2
  88. pulumi_gcp/firebase/project.py +2 -0
  89. pulumi_gcp/firestore/document.py +8 -4
  90. pulumi_gcp/folder/access_approval_settings.py +12 -6
  91. pulumi_gcp/gkeonprem/_inputs.py +11 -11
  92. pulumi_gcp/gkeonprem/outputs.py +9 -9
  93. pulumi_gcp/gkeonprem/v_mware_cluster.py +31 -31
  94. pulumi_gcp/gkeonprem/v_mware_node_pool.py +186 -0
  95. pulumi_gcp/iam/access_boundary_policy.py +4 -2
  96. pulumi_gcp/iam/deny_policy.py +4 -2
  97. pulumi_gcp/iam/get_workload_identity_pool.py +0 -14
  98. pulumi_gcp/iam/get_workload_identity_pool_provider.py +0 -16
  99. pulumi_gcp/iap/brand.py +4 -2
  100. pulumi_gcp/iap/client.py +4 -2
  101. pulumi_gcp/iap/get_client.py +0 -18
  102. pulumi_gcp/identityplatform/__init__.py +0 -1
  103. pulumi_gcp/identityplatform/_inputs.py +0 -396
  104. pulumi_gcp/identityplatform/config.py +2 -0
  105. pulumi_gcp/identityplatform/outputs.py +0 -313
  106. pulumi_gcp/integrationconnectors/managed_zone.py +4 -2
  107. pulumi_gcp/kms/__init__.py +4 -0
  108. pulumi_gcp/kms/_inputs.py +130 -0
  109. pulumi_gcp/kms/autokey_config.py +6 -2
  110. pulumi_gcp/kms/ekm_connection_iam_binding.py +1097 -0
  111. pulumi_gcp/kms/ekm_connection_iam_member.py +1097 -0
  112. pulumi_gcp/kms/ekm_connection_iam_policy.py +916 -0
  113. pulumi_gcp/kms/get_ekm_connection_iam_policy.py +177 -0
  114. pulumi_gcp/kms/key_handle.py +8 -2
  115. pulumi_gcp/kms/outputs.py +76 -0
  116. pulumi_gcp/logging/folder_settings.py +4 -2
  117. pulumi_gcp/monitoring/get_secret_version.py +2 -2
  118. pulumi_gcp/monitoring/monitored_project.py +4 -2
  119. pulumi_gcp/networksecurity/firewall_endpoint_association.py +12 -44
  120. pulumi_gcp/networkservices/_inputs.py +23 -0
  121. pulumi_gcp/networkservices/outputs.py +17 -1
  122. pulumi_gcp/networkservices/tcp_route.py +2 -0
  123. pulumi_gcp/organizations/access_approval_settings.py +4 -2
  124. pulumi_gcp/organizations/folder.py +35 -1
  125. pulumi_gcp/organizations/get_active_folder.py +0 -16
  126. pulumi_gcp/organizations/get_client_config.py +16 -15
  127. pulumi_gcp/organizations/get_folder.py +11 -1
  128. pulumi_gcp/organizations/get_project.py +3 -13
  129. pulumi_gcp/organizations/project.py +3 -87
  130. pulumi_gcp/orgpolicy/policy.py +12 -6
  131. pulumi_gcp/projects/api_key.py +2 -52
  132. pulumi_gcp/provider.py +32 -52
  133. pulumi_gcp/pubsub/topic.py +1 -1
  134. pulumi_gcp/pulumi-plugin.json +1 -1
  135. pulumi_gcp/redis/cluster.py +58 -0
  136. pulumi_gcp/redis/get_instance.py +0 -20
  137. pulumi_gcp/resourcemanager/lien.py +4 -2
  138. pulumi_gcp/secretmanager/get_secret_version.py +2 -2
  139. pulumi_gcp/securitycenter/__init__.py +1 -0
  140. pulumi_gcp/securitycenter/folder_custom_module.py +8 -4
  141. pulumi_gcp/securitycenter/management_folder_security_health_analytics_custom_module.py +8 -4
  142. pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +862 -0
  143. pulumi_gcp/serviceusage/consumer_quota_override.py +12 -6
  144. pulumi_gcp/spanner/get_instance.py +0 -14
  145. pulumi_gcp/sql/_inputs.py +3 -36
  146. pulumi_gcp/sql/outputs.py +6 -49
  147. pulumi_gcp/storage/_inputs.py +23 -23
  148. pulumi_gcp/storage/bucket.py +6 -6
  149. pulumi_gcp/storage/outputs.py +27 -27
  150. pulumi_gcp/tags/get_tag_key.py +0 -30
  151. pulumi_gcp/tags/get_tag_keys.py +0 -26
  152. pulumi_gcp/tags/get_tag_value.py +0 -16
  153. pulumi_gcp/tags/get_tag_values.py +0 -14
  154. pulumi_gcp/tags/tag_binding.py +4 -2
  155. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -2
  156. pulumi_gcp/vmwareengine/network.py +4 -2
  157. pulumi_gcp/vpcaccess/connector.py +14 -6
  158. pulumi_gcp/vpcaccess/get_connector.py +6 -2
  159. {pulumi_gcp-7.39.0a1726207510.dist-info → pulumi_gcp-8.0.0a1.dist-info}/METADATA +1 -1
  160. {pulumi_gcp-7.39.0a1726207510.dist-info → pulumi_gcp-8.0.0a1.dist-info}/RECORD +162 -162
  161. pulumi_gcp/datastore/__init__.py +0 -10
  162. pulumi_gcp/datastore/_inputs.py +0 -76
  163. pulumi_gcp/datastore/data_store_index.py +0 -515
  164. pulumi_gcp/datastore/outputs.py +0 -51
  165. pulumi_gcp/identityplatform/project_default_config.py +0 -357
  166. {pulumi_gcp-7.39.0a1726207510.dist-info → pulumi_gcp-8.0.0a1.dist-info}/WHEEL +0 -0
  167. {pulumi_gcp-7.39.0a1726207510.dist-info → pulumi_gcp-8.0.0a1.dist-info}/top_level.txt +0 -0
@@ -289,7 +289,8 @@ class AccessApprovalSettings(pulumi.CustomResource):
289
289
 
290
290
  my_folder = gcp.organizations.Folder("my_folder",
291
291
  display_name="my-folder",
292
- parent="organizations/123456789")
292
+ parent="organizations/123456789",
293
+ deletion_protection=False)
293
294
  folder_access_approval = gcp.folder.AccessApprovalSettings("folder_access_approval",
294
295
  folder_id=my_folder.folder_id,
295
296
  notification_emails=[
@@ -308,11 +309,13 @@ class AccessApprovalSettings(pulumi.CustomResource):
308
309
 
309
310
  my_folder = gcp.organizations.Folder("my_folder",
310
311
  display_name="my-folder",
311
- parent="organizations/123456789")
312
+ parent="organizations/123456789",
313
+ deletion_protection=False)
312
314
  my_project = gcp.organizations.Project("my_project",
313
315
  name="My Project",
314
316
  project_id="your-project-id",
315
- folder_id=my_folder.name)
317
+ folder_id=my_folder.name,
318
+ deletion_policy="DELETE")
316
319
  key_ring = gcp.kms.KeyRing("key_ring",
317
320
  name="key-ring",
318
321
  location="global",
@@ -395,7 +398,8 @@ class AccessApprovalSettings(pulumi.CustomResource):
395
398
 
396
399
  my_folder = gcp.organizations.Folder("my_folder",
397
400
  display_name="my-folder",
398
- parent="organizations/123456789")
401
+ parent="organizations/123456789",
402
+ deletion_protection=False)
399
403
  folder_access_approval = gcp.folder.AccessApprovalSettings("folder_access_approval",
400
404
  folder_id=my_folder.folder_id,
401
405
  notification_emails=[
@@ -414,11 +418,13 @@ class AccessApprovalSettings(pulumi.CustomResource):
414
418
 
415
419
  my_folder = gcp.organizations.Folder("my_folder",
416
420
  display_name="my-folder",
417
- parent="organizations/123456789")
421
+ parent="organizations/123456789",
422
+ deletion_protection=False)
418
423
  my_project = gcp.organizations.Project("my_project",
419
424
  name="My Project",
420
425
  project_id="your-project-id",
421
- folder_id=my_folder.name)
426
+ folder_id=my_folder.name,
427
+ deletion_policy="DELETE")
422
428
  key_ring = gcp.kms.KeyRing("key_ring",
423
429
  name="key-ring",
424
430
  location="global",
@@ -8021,7 +8021,7 @@ if not MYPY:
8021
8021
  The initial taints assigned to nodes of this node pool.
8022
8022
  Structure is documented below.
8023
8023
  """
8024
- vsphere_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['VMwareNodePoolConfigVsphereConfigArgsDict']]]]
8024
+ vsphere_config: NotRequired[pulumi.Input['VMwareNodePoolConfigVsphereConfigArgsDict']]
8025
8025
  """
8026
8026
  Specifies the vSphere config for node pool.
8027
8027
  Structure is documented below.
@@ -8041,7 +8041,7 @@ class VMwareNodePoolConfigArgs:
8041
8041
  memory_mb: Optional[pulumi.Input[int]] = None,
8042
8042
  replicas: Optional[pulumi.Input[int]] = None,
8043
8043
  taints: Optional[pulumi.Input[Sequence[pulumi.Input['VMwareNodePoolConfigTaintArgs']]]] = None,
8044
- vsphere_configs: Optional[pulumi.Input[Sequence[pulumi.Input['VMwareNodePoolConfigVsphereConfigArgs']]]] = None):
8044
+ vsphere_config: Optional[pulumi.Input['VMwareNodePoolConfigVsphereConfigArgs']] = None):
8045
8045
  """
8046
8046
  :param pulumi.Input[str] image_type: The OS image to be used for each node in a node pool.
8047
8047
  Currently `cos`, `ubuntu`, `ubuntu_containerd` and `windows` are supported.
@@ -8060,7 +8060,7 @@ class VMwareNodePoolConfigArgs:
8060
8060
  :param pulumi.Input[int] replicas: The number of nodes in the node pool.
8061
8061
  :param pulumi.Input[Sequence[pulumi.Input['VMwareNodePoolConfigTaintArgs']]] taints: The initial taints assigned to nodes of this node pool.
8062
8062
  Structure is documented below.
8063
- :param pulumi.Input[Sequence[pulumi.Input['VMwareNodePoolConfigVsphereConfigArgs']]] vsphere_configs: Specifies the vSphere config for node pool.
8063
+ :param pulumi.Input['VMwareNodePoolConfigVsphereConfigArgs'] vsphere_config: Specifies the vSphere config for node pool.
8064
8064
  Structure is documented below.
8065
8065
  """
8066
8066
  pulumi.set(__self__, "image_type", image_type)
@@ -8080,8 +8080,8 @@ class VMwareNodePoolConfigArgs:
8080
8080
  pulumi.set(__self__, "replicas", replicas)
8081
8081
  if taints is not None:
8082
8082
  pulumi.set(__self__, "taints", taints)
8083
- if vsphere_configs is not None:
8084
- pulumi.set(__self__, "vsphere_configs", vsphere_configs)
8083
+ if vsphere_config is not None:
8084
+ pulumi.set(__self__, "vsphere_config", vsphere_config)
8085
8085
 
8086
8086
  @property
8087
8087
  @pulumi.getter(name="imageType")
@@ -8200,17 +8200,17 @@ class VMwareNodePoolConfigArgs:
8200
8200
  pulumi.set(self, "taints", value)
8201
8201
 
8202
8202
  @property
8203
- @pulumi.getter(name="vsphereConfigs")
8204
- def vsphere_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VMwareNodePoolConfigVsphereConfigArgs']]]]:
8203
+ @pulumi.getter(name="vsphereConfig")
8204
+ def vsphere_config(self) -> Optional[pulumi.Input['VMwareNodePoolConfigVsphereConfigArgs']]:
8205
8205
  """
8206
8206
  Specifies the vSphere config for node pool.
8207
8207
  Structure is documented below.
8208
8208
  """
8209
- return pulumi.get(self, "vsphere_configs")
8209
+ return pulumi.get(self, "vsphere_config")
8210
8210
 
8211
- @vsphere_configs.setter
8212
- def vsphere_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VMwareNodePoolConfigVsphereConfigArgs']]]]):
8213
- pulumi.set(self, "vsphere_configs", value)
8211
+ @vsphere_config.setter
8212
+ def vsphere_config(self, value: Optional[pulumi.Input['VMwareNodePoolConfigVsphereConfigArgs']]):
8213
+ pulumi.set(self, "vsphere_config", value)
8214
8214
 
8215
8215
 
8216
8216
  if not MYPY:
@@ -6267,8 +6267,8 @@ class VMwareNodePoolConfig(dict):
6267
6267
  suggest = "enable_load_balancer"
6268
6268
  elif key == "memoryMb":
6269
6269
  suggest = "memory_mb"
6270
- elif key == "vsphereConfigs":
6271
- suggest = "vsphere_configs"
6270
+ elif key == "vsphereConfig":
6271
+ suggest = "vsphere_config"
6272
6272
 
6273
6273
  if suggest:
6274
6274
  pulumi.log.warn(f"Key '{key}' not found in VMwareNodePoolConfig. Access the value via the '{suggest}' property getter instead.")
@@ -6291,7 +6291,7 @@ class VMwareNodePoolConfig(dict):
6291
6291
  memory_mb: Optional[int] = None,
6292
6292
  replicas: Optional[int] = None,
6293
6293
  taints: Optional[Sequence['outputs.VMwareNodePoolConfigTaint']] = None,
6294
- vsphere_configs: Optional[Sequence['outputs.VMwareNodePoolConfigVsphereConfig']] = None):
6294
+ vsphere_config: Optional['outputs.VMwareNodePoolConfigVsphereConfig'] = None):
6295
6295
  """
6296
6296
  :param str image_type: The OS image to be used for each node in a node pool.
6297
6297
  Currently `cos`, `ubuntu`, `ubuntu_containerd` and `windows` are supported.
@@ -6310,7 +6310,7 @@ class VMwareNodePoolConfig(dict):
6310
6310
  :param int replicas: The number of nodes in the node pool.
6311
6311
  :param Sequence['VMwareNodePoolConfigTaintArgs'] taints: The initial taints assigned to nodes of this node pool.
6312
6312
  Structure is documented below.
6313
- :param Sequence['VMwareNodePoolConfigVsphereConfigArgs'] vsphere_configs: Specifies the vSphere config for node pool.
6313
+ :param 'VMwareNodePoolConfigVsphereConfigArgs' vsphere_config: Specifies the vSphere config for node pool.
6314
6314
  Structure is documented below.
6315
6315
  """
6316
6316
  pulumi.set(__self__, "image_type", image_type)
@@ -6330,8 +6330,8 @@ class VMwareNodePoolConfig(dict):
6330
6330
  pulumi.set(__self__, "replicas", replicas)
6331
6331
  if taints is not None:
6332
6332
  pulumi.set(__self__, "taints", taints)
6333
- if vsphere_configs is not None:
6334
- pulumi.set(__self__, "vsphere_configs", vsphere_configs)
6333
+ if vsphere_config is not None:
6334
+ pulumi.set(__self__, "vsphere_config", vsphere_config)
6335
6335
 
6336
6336
  @property
6337
6337
  @pulumi.getter(name="imageType")
@@ -6414,13 +6414,13 @@ class VMwareNodePoolConfig(dict):
6414
6414
  return pulumi.get(self, "taints")
6415
6415
 
6416
6416
  @property
6417
- @pulumi.getter(name="vsphereConfigs")
6418
- def vsphere_configs(self) -> Optional[Sequence['outputs.VMwareNodePoolConfigVsphereConfig']]:
6417
+ @pulumi.getter(name="vsphereConfig")
6418
+ def vsphere_config(self) -> Optional['outputs.VMwareNodePoolConfigVsphereConfig']:
6419
6419
  """
6420
6420
  Specifies the vSphere config for node pool.
6421
6421
  Structure is documented below.
6422
6422
  """
6423
- return pulumi.get(self, "vsphere_configs")
6423
+ return pulumi.get(self, "vsphere_config")
6424
6424
 
6425
6425
 
6426
6426
  @pulumi.output_type
@@ -39,7 +39,7 @@ class VMwareClusterArgs:
39
39
  project: Optional[pulumi.Input[str]] = None,
40
40
  storage: Optional[pulumi.Input['VMwareClusterStorageArgs']] = None,
41
41
  upgrade_policy: Optional[pulumi.Input['VMwareClusterUpgradePolicyArgs']] = None,
42
- vcenters: Optional[pulumi.Input[Sequence[pulumi.Input['VMwareClusterVcenterArgs']]]] = None,
42
+ vcenter: Optional[pulumi.Input['VMwareClusterVcenterArgs']] = None,
43
43
  vm_tracking_enabled: Optional[pulumi.Input[bool]] = None):
44
44
  """
45
45
  The set of arguments for constructing a VMwareCluster resource.
@@ -70,7 +70,7 @@ class VMwareClusterArgs:
70
70
  :param pulumi.Input['VMwareClusterNetworkConfigArgs'] network_config: The VMware User Cluster network configuration.
71
71
  :param pulumi.Input['VMwareClusterStorageArgs'] storage: Storage configuration.
72
72
  :param pulumi.Input['VMwareClusterUpgradePolicyArgs'] upgrade_policy: Specifies upgrade policy for the cluster.
73
- :param pulumi.Input[Sequence[pulumi.Input['VMwareClusterVcenterArgs']]] vcenters: VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
73
+ :param pulumi.Input['VMwareClusterVcenterArgs'] vcenter: VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
74
74
  :param pulumi.Input[bool] vm_tracking_enabled: Enable VM tracking.
75
75
  """
76
76
  pulumi.set(__self__, "admin_cluster_membership", admin_cluster_membership)
@@ -105,8 +105,8 @@ class VMwareClusterArgs:
105
105
  pulumi.set(__self__, "storage", storage)
106
106
  if upgrade_policy is not None:
107
107
  pulumi.set(__self__, "upgrade_policy", upgrade_policy)
108
- if vcenters is not None:
109
- pulumi.set(__self__, "vcenters", vcenters)
108
+ if vcenter is not None:
109
+ pulumi.set(__self__, "vcenter", vcenter)
110
110
  if vm_tracking_enabled is not None:
111
111
  pulumi.set(__self__, "vm_tracking_enabled", vm_tracking_enabled)
112
112
 
@@ -335,15 +335,15 @@ class VMwareClusterArgs:
335
335
 
336
336
  @property
337
337
  @pulumi.getter
338
- def vcenters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VMwareClusterVcenterArgs']]]]:
338
+ def vcenter(self) -> Optional[pulumi.Input['VMwareClusterVcenterArgs']]:
339
339
  """
340
340
  VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
341
341
  """
342
- return pulumi.get(self, "vcenters")
342
+ return pulumi.get(self, "vcenter")
343
343
 
344
- @vcenters.setter
345
- def vcenters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VMwareClusterVcenterArgs']]]]):
346
- pulumi.set(self, "vcenters", value)
344
+ @vcenter.setter
345
+ def vcenter(self, value: Optional[pulumi.Input['VMwareClusterVcenterArgs']]):
346
+ pulumi.set(self, "vcenter", value)
347
347
 
348
348
  @property
349
349
  @pulumi.getter(name="vmTrackingEnabled")
@@ -392,7 +392,7 @@ class _VMwareClusterState:
392
392
  update_time: Optional[pulumi.Input[str]] = None,
393
393
  upgrade_policy: Optional[pulumi.Input['VMwareClusterUpgradePolicyArgs']] = None,
394
394
  validation_checks: Optional[pulumi.Input[Sequence[pulumi.Input['VMwareClusterValidationCheckArgs']]]] = None,
395
- vcenters: Optional[pulumi.Input[Sequence[pulumi.Input['VMwareClusterVcenterArgs']]]] = None,
395
+ vcenter: Optional[pulumi.Input['VMwareClusterVcenterArgs']] = None,
396
396
  vm_tracking_enabled: Optional[pulumi.Input[bool]] = None):
397
397
  """
398
398
  Input properties used for looking up and filtering VMwareCluster resources.
@@ -453,7 +453,7 @@ class _VMwareClusterState:
453
453
  :param pulumi.Input['VMwareClusterUpgradePolicyArgs'] upgrade_policy: Specifies upgrade policy for the cluster.
454
454
  :param pulumi.Input[Sequence[pulumi.Input['VMwareClusterValidationCheckArgs']]] validation_checks: ValidationCheck represents the result of the preflight check job.
455
455
  Structure is documented below.
456
- :param pulumi.Input[Sequence[pulumi.Input['VMwareClusterVcenterArgs']]] vcenters: VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
456
+ :param pulumi.Input['VMwareClusterVcenterArgs'] vcenter: VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
457
457
  :param pulumi.Input[bool] vm_tracking_enabled: Enable VM tracking.
458
458
  """
459
459
  if admin_cluster_membership is not None:
@@ -518,8 +518,8 @@ class _VMwareClusterState:
518
518
  pulumi.set(__self__, "upgrade_policy", upgrade_policy)
519
519
  if validation_checks is not None:
520
520
  pulumi.set(__self__, "validation_checks", validation_checks)
521
- if vcenters is not None:
522
- pulumi.set(__self__, "vcenters", vcenters)
521
+ if vcenter is not None:
522
+ pulumi.set(__self__, "vcenter", vcenter)
523
523
  if vm_tracking_enabled is not None:
524
524
  pulumi.set(__self__, "vm_tracking_enabled", vm_tracking_enabled)
525
525
 
@@ -919,15 +919,15 @@ class _VMwareClusterState:
919
919
 
920
920
  @property
921
921
  @pulumi.getter
922
- def vcenters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['VMwareClusterVcenterArgs']]]]:
922
+ def vcenter(self) -> Optional[pulumi.Input['VMwareClusterVcenterArgs']]:
923
923
  """
924
924
  VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
925
925
  """
926
- return pulumi.get(self, "vcenters")
926
+ return pulumi.get(self, "vcenter")
927
927
 
928
- @vcenters.setter
929
- def vcenters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['VMwareClusterVcenterArgs']]]]):
930
- pulumi.set(self, "vcenters", value)
928
+ @vcenter.setter
929
+ def vcenter(self, value: Optional[pulumi.Input['VMwareClusterVcenterArgs']]):
930
+ pulumi.set(self, "vcenter", value)
931
931
 
932
932
  @property
933
933
  @pulumi.getter(name="vmTrackingEnabled")
@@ -965,7 +965,7 @@ class VMwareCluster(pulumi.CustomResource):
965
965
  project: Optional[pulumi.Input[str]] = None,
966
966
  storage: Optional[pulumi.Input[Union['VMwareClusterStorageArgs', 'VMwareClusterStorageArgsDict']]] = None,
967
967
  upgrade_policy: Optional[pulumi.Input[Union['VMwareClusterUpgradePolicyArgs', 'VMwareClusterUpgradePolicyArgsDict']]] = None,
968
- vcenters: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VMwareClusterVcenterArgs', 'VMwareClusterVcenterArgsDict']]]]] = None,
968
+ vcenter: Optional[pulumi.Input[Union['VMwareClusterVcenterArgs', 'VMwareClusterVcenterArgsDict']]] = None,
969
969
  vm_tracking_enabled: Optional[pulumi.Input[bool]] = None,
970
970
  __props__=None):
971
971
  """
@@ -1160,7 +1160,7 @@ class VMwareCluster(pulumi.CustomResource):
1160
1160
  "konnectivity_server_node_port": 30008,
1161
1161
  },
1162
1162
  },
1163
- vcenters=[{
1163
+ vcenter={
1164
1164
  "resource_pool": "test-resource-pool",
1165
1165
  "datastore": "test-datastore",
1166
1166
  "datacenter": "test-datacenter",
@@ -1168,7 +1168,7 @@ class VMwareCluster(pulumi.CustomResource):
1168
1168
  "folder": "test-folder",
1169
1169
  "ca_cert_data": "test-ca-cert-data",
1170
1170
  "storage_policy_name": "test-storage-policy-name",
1171
- }],
1171
+ },
1172
1172
  dataplane_v2={
1173
1173
  "dataplane_v2_enabled": True,
1174
1174
  "windows_dataplane_v2_enabled": True,
@@ -1245,7 +1245,7 @@ class VMwareCluster(pulumi.CustomResource):
1245
1245
  :param pulumi.Input[str] on_prem_version: The Anthos clusters on the VMware version for your user cluster.
1246
1246
  :param pulumi.Input[Union['VMwareClusterStorageArgs', 'VMwareClusterStorageArgsDict']] storage: Storage configuration.
1247
1247
  :param pulumi.Input[Union['VMwareClusterUpgradePolicyArgs', 'VMwareClusterUpgradePolicyArgsDict']] upgrade_policy: Specifies upgrade policy for the cluster.
1248
- :param pulumi.Input[Sequence[pulumi.Input[Union['VMwareClusterVcenterArgs', 'VMwareClusterVcenterArgsDict']]]] vcenters: VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
1248
+ :param pulumi.Input[Union['VMwareClusterVcenterArgs', 'VMwareClusterVcenterArgsDict']] vcenter: VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
1249
1249
  :param pulumi.Input[bool] vm_tracking_enabled: Enable VM tracking.
1250
1250
  """
1251
1251
  ...
@@ -1446,7 +1446,7 @@ class VMwareCluster(pulumi.CustomResource):
1446
1446
  "konnectivity_server_node_port": 30008,
1447
1447
  },
1448
1448
  },
1449
- vcenters=[{
1449
+ vcenter={
1450
1450
  "resource_pool": "test-resource-pool",
1451
1451
  "datastore": "test-datastore",
1452
1452
  "datacenter": "test-datacenter",
@@ -1454,7 +1454,7 @@ class VMwareCluster(pulumi.CustomResource):
1454
1454
  "folder": "test-folder",
1455
1455
  "ca_cert_data": "test-ca-cert-data",
1456
1456
  "storage_policy_name": "test-storage-policy-name",
1457
- }],
1457
+ },
1458
1458
  dataplane_v2={
1459
1459
  "dataplane_v2_enabled": True,
1460
1460
  "windows_dataplane_v2_enabled": True,
@@ -1535,7 +1535,7 @@ class VMwareCluster(pulumi.CustomResource):
1535
1535
  project: Optional[pulumi.Input[str]] = None,
1536
1536
  storage: Optional[pulumi.Input[Union['VMwareClusterStorageArgs', 'VMwareClusterStorageArgsDict']]] = None,
1537
1537
  upgrade_policy: Optional[pulumi.Input[Union['VMwareClusterUpgradePolicyArgs', 'VMwareClusterUpgradePolicyArgsDict']]] = None,
1538
- vcenters: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VMwareClusterVcenterArgs', 'VMwareClusterVcenterArgsDict']]]]] = None,
1538
+ vcenter: Optional[pulumi.Input[Union['VMwareClusterVcenterArgs', 'VMwareClusterVcenterArgsDict']]] = None,
1539
1539
  vm_tracking_enabled: Optional[pulumi.Input[bool]] = None,
1540
1540
  __props__=None):
1541
1541
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -1572,7 +1572,7 @@ class VMwareCluster(pulumi.CustomResource):
1572
1572
  __props__.__dict__["project"] = project
1573
1573
  __props__.__dict__["storage"] = storage
1574
1574
  __props__.__dict__["upgrade_policy"] = upgrade_policy
1575
- __props__.__dict__["vcenters"] = vcenters
1575
+ __props__.__dict__["vcenter"] = vcenter
1576
1576
  __props__.__dict__["vm_tracking_enabled"] = vm_tracking_enabled
1577
1577
  __props__.__dict__["create_time"] = None
1578
1578
  __props__.__dict__["delete_time"] = None
@@ -1628,7 +1628,7 @@ class VMwareCluster(pulumi.CustomResource):
1628
1628
  update_time: Optional[pulumi.Input[str]] = None,
1629
1629
  upgrade_policy: Optional[pulumi.Input[Union['VMwareClusterUpgradePolicyArgs', 'VMwareClusterUpgradePolicyArgsDict']]] = None,
1630
1630
  validation_checks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VMwareClusterValidationCheckArgs', 'VMwareClusterValidationCheckArgsDict']]]]] = None,
1631
- vcenters: Optional[pulumi.Input[Sequence[pulumi.Input[Union['VMwareClusterVcenterArgs', 'VMwareClusterVcenterArgsDict']]]]] = None,
1631
+ vcenter: Optional[pulumi.Input[Union['VMwareClusterVcenterArgs', 'VMwareClusterVcenterArgsDict']]] = None,
1632
1632
  vm_tracking_enabled: Optional[pulumi.Input[bool]] = None) -> 'VMwareCluster':
1633
1633
  """
1634
1634
  Get an existing VMwareCluster resource's state with the given name, id, and optional extra
@@ -1694,7 +1694,7 @@ class VMwareCluster(pulumi.CustomResource):
1694
1694
  :param pulumi.Input[Union['VMwareClusterUpgradePolicyArgs', 'VMwareClusterUpgradePolicyArgsDict']] upgrade_policy: Specifies upgrade policy for the cluster.
1695
1695
  :param pulumi.Input[Sequence[pulumi.Input[Union['VMwareClusterValidationCheckArgs', 'VMwareClusterValidationCheckArgsDict']]]] validation_checks: ValidationCheck represents the result of the preflight check job.
1696
1696
  Structure is documented below.
1697
- :param pulumi.Input[Sequence[pulumi.Input[Union['VMwareClusterVcenterArgs', 'VMwareClusterVcenterArgsDict']]]] vcenters: VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
1697
+ :param pulumi.Input[Union['VMwareClusterVcenterArgs', 'VMwareClusterVcenterArgsDict']] vcenter: VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
1698
1698
  :param pulumi.Input[bool] vm_tracking_enabled: Enable VM tracking.
1699
1699
  """
1700
1700
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -1732,7 +1732,7 @@ class VMwareCluster(pulumi.CustomResource):
1732
1732
  __props__.__dict__["update_time"] = update_time
1733
1733
  __props__.__dict__["upgrade_policy"] = upgrade_policy
1734
1734
  __props__.__dict__["validation_checks"] = validation_checks
1735
- __props__.__dict__["vcenters"] = vcenters
1735
+ __props__.__dict__["vcenter"] = vcenter
1736
1736
  __props__.__dict__["vm_tracking_enabled"] = vm_tracking_enabled
1737
1737
  return VMwareCluster(resource_name, opts=opts, __props__=__props__)
1738
1738
 
@@ -2008,11 +2008,11 @@ class VMwareCluster(pulumi.CustomResource):
2008
2008
 
2009
2009
  @property
2010
2010
  @pulumi.getter
2011
- def vcenters(self) -> pulumi.Output[Optional[Sequence['outputs.VMwareClusterVcenter']]]:
2011
+ def vcenter(self) -> pulumi.Output[Optional['outputs.VMwareClusterVcenter']]:
2012
2012
  """
2013
2013
  VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster.
2014
2014
  """
2015
- return pulumi.get(self, "vcenters")
2015
+ return pulumi.get(self, "vcenter")
2016
2016
 
2017
2017
  @property
2018
2018
  @pulumi.getter(name="vmTrackingEnabled")
@@ -544,6 +544,99 @@ class VMwareNodePool(pulumi.CustomResource):
544
544
  "enable_load_balancer": True,
545
545
  })
546
546
  ```
547
+ ### Gkeonprem Vmware Node Pool Full
548
+
549
+ ```python
550
+ import pulumi
551
+ import pulumi_gcp as gcp
552
+
553
+ default_full = gcp.gkeonprem.VMwareCluster("default-full",
554
+ name="my-cluster",
555
+ location="us-west1",
556
+ admin_cluster_membership="projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
557
+ description="test cluster",
558
+ on_prem_version="1.13.1-gke.35",
559
+ network_config={
560
+ "service_address_cidr_blocks": ["10.96.0.0/12"],
561
+ "pod_address_cidr_blocks": ["192.168.0.0/16"],
562
+ "dhcp_ip_config": {
563
+ "enabled": True,
564
+ },
565
+ },
566
+ control_plane_node={
567
+ "cpus": 4,
568
+ "memory": 8192,
569
+ "replicas": 1,
570
+ },
571
+ load_balancer={
572
+ "vip_config": {
573
+ "control_plane_vip": "10.251.133.5",
574
+ "ingress_vip": "10.251.135.19",
575
+ },
576
+ "metal_lb_config": {
577
+ "address_pools": [
578
+ {
579
+ "pool": "ingress-ip",
580
+ "manual_assign": True,
581
+ "addresses": ["10.251.135.19"],
582
+ },
583
+ {
584
+ "pool": "lb-test-ip",
585
+ "manual_assign": True,
586
+ "addresses": ["10.251.135.19"],
587
+ },
588
+ ],
589
+ },
590
+ })
591
+ nodepool_full = gcp.gkeonprem.VMwareNodePool("nodepool-full",
592
+ name="my-nodepool",
593
+ location="us-west1",
594
+ vmware_cluster=default_full.name,
595
+ annotations={},
596
+ config={
597
+ "cpus": 4,
598
+ "memory_mb": 8196,
599
+ "replicas": 3,
600
+ "image_type": "ubuntu_containerd",
601
+ "image": "image",
602
+ "boot_disk_size_gb": 10,
603
+ "taints": [
604
+ {
605
+ "key": "key",
606
+ "value": "value",
607
+ },
608
+ {
609
+ "key": "key",
610
+ "value": "value",
611
+ "effect": "NO_SCHEDULE",
612
+ },
613
+ ],
614
+ "labels": {},
615
+ "vsphere_config": {
616
+ "datastore": "test-datastore",
617
+ "tags": [
618
+ {
619
+ "category": "test-category-1",
620
+ "tag": "tag-1",
621
+ },
622
+ {
623
+ "category": "test-category-2",
624
+ "tag": "tag-2",
625
+ },
626
+ ],
627
+ "host_groups": [
628
+ "host1",
629
+ "host2",
630
+ ],
631
+ },
632
+ "enable_load_balancer": True,
633
+ },
634
+ node_pool_autoscaling={
635
+ "min_replicas": 1,
636
+ "max_replicas": 5,
637
+ })
638
+ ```
639
+
547
640
  ## Import
548
641
 
549
642
  VmwareNodePool can be imported using any of these accepted formats:
@@ -649,6 +742,99 @@ class VMwareNodePool(pulumi.CustomResource):
649
742
  "enable_load_balancer": True,
650
743
  })
651
744
  ```
745
+ ### Gkeonprem Vmware Node Pool Full
746
+
747
+ ```python
748
+ import pulumi
749
+ import pulumi_gcp as gcp
750
+
751
+ default_full = gcp.gkeonprem.VMwareCluster("default-full",
752
+ name="my-cluster",
753
+ location="us-west1",
754
+ admin_cluster_membership="projects/870316890899/locations/global/memberships/gkeonprem-terraform-test",
755
+ description="test cluster",
756
+ on_prem_version="1.13.1-gke.35",
757
+ network_config={
758
+ "service_address_cidr_blocks": ["10.96.0.0/12"],
759
+ "pod_address_cidr_blocks": ["192.168.0.0/16"],
760
+ "dhcp_ip_config": {
761
+ "enabled": True,
762
+ },
763
+ },
764
+ control_plane_node={
765
+ "cpus": 4,
766
+ "memory": 8192,
767
+ "replicas": 1,
768
+ },
769
+ load_balancer={
770
+ "vip_config": {
771
+ "control_plane_vip": "10.251.133.5",
772
+ "ingress_vip": "10.251.135.19",
773
+ },
774
+ "metal_lb_config": {
775
+ "address_pools": [
776
+ {
777
+ "pool": "ingress-ip",
778
+ "manual_assign": True,
779
+ "addresses": ["10.251.135.19"],
780
+ },
781
+ {
782
+ "pool": "lb-test-ip",
783
+ "manual_assign": True,
784
+ "addresses": ["10.251.135.19"],
785
+ },
786
+ ],
787
+ },
788
+ })
789
+ nodepool_full = gcp.gkeonprem.VMwareNodePool("nodepool-full",
790
+ name="my-nodepool",
791
+ location="us-west1",
792
+ vmware_cluster=default_full.name,
793
+ annotations={},
794
+ config={
795
+ "cpus": 4,
796
+ "memory_mb": 8196,
797
+ "replicas": 3,
798
+ "image_type": "ubuntu_containerd",
799
+ "image": "image",
800
+ "boot_disk_size_gb": 10,
801
+ "taints": [
802
+ {
803
+ "key": "key",
804
+ "value": "value",
805
+ },
806
+ {
807
+ "key": "key",
808
+ "value": "value",
809
+ "effect": "NO_SCHEDULE",
810
+ },
811
+ ],
812
+ "labels": {},
813
+ "vsphere_config": {
814
+ "datastore": "test-datastore",
815
+ "tags": [
816
+ {
817
+ "category": "test-category-1",
818
+ "tag": "tag-1",
819
+ },
820
+ {
821
+ "category": "test-category-2",
822
+ "tag": "tag-2",
823
+ },
824
+ ],
825
+ "host_groups": [
826
+ "host1",
827
+ "host2",
828
+ ],
829
+ },
830
+ "enable_load_balancer": True,
831
+ },
832
+ node_pool_autoscaling={
833
+ "min_replicas": 1,
834
+ "max_replicas": 5,
835
+ })
836
+ ```
837
+
652
838
  ## Import
653
839
 
654
840
  VmwareNodePool can be imported using any of these accepted formats:
@@ -208,7 +208,8 @@ class AccessBoundaryPolicy(pulumi.CustomResource):
208
208
  project_id="my-project",
209
209
  name="my-project",
210
210
  org_id="123456789",
211
- billing_account="000000-0000000-0000000-000000")
211
+ billing_account="000000-0000000-0000000-000000",
212
+ deletion_policy="DELETE")
212
213
  access_policy = gcp.accesscontextmanager.AccessPolicy("access-policy",
213
214
  parent=project.org_id.apply(lambda org_id: f"organizations/{org_id}"),
214
215
  title="my policy")
@@ -296,7 +297,8 @@ class AccessBoundaryPolicy(pulumi.CustomResource):
296
297
  project_id="my-project",
297
298
  name="my-project",
298
299
  org_id="123456789",
299
- billing_account="000000-0000000-0000000-000000")
300
+ billing_account="000000-0000000-0000000-000000",
301
+ deletion_policy="DELETE")
300
302
  access_policy = gcp.accesscontextmanager.AccessPolicy("access-policy",
301
303
  parent=project.org_id.apply(lambda org_id: f"organizations/{org_id}"),
302
304
  title="my policy")
@@ -212,7 +212,8 @@ class DenyPolicy(pulumi.CustomResource):
212
212
  project_id="my-project",
213
213
  name="my-project",
214
214
  org_id="123456789",
215
- billing_account="000000-0000000-0000000-000000")
215
+ billing_account="000000-0000000-0000000-000000",
216
+ deletion_policy="DELETE")
216
217
  test_account = gcp.serviceaccount.Account("test-account",
217
218
  account_id="svc-acc",
218
219
  display_name="Test Service Account",
@@ -296,7 +297,8 @@ class DenyPolicy(pulumi.CustomResource):
296
297
  project_id="my-project",
297
298
  name="my-project",
298
299
  org_id="123456789",
299
- billing_account="000000-0000000-0000000-000000")
300
+ billing_account="000000-0000000-0000000-000000",
301
+ deletion_policy="DELETE")
300
302
  test_account = gcp.serviceaccount.Account("test-account",
301
303
  account_id="svc-acc",
302
304
  display_name="Test Service Account",
@@ -120,13 +120,6 @@ def get_workload_identity_pool(project: Optional[str] = None,
120
120
  > **Note:** The following resource requires the Beta IAM role `roles/iam.workloadIdentityPoolAdmin` in order to succeed. `OWNER` and `EDITOR` roles do not include the necessary permissions.
121
121
  ## Example Usage
122
122
 
123
- ```python
124
- import pulumi
125
- import pulumi_gcp as gcp
126
-
127
- foo = gcp.iam.get_workload_identity_pool(workload_identity_pool_id="foo-pool")
128
- ```
129
-
130
123
 
131
124
  :param str project: The project in which the resource belongs. If it
132
125
  is not provided, the provider project is used.
@@ -161,13 +154,6 @@ def get_workload_identity_pool_output(project: Optional[pulumi.Input[Optional[st
161
154
  > **Note:** The following resource requires the Beta IAM role `roles/iam.workloadIdentityPoolAdmin` in order to succeed. `OWNER` and `EDITOR` roles do not include the necessary permissions.
162
155
  ## Example Usage
163
156
 
164
- ```python
165
- import pulumi
166
- import pulumi_gcp as gcp
167
-
168
- foo = gcp.iam.get_workload_identity_pool(workload_identity_pool_id="foo-pool")
169
- ```
170
-
171
157
 
172
158
  :param str project: The project in which the resource belongs. If it
173
159
  is not provided, the provider project is used.