pulumi-gcp 7.39.0a1726207510__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.0a1726207510.dist-info → pulumi_gcp-8.0.0.dist-info}/METADATA +1 -1
  125. {pulumi_gcp-7.39.0a1726207510.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.0a1726207510.dist-info → pulumi_gcp-8.0.0.dist-info}/WHEEL +0 -0
  132. {pulumi_gcp-7.39.0a1726207510.dist-info → pulumi_gcp-8.0.0.dist-info}/top_level.txt +0 -0
@@ -20,7 +20,8 @@ __all__ = ['FolderArgs', 'Folder']
20
20
  class FolderArgs:
21
21
  def __init__(__self__, *,
22
22
  display_name: pulumi.Input[str],
23
- parent: pulumi.Input[str]):
23
+ parent: pulumi.Input[str],
24
+ deletion_protection: Optional[pulumi.Input[bool]] = None):
24
25
  """
25
26
  The set of arguments for constructing a Folder resource.
26
27
  :param pulumi.Input[str] display_name: The folder’s display name.
@@ -30,6 +31,8 @@ class FolderArgs:
30
31
  """
31
32
  pulumi.set(__self__, "display_name", display_name)
32
33
  pulumi.set(__self__, "parent", parent)
34
+ if deletion_protection is not None:
35
+ pulumi.set(__self__, "deletion_protection", deletion_protection)
33
36
 
34
37
  @property
35
38
  @pulumi.getter(name="displayName")
@@ -57,11 +60,21 @@ class FolderArgs:
57
60
  def parent(self, value: pulumi.Input[str]):
58
61
  pulumi.set(self, "parent", value)
59
62
 
63
+ @property
64
+ @pulumi.getter(name="deletionProtection")
65
+ def deletion_protection(self) -> Optional[pulumi.Input[bool]]:
66
+ return pulumi.get(self, "deletion_protection")
67
+
68
+ @deletion_protection.setter
69
+ def deletion_protection(self, value: Optional[pulumi.Input[bool]]):
70
+ pulumi.set(self, "deletion_protection", value)
71
+
60
72
 
61
73
  @pulumi.input_type
62
74
  class _FolderState:
