pulumi-gcp 8.17.0a1738274430__py3-none-any.whl → 8.17.0a1738349438__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 (83) hide show
  1. pulumi_gcp/__init__.py +91 -0
  2. pulumi_gcp/alloydb/cluster.py +75 -7
  3. pulumi_gcp/apigee/_inputs.py +91 -0
  4. pulumi_gcp/apigee/endpoint_attachment.py +0 -64
  5. pulumi_gcp/apigee/environment.py +54 -0
  6. pulumi_gcp/apigee/outputs.py +54 -0
  7. pulumi_gcp/apihub/__init__.py +10 -0
  8. pulumi_gcp/apihub/_inputs.py +154 -0
  9. pulumi_gcp/apihub/api_hub_instance.py +784 -0
  10. pulumi_gcp/apihub/outputs.py +124 -0
  11. pulumi_gcp/chronicle/__init__.py +1 -0
  12. pulumi_gcp/chronicle/_inputs.py +124 -0
  13. pulumi_gcp/chronicle/outputs.py +112 -0
  14. pulumi_gcp/chronicle/retrohunt.py +645 -0
  15. pulumi_gcp/cloudrunv2/_inputs.py +197 -0
  16. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  17. pulumi_gcp/cloudrunv2/outputs.py +256 -0
  18. pulumi_gcp/cloudrunv2/service.py +159 -0
  19. pulumi_gcp/colab/__init__.py +5 -0
  20. pulumi_gcp/colab/_inputs.py +131 -0
  21. pulumi_gcp/colab/get_runtime_template_iam_policy.py +182 -0
  22. pulumi_gcp/colab/outputs.py +92 -0
  23. pulumi_gcp/colab/runtime.py +696 -0
  24. pulumi_gcp/colab/runtime_template_iam_binding.py +828 -0
  25. pulumi_gcp/colab/runtime_template_iam_member.py +828 -0
  26. pulumi_gcp/colab/runtime_template_iam_policy.py +667 -0
  27. pulumi_gcp/compute/__init__.py +4 -0
  28. pulumi_gcp/compute/_inputs.py +526 -0
  29. pulumi_gcp/compute/firewall_policy_rule.py +104 -22
  30. pulumi_gcp/compute/firewall_policy_with_rules.py +114 -42
  31. pulumi_gcp/compute/get_instance_template_iam_policy.py +159 -0
  32. pulumi_gcp/compute/instance_template_iam_binding.py +998 -0
  33. pulumi_gcp/compute/instance_template_iam_member.py +998 -0
  34. pulumi_gcp/compute/instance_template_iam_policy.py +817 -0
  35. pulumi_gcp/compute/interconnect_attachment.py +189 -2
  36. pulumi_gcp/compute/network_firewall_policy_rule.py +122 -10
  37. pulumi_gcp/compute/network_firewall_policy_with_rules.py +116 -44
  38. pulumi_gcp/compute/outputs.py +352 -0
  39. pulumi_gcp/compute/project_metadata_item.py +12 -0
  40. pulumi_gcp/compute/public_advertised_prefix.py +87 -0
  41. pulumi_gcp/compute/region_network_firewall_policy_rule.py +130 -10
  42. pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +104 -32
  43. pulumi_gcp/compute/router_peer.py +115 -3
  44. pulumi_gcp/config/__init__.pyi +2 -0
  45. pulumi_gcp/config/vars.py +4 -0
  46. pulumi_gcp/filestore/get_instance.py +12 -1
  47. pulumi_gcp/filestore/instance.py +75 -0
  48. pulumi_gcp/gemini/code_repository_index.py +29 -33
  49. pulumi_gcp/gemini/get_repository_group_iam_policy.py +28 -2
  50. pulumi_gcp/gemini/repository_group.py +76 -26
  51. pulumi_gcp/gemini/repository_group_iam_binding.py +258 -0
  52. pulumi_gcp/gemini/repository_group_iam_member.py +258 -0
  53. pulumi_gcp/gemini/repository_group_iam_policy.py +258 -0
  54. pulumi_gcp/kms/__init__.py +1 -0
  55. pulumi_gcp/kms/get_key_handles.py +172 -0
  56. pulumi_gcp/kms/outputs.py +45 -0
  57. pulumi_gcp/networksecurity/_inputs.py +72 -0
  58. pulumi_gcp/networksecurity/outputs.py +76 -0
  59. pulumi_gcp/networksecurity/security_profile.py +233 -7
  60. pulumi_gcp/networksecurity/security_profile_group.py +218 -0
  61. pulumi_gcp/organizations/__init__.py +1 -0
  62. pulumi_gcp/organizations/get_s.py +128 -0
  63. pulumi_gcp/organizations/outputs.py +63 -0
  64. pulumi_gcp/parametermanager/__init__.py +3 -0
  65. pulumi_gcp/parametermanager/get_parameter.py +211 -0
  66. pulumi_gcp/parametermanager/get_regional_parameters.py +157 -0
  67. pulumi_gcp/parametermanager/outputs.py +210 -0
  68. pulumi_gcp/parametermanager/parameter_version.py +496 -0
  69. pulumi_gcp/parametermanager/regional_parameter_version.py +10 -38
  70. pulumi_gcp/provider.py +20 -0
  71. pulumi_gcp/pubsub/_inputs.py +213 -1
  72. pulumi_gcp/pubsub/outputs.py +278 -2
  73. pulumi_gcp/pubsub/topic.py +42 -0
  74. pulumi_gcp/pulumi-plugin.json +1 -1
  75. pulumi_gcp/redis/__init__.py +1 -0
  76. pulumi_gcp/redis/_inputs.py +342 -6
  77. pulumi_gcp/redis/cluster.py +223 -102
  78. pulumi_gcp/redis/cluster_user_created_connections.py +845 -0
  79. pulumi_gcp/redis/outputs.py +268 -4
  80. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.17.0a1738349438.dist-info}/METADATA +1 -1
  81. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.17.0a1738349438.dist-info}/RECORD +83 -63
  82. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.17.0a1738349438.dist-info}/WHEEL +0 -0
  83. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.17.0a1738349438.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,696 @@
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
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['RuntimeArgs', 'Runtime']
20
+
21
+ @pulumi.input_type
22
+ class RuntimeArgs:
23
+ def __init__(__self__, *,
24
+ display_name: pulumi.Input[str],
25
+ location: pulumi.Input[str],
26
+ runtime_user: pulumi.Input[str],
27
+ description: Optional[pulumi.Input[str]] = None,
28
+ name: Optional[pulumi.Input[str]] = None,
29
+ notebook_runtime_template_ref: Optional[pulumi.Input['RuntimeNotebookRuntimeTemplateRefArgs']] = None,
30
+ project: Optional[pulumi.Input[str]] = None):
31
+ """
32
+ The set of arguments for constructing a Runtime resource.
33
+ :param pulumi.Input[str] display_name: Required. The display name of the Runtime.
34
+ :param pulumi.Input[str] location: The location for the resource: https://cloud.google.com/colab/docs/locations
35
+
36
+
37
+ - - -
38
+ :param pulumi.Input[str] runtime_user: The user email of the NotebookRuntime.
39
+ :param pulumi.Input[str] description: The description of the Runtime.
40
+ :param pulumi.Input[str] name: The resource name of the Runtime
41
+ :param pulumi.Input['RuntimeNotebookRuntimeTemplateRefArgs'] notebook_runtime_template_ref: 'Runtime specific information used for NotebookRuntime creation.'
42
+ Structure is documented below.
43
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
44
+ If it is not provided, the provider project is used.
45
+ """
46
+ pulumi.set(__self__, "display_name", display_name)
47
+ pulumi.set(__self__, "location", location)
48
+ pulumi.set(__self__, "runtime_user", runtime_user)
49
+ if description is not None:
50
+ pulumi.set(__self__, "description", description)
51
+ if name is not None:
52
+ pulumi.set(__self__, "name", name)
53
+ if notebook_runtime_template_ref is not None:
54
+ pulumi.set(__self__, "notebook_runtime_template_ref", notebook_runtime_template_ref)
55
+ if project is not None:
56
+ pulumi.set(__self__, "project", project)
57
+
58
+ @property
59
+ @pulumi.getter(name="displayName")
60
+ def display_name(self) -> pulumi.Input[str]:
61
+ """
62
+ Required. The display name of the Runtime.
63
+ """
64
+ return pulumi.get(self, "display_name")
65
+
66
+ @display_name.setter
67
+ def display_name(self, value: pulumi.Input[str]):
68
+ pulumi.set(self, "display_name", value)
69
+
70
+ @property
71
+ @pulumi.getter
72
+ def location(self) -> pulumi.Input[str]:
73
+ """
74
+ The location for the resource: https://cloud.google.com/colab/docs/locations
75
+
76
+
77
+ - - -
78
+ """
79
+ return pulumi.get(self, "location")
80
+
81
+ @location.setter
82
+ def location(self, value: pulumi.Input[str]):
83
+ pulumi.set(self, "location", value)
84
+
85
+ @property
86
+ @pulumi.getter(name="runtimeUser")
87
+ def runtime_user(self) -> pulumi.Input[str]:
88
+ """
89
+ The user email of the NotebookRuntime.
90
+ """
91
+ return pulumi.get(self, "runtime_user")
92
+
93
+ @runtime_user.setter
94
+ def runtime_user(self, value: pulumi.Input[str]):
95
+ pulumi.set(self, "runtime_user", value)
96
+
97
+ @property
98
+ @pulumi.getter
99
+ def description(self) -> Optional[pulumi.Input[str]]:
100
+ """
101
+ The description of the Runtime.
102
+ """
103
+ return pulumi.get(self, "description")
104
+
105
+ @description.setter
106
+ def description(self, value: Optional[pulumi.Input[str]]):
107
+ pulumi.set(self, "description", value)
108
+
109
+ @property
110
+ @pulumi.getter
111
+ def name(self) -> Optional[pulumi.Input[str]]:
112
+ """
113
+ The resource name of the Runtime
114
+ """
115
+ return pulumi.get(self, "name")
116
+
117
+ @name.setter
118
+ def name(self, value: Optional[pulumi.Input[str]]):
119
+ pulumi.set(self, "name", value)
120
+
121
+ @property
122
+ @pulumi.getter(name="notebookRuntimeTemplateRef")
123
+ def notebook_runtime_template_ref(self) -> Optional[pulumi.Input['RuntimeNotebookRuntimeTemplateRefArgs']]:
124
+ """
125
+ 'Runtime specific information used for NotebookRuntime creation.'
126
+ Structure is documented below.
127
+ """
128
+ return pulumi.get(self, "notebook_runtime_template_ref")
129
+
130
+ @notebook_runtime_template_ref.setter
131
+ def notebook_runtime_template_ref(self, value: Optional[pulumi.Input['RuntimeNotebookRuntimeTemplateRefArgs']]):
132
+ pulumi.set(self, "notebook_runtime_template_ref", value)
133
+
134
+ @property
135
+ @pulumi.getter
136
+ def project(self) -> Optional[pulumi.Input[str]]:
137
+ """
138
+ The ID of the project in which the resource belongs.
139
+ If it is not provided, the provider project is used.
140
+ """
141
+ return pulumi.get(self, "project")
142
+
143
+ @project.setter
144
+ def project(self, value: Optional[pulumi.Input[str]]):
145
+ pulumi.set(self, "project", value)
146
+
147
+
148
+ @pulumi.input_type
149
+ class _RuntimeState:
150
+ def __init__(__self__, *,
151
+ description: Optional[pulumi.Input[str]] = None,
152
+ display_name: Optional[pulumi.Input[str]] = None,
153
+ location: Optional[pulumi.Input[str]] = None,
154
+ name: Optional[pulumi.Input[str]] = None,
155
+ notebook_runtime_template_ref: Optional[pulumi.Input['RuntimeNotebookRuntimeTemplateRefArgs']] = None,
156
+ project: Optional[pulumi.Input[str]] = None,
157
+ runtime_user: Optional[pulumi.Input[str]] = None):
158
+ """
159
+ Input properties used for looking up and filtering Runtime resources.
160
+ :param pulumi.Input[str] description: The description of the Runtime.
161
+ :param pulumi.Input[str] display_name: Required. The display name of the Runtime.
162
+ :param pulumi.Input[str] location: The location for the resource: https://cloud.google.com/colab/docs/locations
163
+
164
+
165
+ - - -
166
+ :param pulumi.Input[str] name: The resource name of the Runtime
167
+ :param pulumi.Input['RuntimeNotebookRuntimeTemplateRefArgs'] notebook_runtime_template_ref: 'Runtime specific information used for NotebookRuntime creation.'
168
+ Structure is documented below.
169
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
170
+ If it is not provided, the provider project is used.
171
+ :param pulumi.Input[str] runtime_user: The user email of the NotebookRuntime.
172
+ """
173
+ if description is not None:
174
+ pulumi.set(__self__, "description", description)
175
+ if display_name is not None:
176
+ pulumi.set(__self__, "display_name", display_name)
177
+ if location is not None:
178
+ pulumi.set(__self__, "location", location)
179
+ if name is not None:
180
+ pulumi.set(__self__, "name", name)
181
+ if notebook_runtime_template_ref is not None:
182
+ pulumi.set(__self__, "notebook_runtime_template_ref", notebook_runtime_template_ref)
183
+ if project is not None:
184
+ pulumi.set(__self__, "project", project)
185
+ if runtime_user is not None:
186
+ pulumi.set(__self__, "runtime_user", runtime_user)
187
+
188
+ @property
189
+ @pulumi.getter
190
+ def description(self) -> Optional[pulumi.Input[str]]:
191
+ """
192
+ The description of the Runtime.
193
+ """
194
+ return pulumi.get(self, "description")
195
+
196
+ @description.setter
197
+ def description(self, value: Optional[pulumi.Input[str]]):
198
+ pulumi.set(self, "description", value)
199
+
200
+ @property
201
+ @pulumi.getter(name="displayName")
202
+ def display_name(self) -> Optional[pulumi.Input[str]]:
203
+ """
204
+ Required. The display name of the Runtime.
205
+ """
206
+ return pulumi.get(self, "display_name")
207
+
208
+ @display_name.setter
209
+ def display_name(self, value: Optional[pulumi.Input[str]]):
210
+ pulumi.set(self, "display_name", value)
211
+
212
+ @property
213
+ @pulumi.getter
214
+ def location(self) -> Optional[pulumi.Input[str]]:
215
+ """
216
+ The location for the resource: https://cloud.google.com/colab/docs/locations
217
+
218
+
219
+ - - -
220
+ """
221
+ return pulumi.get(self, "location")
222
+
223
+ @location.setter
224
+ def location(self, value: Optional[pulumi.Input[str]]):
225
+ pulumi.set(self, "location", value)
226
+
227
+ @property
228
+ @pulumi.getter
229
+ def name(self) -> Optional[pulumi.Input[str]]:
230
+ """
231
+ The resource name of the Runtime
232
+ """
233
+ return pulumi.get(self, "name")
234
+
235
+ @name.setter
236
+ def name(self, value: Optional[pulumi.Input[str]]):
237
+ pulumi.set(self, "name", value)
238
+
239
+ @property
240
+ @pulumi.getter(name="notebookRuntimeTemplateRef")
241
+ def notebook_runtime_template_ref(self) -> Optional[pulumi.Input['RuntimeNotebookRuntimeTemplateRefArgs']]:
242
+ """
243
+ 'Runtime specific information used for NotebookRuntime creation.'
244
+ Structure is documented below.
245
+ """
246
+ return pulumi.get(self, "notebook_runtime_template_ref")
247
+
248
+ @notebook_runtime_template_ref.setter
249
+ def notebook_runtime_template_ref(self, value: Optional[pulumi.Input['RuntimeNotebookRuntimeTemplateRefArgs']]):
250
+ pulumi.set(self, "notebook_runtime_template_ref", value)
251
+
252
+ @property
253
+ @pulumi.getter
254
+ def project(self) -> Optional[pulumi.Input[str]]:
255
+ """
256
+ The ID of the project in which the resource belongs.
257
+ If it is not provided, the provider project is used.
258
+ """
259
+ return pulumi.get(self, "project")
260
+
261
+ @project.setter
262
+ def project(self, value: Optional[pulumi.Input[str]]):
263
+ pulumi.set(self, "project", value)
264
+
265
+ @property
266
+ @pulumi.getter(name="runtimeUser")
267
+ def runtime_user(self) -> Optional[pulumi.Input[str]]:
268
+ """
269
+ The user email of the NotebookRuntime.
270
+ """
271
+ return pulumi.get(self, "runtime_user")
272
+
273
+ @runtime_user.setter
274
+ def runtime_user(self, value: Optional[pulumi.Input[str]]):
275
+ pulumi.set(self, "runtime_user", value)
276
+
277
+
278
+ class Runtime(pulumi.CustomResource):
279
+ @overload
280
+ def __init__(__self__,
281
+ resource_name: str,
282
+ opts: Optional[pulumi.ResourceOptions] = None,
283
+ description: Optional[pulumi.Input[str]] = None,
284
+ display_name: Optional[pulumi.Input[str]] = None,
285
+ location: Optional[pulumi.Input[str]] = None,
286
+ name: Optional[pulumi.Input[str]] = None,
287
+ notebook_runtime_template_ref: Optional[pulumi.Input[Union['RuntimeNotebookRuntimeTemplateRefArgs', 'RuntimeNotebookRuntimeTemplateRefArgsDict']]] = None,
288
+ project: Optional[pulumi.Input[str]] = None,
289
+ runtime_user: Optional[pulumi.Input[str]] = None,
290
+ __props__=None):
291
+ """
292
+ 'A runtime is a Google-provisioned virtual machine (VM) that can run the code in your notebook (IPYNB file).'
293
+
294
+ To get more information about Runtime, see:
295
+
296
+ * [API documentation](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/projects.locations.notebookRuntimes)
297
+ * How-to Guides
298
+ * [Create a runtime](https://cloud.google.com/colab/docs/create-runtime)
299
+
300
+ ## Example Usage
301
+
302
+ ### Colab Runtime Basic
303
+
304
+ ```python
305
+ import pulumi
306
+ import pulumi_gcp as gcp
307
+
308
+ my_template = gcp.colab.RuntimeTemplate("my_template",
309
+ name="colab-runtime",
310
+ display_name="Runtime template basic",
311
+ location="us-central1",
312
+ machine_spec={
313
+ "machine_type": "e2-standard-4",
314
+ },
315
+ network_spec={
316
+ "enable_internet_access": True,
317
+ })
318
+ runtime = gcp.colab.Runtime("runtime",
319
+ name="colab-runtime",
320
+ location="us-central1",
321
+ notebook_runtime_template_ref={
322
+ "notebook_runtime_template": my_template.id,
323
+ },
324
+ display_name="Runtime basic",
325
+ runtime_user="gterraformtestuser@gmail.com",
326
+ opts = pulumi.ResourceOptions(depends_on=[my_template]))
327
+ ```
328
+ ### Colab Runtime Full
329
+
330
+ ```python
331
+ import pulumi
332
+ import pulumi_gcp as gcp
333
+
334
+ my_template = gcp.colab.RuntimeTemplate("my_template",
335
+ name="colab-runtime",
336
+ display_name="Runtime template full",
337
+ location="us-central1",
338
+ description="Full runtime template",
339
+ machine_spec={
340
+ "machine_type": "n1-standard-2",
341
+ "accelerator_type": "NVIDIA_TESLA_T4",
342
+ "accelerator_count": 1,
343
+ },
344
+ data_persistent_disk_spec={
345
+ "disk_type": "pd-standard",
346
+ "disk_size_gb": "200",
347
+ },
348
+ network_spec={
349
+ "enable_internet_access": True,
350
+ },
351
+ labels={
352
+ "k": "val",
353
+ },
354
+ idle_shutdown_config={
355
+ "idle_timeout": "3600s",
356
+ },
357
+ euc_config={
358
+ "euc_disabled": True,
359
+ },
360
+ shielded_vm_config={
361
+ "enable_secure_boot": True,
362
+ },
363
+ network_tags=[
364
+ "abc",
365
+ "def",
366
+ ],
367
+ encryption_spec={
368
+ "kms_key_name": "my-crypto-key",
369
+ })
370
+ runtime = gcp.colab.Runtime("runtime",
371
+ name="colab-runtime",
372
+ location="us-central1",
373
+ notebook_runtime_template_ref={
374
+ "notebook_runtime_template": my_template.id,
375
+ },
376
+ display_name="Runtime full",
377
+ runtime_user="gterraformtestuser@gmail.com",
378
+ description="Full runtime",
379
+ opts = pulumi.ResourceOptions(depends_on=[my_template]))
380
+ ```
381
+
382
+ ## Import
383
+
384
+ Runtime can be imported using any of these accepted formats:
385
+
386
+ * `projects/{{project}}/locations/{{location}}/notebookRuntimes/{{name}}`
387
+
388
+ * `{{project}}/{{location}}/{{name}}`
389
+
390
+ * `{{location}}/{{name}}`
391
+
392
+ When using the `pulumi import` command, Runtime can be imported using one of the formats above. For example:
393
+
394
+ ```sh
395
+ $ pulumi import gcp:colab/runtime:Runtime default projects/{{project}}/locations/{{location}}/notebookRuntimes/{{name}}
396
+ ```
397
+
398
+ ```sh
399
+ $ pulumi import gcp:colab/runtime:Runtime default {{project}}/{{location}}/{{name}}
400
+ ```
401
+
402
+ ```sh
403
+ $ pulumi import gcp:colab/runtime:Runtime default {{location}}/{{name}}
404
+ ```
405
+
406
+ :param str resource_name: The name of the resource.
407
+ :param pulumi.ResourceOptions opts: Options for the resource.
408
+ :param pulumi.Input[str] description: The description of the Runtime.
409
+ :param pulumi.Input[str] display_name: Required. The display name of the Runtime.
410
+ :param pulumi.Input[str] location: The location for the resource: https://cloud.google.com/colab/docs/locations
411
+
412
+
413
+ - - -
414
+ :param pulumi.Input[str] name: The resource name of the Runtime
415
+ :param pulumi.Input[Union['RuntimeNotebookRuntimeTemplateRefArgs', 'RuntimeNotebookRuntimeTemplateRefArgsDict']] notebook_runtime_template_ref: 'Runtime specific information used for NotebookRuntime creation.'
416
+ Structure is documented below.
417
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
418
+ If it is not provided, the provider project is used.
419
+ :param pulumi.Input[str] runtime_user: The user email of the NotebookRuntime.
420
+ """
421
+ ...
422
+ @overload
423
+ def __init__(__self__,
424
+ resource_name: str,
425
+ args: RuntimeArgs,
426
+ opts: Optional[pulumi.ResourceOptions] = None):
427
+ """
428
+ 'A runtime is a Google-provisioned virtual machine (VM) that can run the code in your notebook (IPYNB file).'
429
+
430
+ To get more information about Runtime, see:
431
+
432
+ * [API documentation](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/projects.locations.notebookRuntimes)
433
+ * How-to Guides
434
+ * [Create a runtime](https://cloud.google.com/colab/docs/create-runtime)
435
+
436
+ ## Example Usage
437
+
438
+ ### Colab Runtime Basic
439
+
440
+ ```python
441
+ import pulumi
442
+ import pulumi_gcp as gcp
443
+
444
+ my_template = gcp.colab.RuntimeTemplate("my_template",
445
+ name="colab-runtime",
446
+ display_name="Runtime template basic",
447
+ location="us-central1",
448
+ machine_spec={
449
+ "machine_type": "e2-standard-4",
450
+ },
451
+ network_spec={
452
+ "enable_internet_access": True,
453
+ })
454
+ runtime = gcp.colab.Runtime("runtime",
455
+ name="colab-runtime",
456
+ location="us-central1",
457
+ notebook_runtime_template_ref={
458
+ "notebook_runtime_template": my_template.id,
459
+ },
460
+ display_name="Runtime basic",
461
+ runtime_user="gterraformtestuser@gmail.com",
462
+ opts = pulumi.ResourceOptions(depends_on=[my_template]))
463
+ ```
464
+ ### Colab Runtime Full
465
+
466
+ ```python
467
+ import pulumi
468
+ import pulumi_gcp as gcp
469
+
470
+ my_template = gcp.colab.RuntimeTemplate("my_template",
471
+ name="colab-runtime",
472
+ display_name="Runtime template full",
473
+ location="us-central1",
474
+ description="Full runtime template",
475
+ machine_spec={
476
+ "machine_type": "n1-standard-2",
477
+ "accelerator_type": "NVIDIA_TESLA_T4",
478
+ "accelerator_count": 1,
479
+ },
480
+ data_persistent_disk_spec={
481
+ "disk_type": "pd-standard",
482
+ "disk_size_gb": "200",
483
+ },
484
+ network_spec={
485
+ "enable_internet_access": True,
486
+ },
487
+ labels={
488
+ "k": "val",
489
+ },
490
+ idle_shutdown_config={
491
+ "idle_timeout": "3600s",
492
+ },
493
+ euc_config={
494
+ "euc_disabled": True,
495
+ },
496
+ shielded_vm_config={
497
+ "enable_secure_boot": True,
498
+ },
499
+ network_tags=[
500
+ "abc",
501
+ "def",
502
+ ],
503
+ encryption_spec={
504
+ "kms_key_name": "my-crypto-key",
505
+ })
506
+ runtime = gcp.colab.Runtime("runtime",
507
+ name="colab-runtime",
508
+ location="us-central1",
509
+ notebook_runtime_template_ref={
510
+ "notebook_runtime_template": my_template.id,
511
+ },
512
+ display_name="Runtime full",
513
+ runtime_user="gterraformtestuser@gmail.com",
514
+ description="Full runtime",
515
+ opts = pulumi.ResourceOptions(depends_on=[my_template]))
516
+ ```
517
+
518
+ ## Import
519
+
520
+ Runtime can be imported using any of these accepted formats:
521
+
522
+ * `projects/{{project}}/locations/{{location}}/notebookRuntimes/{{name}}`
523
+
524
+ * `{{project}}/{{location}}/{{name}}`
525
+
526
+ * `{{location}}/{{name}}`
527
+
528
+ When using the `pulumi import` command, Runtime can be imported using one of the formats above. For example:
529
+
530
+ ```sh
531
+ $ pulumi import gcp:colab/runtime:Runtime default projects/{{project}}/locations/{{location}}/notebookRuntimes/{{name}}
532
+ ```
533
+
534
+ ```sh
535
+ $ pulumi import gcp:colab/runtime:Runtime default {{project}}/{{location}}/{{name}}
536
+ ```
537
+
538
+ ```sh
539
+ $ pulumi import gcp:colab/runtime:Runtime default {{location}}/{{name}}
540
+ ```
541
+
542
+ :param str resource_name: The name of the resource.
543
+ :param RuntimeArgs args: The arguments to use to populate this resource's properties.
544
+ :param pulumi.ResourceOptions opts: Options for the resource.
545
+ """
546
+ ...
547
+ def __init__(__self__, resource_name: str, *args, **kwargs):
548
+ resource_args, opts = _utilities.get_resource_args_opts(RuntimeArgs, pulumi.ResourceOptions, *args, **kwargs)
549
+ if resource_args is not None:
550
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
551
+ else:
552
+ __self__._internal_init(resource_name, *args, **kwargs)
553
+
554
+ def _internal_init(__self__,
555
+ resource_name: str,
556
+ opts: Optional[pulumi.ResourceOptions] = None,
557
+ description: Optional[pulumi.Input[str]] = None,
558
+ display_name: Optional[pulumi.Input[str]] = None,
559
+ location: Optional[pulumi.Input[str]] = None,
560
+ name: Optional[pulumi.Input[str]] = None,
561
+ notebook_runtime_template_ref: Optional[pulumi.Input[Union['RuntimeNotebookRuntimeTemplateRefArgs', 'RuntimeNotebookRuntimeTemplateRefArgsDict']]] = None,
562
+ project: Optional[pulumi.Input[str]] = None,
563
+ runtime_user: Optional[pulumi.Input[str]] = None,
564
+ __props__=None):
565
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
566
+ if not isinstance(opts, pulumi.ResourceOptions):
567
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
568
+ if opts.id is None:
569
+ if __props__ is not None:
570
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
571
+ __props__ = RuntimeArgs.__new__(RuntimeArgs)
572
+
573
+ __props__.__dict__["description"] = description
574
+ if display_name is None and not opts.urn:
575
+ raise TypeError("Missing required property 'display_name'")
576
+ __props__.__dict__["display_name"] = display_name
577
+ if location is None and not opts.urn:
578
+ raise TypeError("Missing required property 'location'")
579
+ __props__.__dict__["location"] = location
580
+ __props__.__dict__["name"] = name
581
+ __props__.__dict__["notebook_runtime_template_ref"] = notebook_runtime_template_ref
582
+ __props__.__dict__["project"] = project
583
+ if runtime_user is None and not opts.urn:
584
+ raise TypeError("Missing required property 'runtime_user'")
585
+ __props__.__dict__["runtime_user"] = runtime_user
586
+ super(Runtime, __self__).__init__(
587
+ 'gcp:colab/runtime:Runtime',
588
+ resource_name,
589
+ __props__,
590
+ opts)
591
+
592
+ @staticmethod
593
+ def get(resource_name: str,
594
+ id: pulumi.Input[str],
595
+ opts: Optional[pulumi.ResourceOptions] = None,
596
+ description: Optional[pulumi.Input[str]] = None,
597
+ display_name: Optional[pulumi.Input[str]] = None,
598
+ location: Optional[pulumi.Input[str]] = None,
599
+ name: Optional[pulumi.Input[str]] = None,
600
+ notebook_runtime_template_ref: Optional[pulumi.Input[Union['RuntimeNotebookRuntimeTemplateRefArgs', 'RuntimeNotebookRuntimeTemplateRefArgsDict']]] = None,
601
+ project: Optional[pulumi.Input[str]] = None,
602
+ runtime_user: Optional[pulumi.Input[str]] = None) -> 'Runtime':
603
+ """
604
+ Get an existing Runtime resource's state with the given name, id, and optional extra
605
+ properties used to qualify the lookup.
606
+
607
+ :param str resource_name: The unique name of the resulting resource.
608
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
609
+ :param pulumi.ResourceOptions opts: Options for the resource.
610
+ :param pulumi.Input[str] description: The description of the Runtime.
611
+ :param pulumi.Input[str] display_name: Required. The display name of the Runtime.
612
+ :param pulumi.Input[str] location: The location for the resource: https://cloud.google.com/colab/docs/locations
613
+
614
+
615
+ - - -
616
+ :param pulumi.Input[str] name: The resource name of the Runtime
617
+ :param pulumi.Input[Union['RuntimeNotebookRuntimeTemplateRefArgs', 'RuntimeNotebookRuntimeTemplateRefArgsDict']] notebook_runtime_template_ref: 'Runtime specific information used for NotebookRuntime creation.'
618
+ Structure is documented below.
619
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
620
+ If it is not provided, the provider project is used.
621
+ :param pulumi.Input[str] runtime_user: The user email of the NotebookRuntime.
622
+ """
623
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
624
+
625
+ __props__ = _RuntimeState.__new__(_RuntimeState)
626
+
627
+ __props__.__dict__["description"] = description
628
+ __props__.__dict__["display_name"] = display_name
629
+ __props__.__dict__["location"] = location
630
+ __props__.__dict__["name"] = name
631
+ __props__.__dict__["notebook_runtime_template_ref"] = notebook_runtime_template_ref
632
+ __props__.__dict__["project"] = project
633
+ __props__.__dict__["runtime_user"] = runtime_user
634
+ return Runtime(resource_name, opts=opts, __props__=__props__)
635
+
636
+ @property
637
+ @pulumi.getter
638
+ def description(self) -> pulumi.Output[Optional[str]]:
639
+ """
640
+ The description of the Runtime.
641
+ """
642
+ return pulumi.get(self, "description")
643
+
644
+ @property
645
+ @pulumi.getter(name="displayName")
646
+ def display_name(self) -> pulumi.Output[str]:
647
+ """
648
+ Required. The display name of the Runtime.
649
+ """
650
+ return pulumi.get(self, "display_name")
651
+
652
+ @property
653
+ @pulumi.getter
654
+ def location(self) -> pulumi.Output[str]:
655
+ """
656
+ The location for the resource: https://cloud.google.com/colab/docs/locations
657
+
658
+
659
+ - - -
660
+ """
661
+ return pulumi.get(self, "location")
662
+
663
+ @property
664
+ @pulumi.getter
665
+ def name(self) -> pulumi.Output[str]:
666
+ """
667
+ The resource name of the Runtime
668
+ """
669
+ return pulumi.get(self, "name")
670
+
671
+ @property
672
+ @pulumi.getter(name="notebookRuntimeTemplateRef")
673
+ def notebook_runtime_template_ref(self) -> pulumi.Output[Optional['outputs.RuntimeNotebookRuntimeTemplateRef']]:
674
+ """
675
+ 'Runtime specific information used for NotebookRuntime creation.'
676
+ Structure is documented below.
677
+ """
678
+ return pulumi.get(self, "notebook_runtime_template_ref")
679
+
680
+ @property
681
+ @pulumi.getter
682
+ def project(self) -> pulumi.Output[str]:
683
+ """
684
+ The ID of the project in which the resource belongs.
685
+ If it is not provided, the provider project is used.
686
+ """
687
+ return pulumi.get(self, "project")
688
+
689
+ @property
690
+ @pulumi.getter(name="runtimeUser")
691
+ def runtime_user(self) -> pulumi.Output[str]:
692
+ """
693
+ The user email of the NotebookRuntime.
694
+ """
695
+ return pulumi.get(self, "runtime_user")
696
+