pulumi-gcp 8.21.0a1741156431__py3-none-any.whl → 8.22.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 (110) hide show
  1. pulumi_gcp/__init__.py +96 -0
  2. pulumi_gcp/alloydb/_inputs.py +66 -0
  3. pulumi_gcp/alloydb/cluster.py +148 -0
  4. pulumi_gcp/alloydb/instance.py +28 -28
  5. pulumi_gcp/alloydb/outputs.py +95 -0
  6. pulumi_gcp/apihub/__init__.py +1 -0
  7. pulumi_gcp/apihub/host_project_registration.py +535 -0
  8. pulumi_gcp/backupdisasterrecovery/_inputs.py +3 -3
  9. pulumi_gcp/backupdisasterrecovery/outputs.py +4 -4
  10. pulumi_gcp/bigquery/table.py +1 -1
  11. pulumi_gcp/certificatemanager/certificate.py +53 -7
  12. pulumi_gcp/certificatemanager/outputs.py +8 -2
  13. pulumi_gcp/compute/__init__.py +6 -0
  14. pulumi_gcp/compute/_inputs.py +1370 -17
  15. pulumi_gcp/compute/backend_service.py +209 -14
  16. pulumi_gcp/compute/ca_external_account_key.py +48 -3
  17. pulumi_gcp/compute/disk.py +403 -0
  18. pulumi_gcp/compute/firewall_policy_association.py +28 -2
  19. pulumi_gcp/compute/get_backend_service.py +12 -1
  20. pulumi_gcp/compute/get_disk.py +78 -1
  21. pulumi_gcp/compute/get_instant_snapshot_iam_policy.py +182 -0
  22. pulumi_gcp/compute/get_region_disk.py +23 -1
  23. pulumi_gcp/compute/get_region_ssl_policy.py +203 -0
  24. pulumi_gcp/compute/instant_snapshot.py +796 -0
  25. pulumi_gcp/compute/instant_snapshot_iam_binding.py +1087 -0
  26. pulumi_gcp/compute/instant_snapshot_iam_member.py +1087 -0
  27. pulumi_gcp/compute/instant_snapshot_iam_policy.py +906 -0
  28. pulumi_gcp/compute/outputs.py +1952 -29
  29. pulumi_gcp/compute/region_backend_service.py +207 -14
  30. pulumi_gcp/compute/region_disk.py +114 -0
  31. pulumi_gcp/compute/route.py +228 -2
  32. pulumi_gcp/compute/shared_vpc_service_project.py +0 -4
  33. pulumi_gcp/compute/subnetwork.py +147 -0
  34. pulumi_gcp/compute/url_map.py +8 -0
  35. pulumi_gcp/container/_inputs.py +6 -6
  36. pulumi_gcp/container/outputs.py +8 -8
  37. pulumi_gcp/datacatalog/entry.py +4 -0
  38. pulumi_gcp/datacatalog/tag.py +4 -0
  39. pulumi_gcp/dataproc/_inputs.py +12 -15
  40. pulumi_gcp/dataproc/outputs.py +8 -10
  41. pulumi_gcp/datastream/_inputs.py +273 -0
  42. pulumi_gcp/datastream/connection_profile.py +54 -2
  43. pulumi_gcp/datastream/outputs.py +224 -0
  44. pulumi_gcp/discoveryengine/target_site.py +4 -4
  45. pulumi_gcp/eventarc/__init__.py +2 -0
  46. pulumi_gcp/eventarc/_inputs.py +80 -0
  47. pulumi_gcp/eventarc/channel.py +85 -93
  48. pulumi_gcp/eventarc/google_api_source.py +997 -0
  49. pulumi_gcp/eventarc/message_bus.py +927 -0
  50. pulumi_gcp/eventarc/outputs.py +82 -0
  51. pulumi_gcp/firebase/data_connect_service.py +40 -2
  52. pulumi_gcp/gemini/__init__.py +1 -0
  53. pulumi_gcp/gemini/data_sharing_with_google_setting_binding.py +20 -8
  54. pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +6 -0
  55. pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +734 -0
  56. pulumi_gcp/gemini/logging_setting_binding.py +7 -7
  57. pulumi_gcp/iam/__init__.py +2 -0
  58. pulumi_gcp/iam/_inputs.py +84 -27
  59. pulumi_gcp/iam/folders_policy_binding.py +10 -26
  60. pulumi_gcp/iam/oauth_client.py +979 -0
  61. pulumi_gcp/iam/oauth_client_credential.py +641 -0
  62. pulumi_gcp/iam/organizations_policy_binding.py +8 -24
  63. pulumi_gcp/iam/outputs.py +56 -18
  64. pulumi_gcp/iam/principal_access_boundary_policy.py +58 -22
  65. pulumi_gcp/iam/projects_policy_binding.py +8 -24
  66. pulumi_gcp/iam/workforce_pool_provider.py +2 -2
  67. pulumi_gcp/kms/crypto_key_version.py +14 -7
  68. pulumi_gcp/memorystore/__init__.py +1 -0
  69. pulumi_gcp/memorystore/get_instance.py +425 -0
  70. pulumi_gcp/memorystore/outputs.py +582 -0
  71. pulumi_gcp/monitoring/_inputs.py +15 -18
  72. pulumi_gcp/monitoring/alert_policy.py +46 -0
  73. pulumi_gcp/monitoring/outputs.py +10 -12
  74. pulumi_gcp/networkconnectivity/hub.py +84 -0
  75. pulumi_gcp/networksecurity/__init__.py +1 -0
  76. pulumi_gcp/networksecurity/_inputs.py +30 -18
  77. pulumi_gcp/networksecurity/backend_authentication_config.py +847 -0
  78. pulumi_gcp/networksecurity/intercept_deployment.py +178 -94
  79. pulumi_gcp/networksecurity/intercept_deployment_group.py +161 -77
  80. pulumi_gcp/networksecurity/intercept_endpoint_group.py +161 -66
  81. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +137 -80
  82. pulumi_gcp/networksecurity/mirroring_deployment.py +178 -94
  83. pulumi_gcp/networksecurity/mirroring_deployment_group.py +161 -77
  84. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +161 -80
  85. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +137 -105
  86. pulumi_gcp/networksecurity/outputs.py +20 -12
  87. pulumi_gcp/networkservices/endpoint_policy.py +12 -0
  88. pulumi_gcp/networkservices/grpc_route.py +128 -12
  89. pulumi_gcp/networkservices/http_route.py +16 -0
  90. pulumi_gcp/networkservices/mesh.py +16 -0
  91. pulumi_gcp/networkservices/service_binding.py +14 -0
  92. pulumi_gcp/networkservices/tcp_route.py +16 -0
  93. pulumi_gcp/networkservices/tls_route.py +12 -0
  94. pulumi_gcp/notebooks/location.py +4 -0
  95. pulumi_gcp/pulumi-plugin.json +1 -1
  96. pulumi_gcp/storage/__init__.py +1 -0
  97. pulumi_gcp/storage/_inputs.py +74 -0
  98. pulumi_gcp/storage/anywhere_cache.py +552 -0
  99. pulumi_gcp/storage/outputs.py +65 -0
  100. pulumi_gcp/storage/transfer_job.py +67 -0
  101. pulumi_gcp/tpu/_inputs.py +21 -1
  102. pulumi_gcp/tpu/outputs.py +13 -1
  103. pulumi_gcp/tpu/v2_vm.py +2 -0
  104. pulumi_gcp/vmwareengine/_inputs.py +6 -0
  105. pulumi_gcp/vmwareengine/outputs.py +8 -0
  106. pulumi_gcp/workstations/workstation_cluster.py +137 -1
  107. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/METADATA +1 -1
  108. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/RECORD +110 -95
  109. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/WHEEL +1 -1
  110. {pulumi_gcp-8.21.0a1741156431.dist-info → pulumi_gcp-8.22.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,535 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+
17
+ __all__ = ['HostProjectRegistrationArgs', 'HostProjectRegistration']
18
+
19
+ @pulumi.input_type
20
+ class HostProjectRegistrationArgs:
21
+ def __init__(__self__, *,
22
+ gcp_project: pulumi.Input[str],
23
+ host_project_registration_id: pulumi.Input[str],
24
+ location: pulumi.Input[str],
25
+ project: Optional[pulumi.Input[str]] = None):
26
+ """
27
+ The set of arguments for constructing a HostProjectRegistration resource.
28
+ :param pulumi.Input[str] gcp_project: Required. Immutable. Google cloud project name in the format: "projects/abc" or "projects/123".
29
+ As input, project name with either project id or number are accepted.
30
+ As output, this field will contain project number.
31
+ :param pulumi.Input[str] host_project_registration_id: Required. The ID to use for the Host Project Registration, which will become the
32
+ final component of the host project registration's resource name. The ID
33
+ must be the same as the Google cloud project specified in the
34
+ host_project_registration.gcp_project field.
35
+
36
+
37
+ - - -
38
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
39
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
40
+ If it is not provided, the provider project is used.
41
+ """
42
+ pulumi.set(__self__, "gcp_project", gcp_project)
43
+ pulumi.set(__self__, "host_project_registration_id", host_project_registration_id)
44
+ pulumi.set(__self__, "location", location)
45
+ if project is not None:
46
+ pulumi.set(__self__, "project", project)
47
+
48
+ @property
49
+ @pulumi.getter(name="gcpProject")
50
+ def gcp_project(self) -> pulumi.Input[str]:
51
+ """
52
+ Required. Immutable. Google cloud project name in the format: "projects/abc" or "projects/123".
53
+ As input, project name with either project id or number are accepted.
54
+ As output, this field will contain project number.
55
+ """
56
+ return pulumi.get(self, "gcp_project")
57
+
58
+ @gcp_project.setter
59
+ def gcp_project(self, value: pulumi.Input[str]):
60
+ pulumi.set(self, "gcp_project", value)
61
+
62
+ @property
63
+ @pulumi.getter(name="hostProjectRegistrationId")
64
+ def host_project_registration_id(self) -> pulumi.Input[str]:
65
+ """
66
+ Required. The ID to use for the Host Project Registration, which will become the
67
+ final component of the host project registration's resource name. The ID
68
+ must be the same as the Google cloud project specified in the
69
+ host_project_registration.gcp_project field.
70
+
71
+
72
+ - - -
73
+ """
74
+ return pulumi.get(self, "host_project_registration_id")
75
+
76
+ @host_project_registration_id.setter
77
+ def host_project_registration_id(self, value: pulumi.Input[str]):
78
+ pulumi.set(self, "host_project_registration_id", value)
79
+
80
+ @property
81
+ @pulumi.getter
82
+ def location(self) -> pulumi.Input[str]:
83
+ """
84
+ Part of `parent`. See documentation of `projectsId`.
85
+ """
86
+ return pulumi.get(self, "location")
87
+
88
+ @location.setter
89
+ def location(self, value: pulumi.Input[str]):
90
+ pulumi.set(self, "location", value)
91
+
92
+ @property
93
+ @pulumi.getter
94
+ def project(self) -> Optional[pulumi.Input[str]]:
95
+ """
96
+ The ID of the project in which the resource belongs.
97
+ If it is not provided, the provider project is used.
98
+ """
99
+ return pulumi.get(self, "project")
100
+
101
+ @project.setter
102
+ def project(self, value: Optional[pulumi.Input[str]]):
103
+ pulumi.set(self, "project", value)
104
+
105
+
106
+ @pulumi.input_type
107
+ class _HostProjectRegistrationState:
108
+ def __init__(__self__, *,
109
+ create_time: Optional[pulumi.Input[str]] = None,
110
+ gcp_project: Optional[pulumi.Input[str]] = None,
111
+ host_project_registration_id: Optional[pulumi.Input[str]] = None,
112
+ location: Optional[pulumi.Input[str]] = None,
113
+ name: Optional[pulumi.Input[str]] = None,
114
+ project: Optional[pulumi.Input[str]] = None):
115
+ """
116
+ Input properties used for looking up and filtering HostProjectRegistration resources.
117
+ :param pulumi.Input[str] create_time: Output only. The time at which the host project registration was created.
118
+ :param pulumi.Input[str] gcp_project: Required. Immutable. Google cloud project name in the format: "projects/abc" or "projects/123".
119
+ As input, project name with either project id or number are accepted.
120
+ As output, this field will contain project number.
121
+ :param pulumi.Input[str] host_project_registration_id: Required. The ID to use for the Host Project Registration, which will become the
122
+ final component of the host project registration's resource name. The ID
123
+ must be the same as the Google cloud project specified in the
124
+ host_project_registration.gcp_project field.
125
+
126
+
127
+ - - -
128
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
129
+ :param pulumi.Input[str] name: Identifier. The name of the host project registration.
130
+ Format:
131
+ "projects/{project}/locations/{location}/hostProjectRegistrations/{host_project_registration}".
132
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
133
+ If it is not provided, the provider project is used.
134
+ """
135
+ if create_time is not None:
136
+ pulumi.set(__self__, "create_time", create_time)
137
+ if gcp_project is not None:
138
+ pulumi.set(__self__, "gcp_project", gcp_project)
139
+ if host_project_registration_id is not None:
140
+ pulumi.set(__self__, "host_project_registration_id", host_project_registration_id)
141
+ if location is not None:
142
+ pulumi.set(__self__, "location", location)
143
+ if name is not None:
144
+ pulumi.set(__self__, "name", name)
145
+ if project is not None:
146
+ pulumi.set(__self__, "project", project)
147
+
148
+ @property
149
+ @pulumi.getter(name="createTime")
150
+ def create_time(self) -> Optional[pulumi.Input[str]]:
151
+ """
152
+ Output only. The time at which the host project registration was created.
153
+ """
154
+ return pulumi.get(self, "create_time")
155
+
156
+ @create_time.setter
157
+ def create_time(self, value: Optional[pulumi.Input[str]]):
158
+ pulumi.set(self, "create_time", value)
159
+
160
+ @property
161
+ @pulumi.getter(name="gcpProject")
162
+ def gcp_project(self) -> Optional[pulumi.Input[str]]:
163
+ """
164
+ Required. Immutable. Google cloud project name in the format: "projects/abc" or "projects/123".
165
+ As input, project name with either project id or number are accepted.
166
+ As output, this field will contain project number.
167
+ """
168
+ return pulumi.get(self, "gcp_project")
169
+
170
+ @gcp_project.setter
171
+ def gcp_project(self, value: Optional[pulumi.Input[str]]):
172
+ pulumi.set(self, "gcp_project", value)
173
+
174
+ @property
175
+ @pulumi.getter(name="hostProjectRegistrationId")
176
+ def host_project_registration_id(self) -> Optional[pulumi.Input[str]]:
177
+ """
178
+ Required. The ID to use for the Host Project Registration, which will become the
179
+ final component of the host project registration's resource name. The ID
180
+ must be the same as the Google cloud project specified in the
181
+ host_project_registration.gcp_project field.
182
+
183
+
184
+ - - -
185
+ """
186
+ return pulumi.get(self, "host_project_registration_id")
187
+
188
+ @host_project_registration_id.setter
189
+ def host_project_registration_id(self, value: Optional[pulumi.Input[str]]):
190
+ pulumi.set(self, "host_project_registration_id", value)
191
+
192
+ @property
193
+ @pulumi.getter
194
+ def location(self) -> Optional[pulumi.Input[str]]:
195
+ """
196
+ Part of `parent`. See documentation of `projectsId`.
197
+ """
198
+ return pulumi.get(self, "location")
199
+
200
+ @location.setter
201
+ def location(self, value: Optional[pulumi.Input[str]]):
202
+ pulumi.set(self, "location", value)
203
+
204
+ @property
205
+ @pulumi.getter
206
+ def name(self) -> Optional[pulumi.Input[str]]:
207
+ """
208
+ Identifier. The name of the host project registration.
209
+ Format:
210
+ "projects/{project}/locations/{location}/hostProjectRegistrations/{host_project_registration}".
211
+ """
212
+ return pulumi.get(self, "name")
213
+
214
+ @name.setter
215
+ def name(self, value: Optional[pulumi.Input[str]]):
216
+ pulumi.set(self, "name", value)
217
+
218
+ @property
219
+ @pulumi.getter
220
+ def project(self) -> Optional[pulumi.Input[str]]:
221
+ """
222
+ The ID of the project in which the resource belongs.
223
+ If it is not provided, the provider project is used.
224
+ """
225
+ return pulumi.get(self, "project")
226
+
227
+ @project.setter
228
+ def project(self, value: Optional[pulumi.Input[str]]):
229
+ pulumi.set(self, "project", value)
230
+
231
+
232
+ class HostProjectRegistration(pulumi.CustomResource):
233
+ @overload
234
+ def __init__(__self__,
235
+ resource_name: str,
236
+ opts: Optional[pulumi.ResourceOptions] = None,
237
+ gcp_project: Optional[pulumi.Input[str]] = None,
238
+ host_project_registration_id: Optional[pulumi.Input[str]] = None,
239
+ location: Optional[pulumi.Input[str]] = None,
240
+ project: Optional[pulumi.Input[str]] = None,
241
+ __props__=None):
242
+ """
243
+ Host project registration refers to the registration of a Google cloud project with API hub as a host project.
244
+ This is the project where API hub is provisioned.
245
+ It acts as the consumer project for the API hub instance provisioned.
246
+ Multiple runtime projects can be attached to the host project and these attachments define the scope of API hub.
247
+
248
+ ## Example Usage
249
+
250
+ ### Apihub Host Project Registration Basic
251
+
252
+ ```python
253
+ import pulumi
254
+ import pulumi_gcp as gcp
255
+ import pulumi_time as time
256
+
257
+ project = gcp.organizations.Project("project",
258
+ name="apihub-proj",
259
+ project_id="apihub-proj",
260
+ org_id="123456789",
261
+ billing_account="000000-0000000-0000000-000000",
262
+ deletion_policy="DELETE")
263
+ wait60_seconds = time.index.Sleep("wait_60_seconds", create_duration=60s,
264
+ opts = pulumi.ResourceOptions(depends_on=[project]))
265
+ # Enable API hub API
266
+ apihub_service = gcp.projects.Service("apihub_service",
267
+ project=project.project_id,
268
+ service="apihub.googleapis.com",
269
+ opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
270
+ apihub_host_project = gcp.apihub.HostProjectRegistration("apihub_host_project",
271
+ project=project.project_id,
272
+ location="asia-south1",
273
+ host_project_registration_id=project.project_id,
274
+ gcp_project=project.project_id.apply(lambda project_id: f"projects/{project_id}"),
275
+ opts = pulumi.ResourceOptions(depends_on=[apihub_service]))
276
+ ```
277
+
278
+ ## Import
279
+
280
+ HostProjectRegistration can be imported using any of these accepted formats:
281
+
282
+ * `projects/{{project}}/locations/{{location}}/hostProjectRegistrations/{{host_project_registration_id}}`
283
+
284
+ * `{{project}}/{{location}}/{{host_project_registration_id}}`
285
+
286
+ * `{{location}}/{{host_project_registration_id}}`
287
+
288
+ When using the `pulumi import` command, HostProjectRegistration can be imported using one of the formats above. For example:
289
+
290
+ ```sh
291
+ $ pulumi import gcp:apihub/hostProjectRegistration:HostProjectRegistration default projects/{{project}}/locations/{{location}}/hostProjectRegistrations/{{host_project_registration_id}}
292
+ ```
293
+
294
+ ```sh
295
+ $ pulumi import gcp:apihub/hostProjectRegistration:HostProjectRegistration default {{project}}/{{location}}/{{host_project_registration_id}}
296
+ ```
297
+
298
+ ```sh
299
+ $ pulumi import gcp:apihub/hostProjectRegistration:HostProjectRegistration default {{location}}/{{host_project_registration_id}}
300
+ ```
301
+
302
+ :param str resource_name: The name of the resource.
303
+ :param pulumi.ResourceOptions opts: Options for the resource.
304
+ :param pulumi.Input[str] gcp_project: Required. Immutable. Google cloud project name in the format: "projects/abc" or "projects/123".
305
+ As input, project name with either project id or number are accepted.
306
+ As output, this field will contain project number.
307
+ :param pulumi.Input[str] host_project_registration_id: Required. The ID to use for the Host Project Registration, which will become the
308
+ final component of the host project registration's resource name. The ID
309
+ must be the same as the Google cloud project specified in the
310
+ host_project_registration.gcp_project field.
311
+
312
+
313
+ - - -
314
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
315
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
316
+ If it is not provided, the provider project is used.
317
+ """
318
+ ...
319
+ @overload
320
+ def __init__(__self__,
321
+ resource_name: str,
322
+ args: HostProjectRegistrationArgs,
323
+ opts: Optional[pulumi.ResourceOptions] = None):
324
+ """
325
+ Host project registration refers to the registration of a Google cloud project with API hub as a host project.
326
+ This is the project where API hub is provisioned.
327
+ It acts as the consumer project for the API hub instance provisioned.
328
+ Multiple runtime projects can be attached to the host project and these attachments define the scope of API hub.
329
+
330
+ ## Example Usage
331
+
332
+ ### Apihub Host Project Registration Basic
333
+
334
+ ```python
335
+ import pulumi
336
+ import pulumi_gcp as gcp
337
+ import pulumi_time as time
338
+
339
+ project = gcp.organizations.Project("project",
340
+ name="apihub-proj",
341
+ project_id="apihub-proj",
342
+ org_id="123456789",
343
+ billing_account="000000-0000000-0000000-000000",
344
+ deletion_policy="DELETE")
345
+ wait60_seconds = time.index.Sleep("wait_60_seconds", create_duration=60s,
346
+ opts = pulumi.ResourceOptions(depends_on=[project]))
347
+ # Enable API hub API
348
+ apihub_service = gcp.projects.Service("apihub_service",
349
+ project=project.project_id,
350
+ service="apihub.googleapis.com",
351
+ opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
352
+ apihub_host_project = gcp.apihub.HostProjectRegistration("apihub_host_project",
353
+ project=project.project_id,
354
+ location="asia-south1",
355
+ host_project_registration_id=project.project_id,
356
+ gcp_project=project.project_id.apply(lambda project_id: f"projects/{project_id}"),
357
+ opts = pulumi.ResourceOptions(depends_on=[apihub_service]))
358
+ ```
359
+
360
+ ## Import
361
+
362
+ HostProjectRegistration can be imported using any of these accepted formats:
363
+
364
+ * `projects/{{project}}/locations/{{location}}/hostProjectRegistrations/{{host_project_registration_id}}`
365
+
366
+ * `{{project}}/{{location}}/{{host_project_registration_id}}`
367
+
368
+ * `{{location}}/{{host_project_registration_id}}`
369
+
370
+ When using the `pulumi import` command, HostProjectRegistration can be imported using one of the formats above. For example:
371
+
372
+ ```sh
373
+ $ pulumi import gcp:apihub/hostProjectRegistration:HostProjectRegistration default projects/{{project}}/locations/{{location}}/hostProjectRegistrations/{{host_project_registration_id}}
374
+ ```
375
+
376
+ ```sh
377
+ $ pulumi import gcp:apihub/hostProjectRegistration:HostProjectRegistration default {{project}}/{{location}}/{{host_project_registration_id}}
378
+ ```
379
+
380
+ ```sh
381
+ $ pulumi import gcp:apihub/hostProjectRegistration:HostProjectRegistration default {{location}}/{{host_project_registration_id}}
382
+ ```
383
+
384
+ :param str resource_name: The name of the resource.
385
+ :param HostProjectRegistrationArgs args: The arguments to use to populate this resource's properties.
386
+ :param pulumi.ResourceOptions opts: Options for the resource.
387
+ """
388
+ ...
389
+ def __init__(__self__, resource_name: str, *args, **kwargs):
390
+ resource_args, opts = _utilities.get_resource_args_opts(HostProjectRegistrationArgs, pulumi.ResourceOptions, *args, **kwargs)
391
+ if resource_args is not None:
392
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
393
+ else:
394
+ __self__._internal_init(resource_name, *args, **kwargs)
395
+
396
+ def _internal_init(__self__,
397
+ resource_name: str,
398
+ opts: Optional[pulumi.ResourceOptions] = None,
399
+ gcp_project: Optional[pulumi.Input[str]] = None,
400
+ host_project_registration_id: Optional[pulumi.Input[str]] = None,
401
+ location: Optional[pulumi.Input[str]] = None,
402
+ project: Optional[pulumi.Input[str]] = None,
403
+ __props__=None):
404
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
405
+ if not isinstance(opts, pulumi.ResourceOptions):
406
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
407
+ if opts.id is None:
408
+ if __props__ is not None:
409
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
410
+ __props__ = HostProjectRegistrationArgs.__new__(HostProjectRegistrationArgs)
411
+
412
+ if gcp_project is None and not opts.urn:
413
+ raise TypeError("Missing required property 'gcp_project'")
414
+ __props__.__dict__["gcp_project"] = gcp_project
415
+ if host_project_registration_id is None and not opts.urn:
416
+ raise TypeError("Missing required property 'host_project_registration_id'")
417
+ __props__.__dict__["host_project_registration_id"] = host_project_registration_id
418
+ if location is None and not opts.urn:
419
+ raise TypeError("Missing required property 'location'")
420
+ __props__.__dict__["location"] = location
421
+ __props__.__dict__["project"] = project
422
+ __props__.__dict__["create_time"] = None
423
+ __props__.__dict__["name"] = None
424
+ super(HostProjectRegistration, __self__).__init__(
425
+ 'gcp:apihub/hostProjectRegistration:HostProjectRegistration',
426
+ resource_name,
427
+ __props__,
428
+ opts)
429
+
430
+ @staticmethod
431
+ def get(resource_name: str,
432
+ id: pulumi.Input[str],
433
+ opts: Optional[pulumi.ResourceOptions] = None,
434
+ create_time: Optional[pulumi.Input[str]] = None,
435
+ gcp_project: Optional[pulumi.Input[str]] = None,
436
+ host_project_registration_id: Optional[pulumi.Input[str]] = None,
437
+ location: Optional[pulumi.Input[str]] = None,
438
+ name: Optional[pulumi.Input[str]] = None,
439
+ project: Optional[pulumi.Input[str]] = None) -> 'HostProjectRegistration':
440
+ """
441
+ Get an existing HostProjectRegistration resource's state with the given name, id, and optional extra
442
+ properties used to qualify the lookup.
443
+
444
+ :param str resource_name: The unique name of the resulting resource.
445
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
446
+ :param pulumi.ResourceOptions opts: Options for the resource.
447
+ :param pulumi.Input[str] create_time: Output only. The time at which the host project registration was created.
448
+ :param pulumi.Input[str] gcp_project: Required. Immutable. Google cloud project name in the format: "projects/abc" or "projects/123".
449
+ As input, project name with either project id or number are accepted.
450
+ As output, this field will contain project number.
451
+ :param pulumi.Input[str] host_project_registration_id: Required. The ID to use for the Host Project Registration, which will become the
452
+ final component of the host project registration's resource name. The ID
453
+ must be the same as the Google cloud project specified in the
454
+ host_project_registration.gcp_project field.
455
+
456
+
457
+ - - -
458
+ :param pulumi.Input[str] location: Part of `parent`. See documentation of `projectsId`.
459
+ :param pulumi.Input[str] name: Identifier. The name of the host project registration.
460
+ Format:
461
+ "projects/{project}/locations/{location}/hostProjectRegistrations/{host_project_registration}".
462
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
463
+ If it is not provided, the provider project is used.
464
+ """
465
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
466
+
467
+ __props__ = _HostProjectRegistrationState.__new__(_HostProjectRegistrationState)
468
+
469
+ __props__.__dict__["create_time"] = create_time
470
+ __props__.__dict__["gcp_project"] = gcp_project
471
+ __props__.__dict__["host_project_registration_id"] = host_project_registration_id
472
+ __props__.__dict__["location"] = location
473
+ __props__.__dict__["name"] = name
474
+ __props__.__dict__["project"] = project
475
+ return HostProjectRegistration(resource_name, opts=opts, __props__=__props__)
476
+
477
+ @property
478
+ @pulumi.getter(name="createTime")
479
+ def create_time(self) -> pulumi.Output[str]:
480
+ """
481
+ Output only. The time at which the host project registration was created.
482
+ """
483
+ return pulumi.get(self, "create_time")
484
+
485
+ @property
486
+ @pulumi.getter(name="gcpProject")
487
+ def gcp_project(self) -> pulumi.Output[str]:
488
+ """
489
+ Required. Immutable. Google cloud project name in the format: "projects/abc" or "projects/123".
490
+ As input, project name with either project id or number are accepted.
491
+ As output, this field will contain project number.
492
+ """
493
+ return pulumi.get(self, "gcp_project")
494
+
495
+ @property
496
+ @pulumi.getter(name="hostProjectRegistrationId")
497
+ def host_project_registration_id(self) -> pulumi.Output[str]:
498
+ """
499
+ Required. The ID to use for the Host Project Registration, which will become the
500
+ final component of the host project registration's resource name. The ID
501
+ must be the same as the Google cloud project specified in the
502
+ host_project_registration.gcp_project field.
503
+
504
+
505
+ - - -
506
+ """
507
+ return pulumi.get(self, "host_project_registration_id")
508
+
509
+ @property
510
+ @pulumi.getter
511
+ def location(self) -> pulumi.Output[str]:
512
+ """
513
+ Part of `parent`. See documentation of `projectsId`.
514
+ """
515
+ return pulumi.get(self, "location")
516
+
517
+ @property
518
+ @pulumi.getter
519
+ def name(self) -> pulumi.Output[str]:
520
+ """
521
+ Identifier. The name of the host project registration.
522
+ Format:
523
+ "projects/{project}/locations/{location}/hostProjectRegistrations/{host_project_registration}".
524
+ """
525
+ return pulumi.get(self, "name")
526
+
527
+ @property
528
+ @pulumi.getter
529
+ def project(self) -> pulumi.Output[str]:
530
+ """
531
+ The ID of the project in which the resource belongs.
532
+ If it is not provided, the provider project is used.
533
+ """
534
+ return pulumi.get(self, "project")
535
+
@@ -273,7 +273,7 @@ if not MYPY:
273
273
  days_of_weeks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
274
274
  """
275
275
  Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
276
- Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
276
+ Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
277
277
  """
278
278
  hourly_frequency: NotRequired[pulumi.Input[int]]
279
279
  """
@@ -313,7 +313,7 @@ class BackupPlanBackupRuleStandardScheduleArgs:
313
313
  Structure is documented below.
314
314
  :param pulumi.Input[Sequence[pulumi.Input[int]]] days_of_months: Specifies days of months like 1, 5, or 14 on which jobs will run.
315
315
  :param pulumi.Input[Sequence[pulumi.Input[str]]] days_of_weeks: Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
316
- Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
316
+ Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
317
317
  :param pulumi.Input[int] hourly_frequency: Specifies frequency for hourly backups. An hourly frequency of 2 means jobs will run every 2 hours from start time till end time defined.
318
318
  This is required for `recurrence_type`, `HOURLY` and is not applicable otherwise.
319
319
  :param pulumi.Input[Sequence[pulumi.Input[str]]] months: Specifies values of months
@@ -392,7 +392,7 @@ class BackupPlanBackupRuleStandardScheduleArgs:
392
392
  def days_of_weeks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
393
393
  """
394
394
  Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
395
- Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
395
+ Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
396
396
  """
397
397
  return pulumi.get(self, "days_of_weeks")
398
398
 
@@ -260,7 +260,7 @@ class BackupPlanBackupRuleStandardSchedule(dict):
260
260
  Structure is documented below.
261
261
  :param Sequence[int] days_of_months: Specifies days of months like 1, 5, or 14 on which jobs will run.
262
262
  :param Sequence[str] days_of_weeks: Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
263
- Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
263
+ Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
264
264
  :param int hourly_frequency: Specifies frequency for hourly backups. An hourly frequency of 2 means jobs will run every 2 hours from start time till end time defined.
265
265
  This is required for `recurrence_type`, `HOURLY` and is not applicable otherwise.
266
266
  :param Sequence[str] months: Specifies values of months
@@ -323,7 +323,7 @@ class BackupPlanBackupRuleStandardSchedule(dict):
323
323
  def days_of_weeks(self) -> Optional[Sequence[str]]:
324
324
  """
325
325
  Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for `recurrence_type`, `WEEKLY` and is not applicable otherwise.
326
- Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`.
326
+ Each value may be one of: `DAY_OF_WEEK_UNSPECIFIED`, `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
327
327
  """
328
328
  return pulumi.get(self, "days_of_weeks")
329
329
 
@@ -751,7 +751,7 @@ class GetBackupPlanBackupRuleStandardScheduleResult(dict):
751
751
  :param Sequence['GetBackupPlanBackupRuleStandardScheduleBackupWindowArgs'] backup_windows: A BackupWindow defines the window of the day during which backup jobs will run. Jobs are queued at the beginning of the window and will be marked as
752
752
  'NOT_RUN' if they do not start by the end of the window.
753
753
  :param Sequence[int] days_of_months: Specifies days of months like 1, 5, or 14 on which jobs will run.
754
- :param Sequence[str] days_of_weeks: Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for 'recurrence_type', 'WEEKLY' and is not applicable otherwise. Possible values: ["DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY"]
754
+ :param Sequence[str] days_of_weeks: Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for 'recurrence_type', 'WEEKLY' and is not applicable otherwise. Possible values: ["DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"]
755
755
  :param int hourly_frequency: Specifies frequency for hourly backups. An hourly frequency of 2 means jobs will run every 2 hours from start time till end time defined.
756
756
  This is required for 'recurrence_type', 'HOURLY' and is not applicable otherwise.
757
757
  :param Sequence[str] months: Specifies values of months Possible values: ["MONTH_UNSPECIFIED", "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER"]
@@ -789,7 +789,7 @@ class GetBackupPlanBackupRuleStandardScheduleResult(dict):
789
789
  @pulumi.getter(name="daysOfWeeks")
790
790
  def days_of_weeks(self) -> Sequence[str]:
791
791
  """
792
- Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for 'recurrence_type', 'WEEKLY' and is not applicable otherwise. Possible values: ["DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY"]
792
+ Specifies days of week like MONDAY or TUESDAY, on which jobs will run. This is required for 'recurrence_type', 'WEEKLY' and is not applicable otherwise. Possible values: ["DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"]
793
793
  """
794
794
  return pulumi.get(self, "days_of_weeks")
795
795
 
@@ -1851,7 +1851,7 @@ class Table(pulumi.CustomResource):
1851
1851
 
1852
1852
  @property
1853
1853
  @pulumi.getter(name="maxStaleness")
1854
- def max_staleness(self) -> pulumi.Output[Optional[str]]:
1854
+ def max_staleness(self) -> pulumi.Output[str]:
1855
1855
  """
1856
1856
  The maximum staleness of data that could be
1857
1857
  returned when the table (or stale MV) is queried. Staleness encoded as a