63
75
  def __init__(__self__, *,
64
76
  create_time: Optional[pulumi.Input[str]] = None,
77
+ deletion_protection: Optional[pulumi.Input[bool]] = None,
65
78
  display_name: Optional[pulumi.Input[str]] = None,
66
79
  folder_id: Optional[pulumi.Input[str]] = None,
67
80
  lifecycle_state: Optional[pulumi.Input[str]] = None,
@@ -81,6 +94,8 @@ class _FolderState:
81
94
  """
82
95
  if create_time is not None:
83
96
  pulumi.set(__self__, "create_time", create_time)
97
+ if deletion_protection is not None:
98
+ pulumi.set(__self__, "deletion_protection", deletion_protection)
84
99
  if display_name is not None:
85
100
  pulumi.set(__self__, "display_name", display_name)
86
101
  if folder_id is not None:
@@ -105,6 +120,15 @@ class _FolderState:
105
120
  def create_time(self, value: Optional[pulumi.Input[str]]):
106
121
  pulumi.set(self, "create_time", value)
107
122
 
123
+ @property
124
+ @pulumi.getter(name="deletionProtection")
125
+ def deletion_protection(self) -> Optional[pulumi.Input[bool]]:
126
+ return pulumi.get(self, "deletion_protection")
127
+
128
+ @deletion_protection.setter
129
+ def deletion_protection(self, value: Optional[pulumi.Input[bool]]):
130
+ pulumi.set(self, "deletion_protection", value)
131
+
108
132
  @property
109
133
  @pulumi.getter(name="displayName")
110
134
  def display_name(self) -> Optional[pulumi.Input[str]]:
@@ -173,6 +197,7 @@ class Folder(pulumi.CustomResource):
173
197
  def __init__(__self__,
174
198
  resource_name: str,
175
199
  opts: Optional[pulumi.ResourceOptions] = None,
200
+ deletion_protection: Optional[pulumi.Input[bool]] = None,
176
201
  display_name: Optional[pulumi.Input[str]] = None,
177
202
  parent: Optional[pulumi.Input[str]] = None,
178
203
  __props__=None):
@@ -302,6 +327,7 @@ class Folder(pulumi.CustomResource):
302
327
  def _internal_init(__self__,
303
328
  resource_name: str,
304
329
  opts: Optional[pulumi.ResourceOptions] = None,
330
+ deletion_protection: Optional[pulumi.Input[bool]] = None,
305
331
  display_name: Optional[pulumi.Input[str]] = None,
306
332
  parent: Optional[pulumi.Input[str]] = None,
307
333
  __props__=None):
@@ -313,6 +339,7 @@ class Folder(pulumi.CustomResource):
313
339
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
314
340
  __props__ = FolderArgs.__new__(FolderArgs)
315
341
 
342
+ __props__.__dict__["deletion_protection"] = deletion_protection
316
343
  if display_name is None and not opts.urn:
317
344
  raise TypeError("Missing required property 'display_name'")
318
345
  __props__.__dict__["display_name"] = display_name
@@ -334,6 +361,7 @@ class Folder(pulumi.CustomResource):
334
361
  id: pulumi.Input[str],
335
362
  opts: Optional[pulumi.ResourceOptions] = None,
336
363
  create_time: Optional[pulumi.Input[str]] = None,
364
+ deletion_protection: Optional[pulumi.Input[bool]] = None,
337
365
  display_name: Optional[pulumi.Input[str]] = None,
338
366
  folder_id: Optional[pulumi.Input[str]] = None,
339
367
  lifecycle_state: Optional[pulumi.Input[str]] = None,
@@ -361,6 +389,7 @@ class Folder(pulumi.CustomResource):
361
389
  __props__ = _FolderState.__new__(_FolderState)
362
390
 
363
391
  __props__.__dict__["create_time"] = create_time
392
+ __props__.__dict__["deletion_protection"] = deletion_protection
364
393
  __props__.__dict__["display_name"] = display_name
365
394
  __props__.__dict__["folder_id"] = folder_id
366
395
  __props__.__dict__["lifecycle_state"] = lifecycle_state
@@ -377,6 +406,11 @@ class Folder(pulumi.CustomResource):
377
406
  """
378
407
  return pulumi.get(self, "create_time")
379
408
 
409
+ @property
410
+ @pulumi.getter(name="deletionProtection")
411
+ def deletion_protection(self) -> pulumi.Output[Optional[bool]]:
412
+ return pulumi.get(self, "deletion_protection")
413
+
380
414
  @property
381
415
  @pulumi.getter(name="displayName")
382
416
  def display_name(self) -> pulumi.Output[str]:
@@ -26,10 +26,13 @@ class GetClientConfigResult:
26
26
  """
27
27
  A collection of values returned by getClientConfig.
28
28
  """
29
- def __init__(__self__, access_token=None, id=None, project=None, region=None, zone=None):
29
+ def __init__(__self__, access_token=None, default_labels=None, id=None, project=None, region=None, zone=None):
30
30
  if access_token and not isinstance(access_token, str):
31
31
  raise TypeError("Expected argument 'access_token' to be a str")
32
32
  pulumi.set(__self__, "access_token", access_token)
33
+ if default_labels and not isinstance(default_labels, dict):
34
+ raise TypeError("Expected argument 'default_labels' to be a dict")
35
+ pulumi.set(__self__, "default_labels", default_labels)
33
36
  if id and not isinstance(id, str):
34
37
  raise TypeError("Expected argument 'id' to be a str")
35
38
  pulumi.set(__self__, "id", id)
@@ -51,6 +54,14 @@ class GetClientConfigResult:
51
54
  """
52
55
  return pulumi.get(self, "access_token")
53
56
 
57
+ @property
58
+ @pulumi.getter(name="defaultLabels")
59
+ def default_labels(self) -> Mapping[str, str]:
60
+ """
61
+ The default labels configured on the provider.
62
+ """
63
+ return pulumi.get(self, "default_labels")
64
+
54
65
  @property
55
66
  @pulumi.getter
56
67
  def id(self) -> str:
@@ -88,6 +99,7 @@ class AwaitableGetClientConfigResult(GetClientConfigResult):
88
99
  yield self
89
100
  return GetClientConfigResult(
90
101
  access_token=self.access_token,
102
+ default_labels=self.default_labels,
91
103
  id=self.id,
92
104
  project=self.project,
93
105
  region=self.region,
@@ -112,6 +124,7 @@ def get_client_config(opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableG
112
124
 
113
125
  return AwaitableGetClientConfigResult(
114
126
  access_token=pulumi.get(__ret__, 'access_token'),
127
+ default_labels=pulumi.get(__ret__, 'default_labels'),
115
128
  id=pulumi.get(__ret__, 'id'),
116
129
  project=pulumi.get(__ret__, 'project'),
117
130
  region=pulumi.get(__ret__, 'region'),
@@ -26,10 +26,13 @@ class GetFolderResult:
26
26
  """
27
27
  A collection of values returned by getFolder.
28
28
  """
29
- def __init__(__self__, create_time=None, display_name=None, folder=None, folder_id=None, id=None, lifecycle_state=None, lookup_organization=None, name=None, organization=None, parent=None):
29
+ def __init__(__self__, create_time=None, deletion_protection=None, display_name=None, folder=None, folder_id=None, id=None, lifecycle_state=None, lookup_organization=None, name=None, organization=None, parent=None):
30
30
  if create_time and not isinstance(create_time, str):
31
31
  raise TypeError("Expected argument 'create_time' to be a str")
32
32
  pulumi.set(__self__, "create_time", create_time)
33
+ if deletion_protection and not isinstance(deletion_protection, bool):
34
+ raise TypeError("Expected argument 'deletion_protection' to be a bool")
35
+ pulumi.set(__self__, "deletion_protection", deletion_protection)
33
36
  if display_name and not isinstance(display_name, str):
34
37
  raise TypeError("Expected argument 'display_name' to be a str")
35
38
  pulumi.set(__self__, "display_name", display_name)
@@ -66,6 +69,11 @@ class GetFolderResult:
66
69
  """
67
70
  return pulumi.get(self, "create_time")
68
71
 
72
+ @property
73
+ @pulumi.getter(name="deletionProtection")
74
+ def deletion_protection(self) -> bool:
75
+ return pulumi.get(self, "deletion_protection")
76
+
69
77
  @property
70
78
  @pulumi.getter(name="displayName")
71
79
  def display_name(self) -> str:
@@ -137,6 +145,7 @@ class AwaitableGetFolderResult(GetFolderResult):
137
145
  yield self
138
146
  return GetFolderResult(
139
147
  create_time=self.create_time,
148
+ deletion_protection=self.deletion_protection,
140
149
  display_name=self.display_name,
141
150
  folder=self.folder,
142
151
  folder_id=self.folder_id,
@@ -177,6 +186,7 @@ def get_folder(folder: Optional[str] = None,
177
186
 
178
187
  return AwaitableGetFolderResult(
179
188
  create_time=pulumi.get(__ret__, 'create_time'),
189
+ deletion_protection=pulumi.get(__ret__, 'deletion_protection'),
180
190
  display_name=pulumi.get(__ret__, 'display_name'),
181
191
  folder=pulumi.get(__ret__, 'folder'),
182
192
  folder_id=pulumi.get(__ret__, 'folder_id'),
@@ -26,7 +26,7 @@ class GetProjectResult:
26
26
  """
27
27
  A collection of values returned by getProject.
28
28
  """
29
- def __init__(__self__, auto_create_network=None, billing_account=None, deletion_policy=None, effective_labels=None, folder_id=None, id=None, labels=None, name=None, number=None, org_id=None, project_id=None, pulumi_labels=None, skip_delete=None):
29
+ def __init__(__self__, auto_create_network=None, billing_account=None, deletion_policy=None, effective_labels=None, folder_id=None, id=None, labels=None, name=None, number=None, org_id=None, project_id=None, pulumi_labels=None):
30
30
  if auto_create_network and not isinstance(auto_create_network, bool):
31
31
  raise TypeError("Expected argument 'auto_create_network' to be a bool")
32
32
  pulumi.set(__self__, "auto_create_network", auto_create_network)
@@ -63,9 +63,6 @@ class GetProjectResult:
63
63
  if pulumi_labels and not isinstance(pulumi_labels, dict):
64
64
  raise TypeError("Expected argument 'pulumi_labels' to be a dict")
65
65
  pulumi.set(__self__, "pulumi_labels", pulumi_labels)
66
- if skip_delete and not isinstance(skip_delete, bool):
67
- raise TypeError("Expected argument 'skip_delete' to be a bool")
68
- pulumi.set(__self__, "skip_delete", skip_delete)
69
66
 
70
67
  @property
71
68
  @pulumi.getter(name="autoCreateNetwork")
@@ -133,11 +130,6 @@ class GetProjectResult:
133
130
  def pulumi_labels(self) -> Mapping[str, str]:
134
131
  return pulumi.get(self, "pulumi_labels")
135
132
 
136
- @property
137
- @pulumi.getter(name="skipDelete")
138
- def skip_delete(self) -> bool:
139
- return pulumi.get(self, "skip_delete")
140
-
141
133
 
142
134
  class AwaitableGetProjectResult(GetProjectResult):
143
135
  # pylint: disable=using-constant-test
@@ -156,8 +148,7 @@ class AwaitableGetProjectResult(GetProjectResult):
156
148
  number=self.number,
157
149
  org_id=self.org_id,
158
150
  project_id=self.project_id,
159
- pulumi_labels=self.pulumi_labels,
160
- skip_delete=self.skip_delete)
151
+ pulumi_labels=self.pulumi_labels)
161
152
 
162
153
 
163
154
  def get_project(project_id: Optional[str] = None,
@@ -197,8 +188,7 @@ def get_project(project_id: Optional[str] = None,
197
188
  number=pulumi.get(__ret__, 'number'),
198
189
  org_id=pulumi.get(__ret__, 'org_id'),
199
190
  project_id=pulumi.get(__ret__, 'project_id'),
200
- pulumi_labels=pulumi.get(__ret__, 'pulumi_labels'),
201
- skip_delete=pulumi.get(__ret__, 'skip_delete'))
191
+ pulumi_labels=pulumi.get(__ret__, 'pulumi_labels'))
202
192
 
203
193
 
204
194
  @_utilities.lift_output_func(get_project)
@@ -26,8 +26,7 @@ class ProjectArgs:
26
26
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
27
27
  name: Optional[pulumi.Input[str]] = None,
28
28
  org_id: Optional[pulumi.Input[str]] = None,
29
- project_id: Optional[pulumi.Input[str]] = None,
30
- skip_delete: Optional[pulumi.Input[bool]] = None):
29
+ project_id: Optional[pulumi.Input[str]] = None):
31
30
  """
32
31
  The set of arguments for constructing a Project resource.
33
32
  :param pulumi.Input[bool] auto_create_network: Create the 'default' network automatically. Default true. If set to false, the default network will be deleted. Note
@@ -54,11 +53,6 @@ class ProjectArgs:
54
53
  this forces the project to be migrated to the newly specified
55
54
  organization.
56
55
  :param pulumi.Input[str] project_id: The project ID. Changing this forces a new project to be created.
57
- :param pulumi.Input[bool] skip_delete: If true, the resource can be deleted without
58
- deleting the Project via the Google API. `skip_delete` is deprecated and will be
59
- removed in 6.0.0. Please use deletion_policy instead. A `skip_delete` value of `false`
60
- can be changed to a `deletion_policy` value of `DELETE` and a `skip_delete` value of `true`
61
- to a `deletion_policy` value of `ABANDON` for equivalent behavior.
62
56
  """
63
57
  if auto_create_network is not None:
64
58
  pulumi.set(__self__, "auto_create_network", auto_create_network)
@@ -76,11 +70,6 @@ class ProjectArgs:
76
70
  pulumi.set(__self__, "org_id", org_id)
77
71
  if project_id is not None:
78
72
  pulumi.set(__self__, "project_id", project_id)
79
- if skip_delete is not None:
80
- warnings.warn("""skip_delete is deprecated and will be removed in 6.0.0. Please use deletion_policy instead. A skip_delete value of false can be changed to a deletion_policy value of DELETE and a skip_delete value of true to a deletion_policy value of ABANDON for equivalent behavior.""", DeprecationWarning)
81
- pulumi.log.warn("""skip_delete is deprecated: skip_delete is deprecated and will be removed in 6.0.0. Please use deletion_policy instead. A skip_delete value of false can be changed to a deletion_policy value of DELETE and a skip_delete value of true to a deletion_policy value of ABANDON for equivalent behavior.""")
82
- if skip_delete is not None:
83
- pulumi.set(__self__, "skip_delete", skip_delete)
84
73
 
85
74
  @property
86
75
  @pulumi.getter(name="autoCreateNetwork")
@@ -192,23 +181,6 @@ class ProjectArgs:
192
181
  def project_id(self, value: Optional[pulumi.Input[str]]):
193
182
  pulumi.set(self, "project_id", value)
194
183
 
195
- @property
196
- @pulumi.getter(name="skipDelete")
197
- @_utilities.deprecated("""skip_delete is deprecated and will be removed in 6.0.0. Please use deletion_policy instead. A skip_delete value of false can be changed to a deletion_policy value of DELETE and a skip_delete value of true to a deletion_policy value of ABANDON for equivalent behavior.""")
198
- def skip_delete(self) -> Optional[pulumi.Input[bool]]:
199
- """
200
- If true, the resource can be deleted without
201
- deleting the Project via the Google API. `skip_delete` is deprecated and will be
202
- removed in 6.0.0. Please use deletion_policy instead. A `skip_delete` value of `false`
203
- can be changed to a `deletion_policy` value of `DELETE` and a `skip_delete` value of `true`
204
- to a `deletion_policy` value of `ABANDON` for equivalent behavior.
205
- """
206
- return pulumi.get(self, "skip_delete")
207
-
208
- @skip_delete.setter
209
- def skip_delete(self, value: Optional[pulumi.Input[bool]]):
210
- pulumi.set(self, "skip_delete", value)
211
-
212
184
 
213
185
  @pulumi.input_type
214
186
  class _ProjectState:
@@ -223,8 +195,7 @@ class _ProjectState:
223
195
  number: Optional[pulumi.Input[str]] = None,
224
196
  org_id: Optional[pulumi.Input[str]] = None,
225
197
  project_id: Optional[pulumi.Input[str]] = None,
226
- pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
227
- skip_delete: Optional[pulumi.Input[bool]] = None):
198
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
228
199
  """
229
200
  Input properties used for looking up and filtering Project resources.
230
201
  :param pulumi.Input[bool] auto_create_network: Create the 'default' network automatically. Default true. If set to false, the default network will be deleted. Note
@@ -254,11 +225,6 @@ class _ProjectState:
254
225
  organization.
255
226
  :param pulumi.Input[str] project_id: The project ID. Changing this forces a new project to be created.
256
227
  :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.
257
- :param pulumi.Input[bool] skip_delete: If true, the resource can be deleted without
258
- deleting the Project via the Google API. `skip_delete` is deprecated and will be
259
- removed in 6.0.0. Please use deletion_policy instead. A `skip_delete` value of `false`
260
- can be changed to a `deletion_policy` value of `DELETE` and a `skip_delete` value of `true`
261
- to a `deletion_policy` value of `ABANDON` for equivalent behavior.
262
228
  """
263
229
  if auto_create_network is not None:
264
230
  pulumi.set(__self__, "auto_create_network", auto_create_network)
@@ -282,11 +248,6 @@ class _ProjectState:
282
248
  pulumi.set(__self__, "project_id", project_id)
283
249
  if pulumi_labels is not None:
284
250
  pulumi.set(__self__, "pulumi_labels", pulumi_labels)
285
- if skip_delete is not None:
286
- warnings.warn("""skip_delete is deprecated and will be removed in 6.0.0. Please use deletion_policy instead. A skip_delete value of false can be changed to a deletion_policy value of DELETE and a skip_delete value of true to a deletion_policy value of ABANDON for equivalent behavior.""", DeprecationWarning)
287
- pulumi.log.warn("""skip_delete is deprecated: skip_delete is deprecated and will be removed in 6.0.0. Please use deletion_policy instead. A skip_delete value of false can be changed to a deletion_policy value of DELETE and a skip_delete value of true to a deletion_policy value of ABANDON for equivalent behavior.""")
288
- if skip_delete is not None:
289
- pulumi.set(__self__, "skip_delete", skip_delete)
290
251
 
291
252
  @property
292
253
  @pulumi.getter(name="autoCreateNetwork")
@@ -434,23 +395,6 @@ class _ProjectState:
434
395
  def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
435
396
  pulumi.set(self, "pulumi_labels", value)
436
397
 
437
- @property
438
- @pulumi.getter(name="skipDelete")
439
- @_utilities.deprecated("""skip_delete is deprecated and will be removed in 6.0.0. Please use deletion_policy instead. A skip_delete value of false can be changed to a deletion_policy value of DELETE and a skip_delete value of true to a deletion_policy value of ABANDON for equivalent behavior.""")
440
- def skip_delete(self) -> Optional[pulumi.Input[bool]]:
441
- """
442
- If true, the resource can be deleted without
443
- deleting the Project via the Google API. `skip_delete` is deprecated and will be
444
- removed in 6.0.0. Please use deletion_policy instead. A `skip_delete` value of `false`
445
- can be changed to a `deletion_policy` value of `DELETE` and a `skip_delete` value of `true`
446
- to a `deletion_policy` value of `ABANDON` for equivalent behavior.
447
- """
448
- return pulumi.get(self, "skip_delete")
449
-
450
- @skip_delete.setter
451
- def skip_delete(self, value: Optional[pulumi.Input[bool]]):
452
- pulumi.set(self, "skip_delete", value)
453
-
454
398
 
455
399
  class Project(pulumi.CustomResource):
456
400
  @overload
@@ -465,7 +409,6 @@ class Project(pulumi.CustomResource):
465
409
  name: Optional[pulumi.Input[str]] = None,
466
410
  org_id: Optional[pulumi.Input[str]] = None,
467
411
  project_id: Optional[pulumi.Input[str]] = None,
468
- skip_delete: Optional[pulumi.Input[bool]] = None,
469
412
  __props__=None):
470
413
  """
471
414
  Allows creation and management of a Google Cloud Platform project.
@@ -551,11 +494,6 @@ class Project(pulumi.CustomResource):
551
494
  this forces the project to be migrated to the newly specified
552
495
  organization.
553
496
  :param pulumi.Input[str] project_id: The project ID. Changing this forces a new project to be created.
554
- :param pulumi.Input[bool] skip_delete: If true, the resource can be deleted without
555
- deleting the Project via the Google API. `skip_delete` is deprecated and will be
556
- removed in 6.0.0. Please use deletion_policy instead. A `skip_delete` value of `false`
557
- can be changed to a `deletion_policy` value of `DELETE` and a `skip_delete` value of `true`
558
- to a `deletion_policy` value of `ABANDON` for equivalent behavior.
559
497
  """
560
498
  ...
561
499
  @overload
@@ -644,7 +582,6 @@ class Project(pulumi.CustomResource):
644
582
  name: Optional[pulumi.Input[str]] = None,
645
583
  org_id: Optional[pulumi.Input[str]] = None,
646
584
  project_id: Optional[pulumi.Input[str]] = None,
647
- skip_delete: Optional[pulumi.Input[bool]] = None,
648
585
  __props__=None):
649
586
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
650
587
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -662,7 +599,6 @@ class Project(pulumi.CustomResource):
662
599
  __props__.__dict__["name"] = name
663
600
  __props__.__dict__["org_id"] = org_id
664
601
  __props__.__dict__["project_id"] = project_id
665
- __props__.__dict__["skip_delete"] = skip_delete
666
602
  __props__.__dict__["effective_labels"] = None
667
603
  __props__.__dict__["number"] = None
668
604
  __props__.__dict__["pulumi_labels"] = None
@@ -688,8 +624,7 @@ class Project(pulumi.CustomResource):
688
624
  number: Optional[pulumi.Input[str]] = None,
689
625
  org_id: Optional[pulumi.Input[str]] = None,
690
626
  project_id: Optional[pulumi.Input[str]] = None,
691
- pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
692
- skip_delete: Optional[pulumi.Input[bool]] = None) -> 'Project':
627
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None) -> 'Project':
693
628
  """
694
629
  Get an existing Project resource's state with the given name, id, and optional extra
695
630
  properties used to qualify the lookup.
@@ -724,11 +659,6 @@ class Project(pulumi.CustomResource):
724
659
  organization.
725
660
  :param pulumi.Input[str] project_id: The project ID. Changing this forces a new project to be created.
726
661
  :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.
727
- :param pulumi.Input[bool] skip_delete: If true, the resource can be deleted without
728
- deleting the Project via the Google API. `skip_delete` is deprecated and will be
729
- removed in 6.0.0. Please use deletion_policy instead. A `skip_delete` value of `false`
730
- can be changed to a `deletion_policy` value of `DELETE` and a `skip_delete` value of `true`
731
- to a `deletion_policy` value of `ABANDON` for equivalent behavior.
732
662
  """
733
663
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
734
664
 
@@ -745,7 +675,6 @@ class Project(pulumi.CustomResource):
745
675
  __props__.__dict__["org_id"] = org_id
746
676
  __props__.__dict__["project_id"] = project_id
747
677
  __props__.__dict__["pulumi_labels"] = pulumi_labels
748
- __props__.__dict__["skip_delete"] = skip_delete
749
678
  return Project(resource_name, opts=opts, __props__=__props__)
750
679
 
751
680
  @property
@@ -850,16 +779,3 @@ class Project(pulumi.CustomResource):
850
779
  """
851
780
  return pulumi.get(self, "pulumi_labels")
852
781
 
853
- @property
854
- @pulumi.getter(name="skipDelete")
855
- @_utilities.deprecated("""skip_delete is deprecated and will be removed in 6.0.0. Please use deletion_policy instead. A skip_delete value of false can be changed to a deletion_policy value of DELETE and a skip_delete value of true to a deletion_policy value of ABANDON for equivalent behavior.""")
856
- def skip_delete(self) -> pulumi.Output[bool]:
857
- """
858
- If true, the resource can be deleted without
859
- deleting the Project via the Google API. `skip_delete` is deprecated and will be
860
- removed in 6.0.0. Please use deletion_policy instead. A `skip_delete` value of `false`
861
- can be changed to a `deletion_policy` value of `DELETE` and a `skip_delete` value of `true`
862
- to a `deletion_policy` value of `ABANDON` for equivalent behavior.
863
- """
864
- return pulumi.get(self, "skip_delete")
865
-
@@ -228,7 +228,8 @@ class Policy(pulumi.CustomResource):
228
228
  basic = gcp.organizations.Project("basic",
229
229
  project_id="id",
230
230
  name="id",
231
- org_id="123456789")
231
+ org_id="123456789",
232
+ deletion_policy="DELETE")
232
233
  primary = gcp.orgpolicy.Policy("primary",
233
234
  name=basic.name.apply(lambda name: f"projects/{name}/policies/iam.disableServiceAccountKeyUpload"),
234
235
  parent=basic.name.apply(lambda name: f"projects/{name}"),
@@ -246,7 +247,8 @@ class Policy(pulumi.CustomResource):
246
247
 
247
248
  basic = gcp.organizations.Folder("basic",
248
249
  parent="organizations/123456789",
249
- display_name="folder")
250
+ display_name="folder",
251
+ deletion_protection=False)
250
252
  primary = gcp.orgpolicy.Policy("primary",
251
253
  name=basic.name.apply(lambda name: f"{name}/policies/gcp.resourceLocations"),
252
254
  parent=basic.name,
@@ -279,7 +281,8 @@ class Policy(pulumi.CustomResource):
279
281
  basic = gcp.organizations.Project("basic",
280
282
  project_id="id",
281
283
  name="id",
282
- org_id="123456789")
284
+ org_id="123456789",
285
+ deletion_policy="DELETE")
283
286
  primary = gcp.orgpolicy.Policy("primary",
284
287
  name=basic.name.apply(lambda name: f"projects/{name}/policies/gcp.resourceLocations"),
285
288
  parent=basic.name.apply(lambda name: f"projects/{name}"),
@@ -386,7 +389,8 @@ class Policy(pulumi.CustomResource):
386
389
  basic = gcp.organizations.Project("basic",
387
390
  project_id="id",
388
391
  name="id",
389
- org_id="123456789")
392
+ org_id="123456789",
393
+ deletion_policy="DELETE")
390
394
  primary = gcp.orgpolicy.Policy("primary",
391
395
  name=basic.name.apply(lambda name: f"projects/{name}/policies/iam.disableServiceAccountKeyUpload"),
392
396
  parent=basic.name.apply(lambda name: f"projects/{name}"),
@@ -404,7 +408,8 @@ class Policy(pulumi.CustomResource):
404
408
 
405
409
  basic = gcp.organizations.Folder("basic",
406
410
  parent="organizations/123456789",
407
- display_name="folder")
411
+ display_name="folder",
412
+ deletion_protection=False)
408
413
  primary = gcp.orgpolicy.Policy("primary",
409
414
  name=basic.name.apply(lambda name: f"{name}/policies/gcp.resourceLocations"),
410
415
  parent=basic.name,
@@ -437,7 +442,8 @@ class Policy(pulumi.CustomResource):
437
442
  basic = gcp.organizations.Project("basic",
438
443
  project_id="id",
439
444
  name="id",
440
- org_id="123456789")
445
+ org_id="123456789",
446
+ deletion_policy="DELETE")
441
447
  primary = gcp.orgpolicy.Policy("primary",
442
448
  name=basic.name.apply(lambda name: f"projects/{name}/policies/gcp.resourceLocations"),
443
449
  parent=basic.name.apply(lambda name: f"projects/{name}"),
@@ -215,14 +215,9 @@ class ApiKey(pulumi.CustomResource):
215
215
  import pulumi
216
216
  import pulumi_gcp as gcp
217
217
 
218
- basic = gcp.organizations.Project("basic",
219
- project_id="app",
220
- name="app",
221
- org_id="123456789")
222
218
  primary = gcp.projects.ApiKey("primary",
223
219
  name="key",
224
220
  display_name="sample-key",
225
- project=basic.name,
226
221
  restrictions={
227
222
  "android_key_restrictions": {
228
223
  "allowed_applications": [{
@@ -242,14 +237,9 @@ class ApiKey(pulumi.CustomResource):
242
237
  import pulumi
243
238
  import pulumi_gcp as gcp
244
239
 
245
- basic = gcp.organizations.Project("basic",
246
- project_id="app",
247
- name="app",
248
- org_id="123456789")
249
240
  primary = gcp.projects.ApiKey("primary",
250
241
  name="key",
251
242
  display_name="sample-key",
252
- project=basic.name,
253
243
  restrictions={
254
244
  "api_targets": [{
255
245
  "service": "translate.googleapis.com",
@@ -266,14 +256,9 @@ class ApiKey(pulumi.CustomResource):
266
256
  import pulumi
267
257
  import pulumi_gcp as gcp
268
258
 
269
- basic = gcp.organizations.Project("basic",
270
- project_id="app",
271
- name="app",
272
- org_id="123456789")
273
259
  primary = gcp.projects.ApiKey("primary",
274
260
  name="key",
275
261
  display_name="sample-key",
276
- project=basic.name,
277
262
  restrictions={
278
263
  "api_targets": [{
279
264
  "service": "translate.googleapis.com",
@@ -290,14 +275,9 @@ class ApiKey(pulumi.CustomResource):
290
275
  import pulumi
291
276
  import pulumi_gcp as gcp
292
277
 
293
- basic = gcp.organizations.Project("basic",
294
- project_id="app",
295
- name="app",
296
- org_id="123456789")
297
278
  primary = gcp.projects.ApiKey("primary",
298
279
  name="key",
299
- display_name="sample-key",
300
- project=basic.name)
280
+ display_name="sample-key")
301
281
  ```
302
282
  ### Server_key
303
283
  A basic example of a server api keys key
@@ -305,14 +285,9 @@ class ApiKey(pulumi.CustomResource):
305
285
  import pulumi
306
286
  import pulumi_gcp as gcp
307
287
 
308
- basic = gcp.organizations.Project("basic",
309
- project_id="app",
310
- name="app",
311
- org_id="123456789")
312
288
  primary = gcp.projects.ApiKey("primary",
313
289
  name="key",
314
290
  display_name="sample-key",
315
- project=basic.name,
316
291
  restrictions={
317
292
  "api_targets": [{
318
293
  "service": "translate.googleapis.com",
@@ -372,14 +347,9 @@ class ApiKey(pulumi.CustomResource):
372
347
  import pulumi
373
348
  import pulumi_gcp as gcp
374
349
 
375
- basic = gcp.organizations.Project("basic",
376
- project_id="app",
377
- name="app",
378
- org_id="123456789")
379
350
  primary = gcp.projects.ApiKey("primary",
380
351
  name="key",
381
352
  display_name="sample-key",
382
- project=basic.name,
383
353
  restrictions={
384
354
  "android_key_restrictions": {
385
355
  "allowed_applications": [{
@@ -399,14 +369,9 @@ class ApiKey(pulumi.CustomResource):
399
369
  import pulumi
400
370
  import pulumi_gcp as gcp
401
371
 
402
- basic = gcp.organizations.Project("basic",
403
- project_id="app",
404
- name="app",
405
- org_id="123456789")
406
372
  primary = gcp.projects.ApiKey("primary",
407
373
  name="key",
408
374
  display_name="sample-key",
409
- project=basic.name,
410
375
  restrictions={
411
376
  "api_targets": [{
412
377
  "service": "translate.googleapis.com",
@@ -423,14 +388,9 @@ class ApiKey(pulumi.CustomResource):
423
388
  import pulumi
424
389
  import pulumi_gcp as gcp
425
390
 
426
- basic = gcp.organizations.Project("basic",
427
- project_id="app",
428
- name="app",
429
- org_id="123456789")
430
391
  primary = gcp.projects.ApiKey("primary",
431
392
  name="key",
432
393
  display_name="sample-key",
433
- project=basic.name,
434
394
  restrictions={
435
395
  "api_targets": [{
436
396
  "service": "translate.googleapis.com",
@@ -447,14 +407,9 @@ class ApiKey(pulumi.CustomResource):
447
407
  import pulumi
448
408
  import pulumi_gcp as gcp
449
409
 
450
- basic = gcp.organizations.Project("basic",
451
- project_id="app",
452
- name="app",
453
- org_id="123456789")
454
410
  primary = gcp.projects.ApiKey("primary",
455
411
  name="key",
456
- display_name="sample-key",
457
- project=basic.name)
412
+ display_name="sample-key")
458
413
  ```
459
414
  ### Server_key
460
415
  A basic example of a server api keys key
@@ -462,14 +417,9 @@ class ApiKey(pulumi.CustomResource):
462
417
  import pulumi
463
418
  import pulumi_gcp as gcp
464
419
 
465
- basic = gcp.organizations.Project("basic",
466
- project_id="app",
467
- name="app",
468
- org_id="123456789")
469
420
  primary = gcp.projects.ApiKey("primary",
470
421
  name="key",
471
422
  display_name="sample-key",
472
- project=basic.name,
473
423
  restrictions={
474
424
  "api_targets": [{
475
425
  "service": "translate.googleapis.com",