pulumi-gcp 8.17.0a1738274430__py3-none-any.whl → 8.18.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 (137) hide show
  1. pulumi_gcp/__init__.py +115 -0
  2. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +28 -0
  3. pulumi_gcp/alloydb/cluster.py +75 -7
  4. pulumi_gcp/alloydb/user.py +10 -1
  5. pulumi_gcp/apigee/_inputs.py +91 -0
  6. pulumi_gcp/apigee/endpoint_attachment.py +0 -64
  7. pulumi_gcp/apigee/environment.py +54 -0
  8. pulumi_gcp/apigee/outputs.py +54 -0
  9. pulumi_gcp/apihub/__init__.py +10 -0
  10. pulumi_gcp/apihub/_inputs.py +154 -0
  11. pulumi_gcp/apihub/api_hub_instance.py +784 -0
  12. pulumi_gcp/apihub/outputs.py +124 -0
  13. pulumi_gcp/assuredworkloads/workload.py +7 -7
  14. pulumi_gcp/beyondcorp/__init__.py +4 -0
  15. pulumi_gcp/beyondcorp/_inputs.py +130 -0
  16. pulumi_gcp/beyondcorp/get_security_gateway_iam_policy.py +180 -0
  17. pulumi_gcp/beyondcorp/outputs.py +76 -0
  18. pulumi_gcp/beyondcorp/security_gateway.py +52 -25
  19. pulumi_gcp/beyondcorp/security_gateway_iam_binding.py +1075 -0
  20. pulumi_gcp/beyondcorp/security_gateway_iam_member.py +1075 -0
  21. pulumi_gcp/beyondcorp/security_gateway_iam_policy.py +894 -0
  22. pulumi_gcp/bigquery/_inputs.py +33 -0
  23. pulumi_gcp/bigquery/dataset.py +7 -7
  24. pulumi_gcp/bigquery/outputs.py +36 -0
  25. pulumi_gcp/bigquery/table.py +61 -7
  26. pulumi_gcp/chronicle/__init__.py +1 -0
  27. pulumi_gcp/chronicle/_inputs.py +124 -0
  28. pulumi_gcp/chronicle/outputs.py +112 -0
  29. pulumi_gcp/chronicle/retrohunt.py +629 -0
  30. pulumi_gcp/cloudquota/s_quota_adjuster_settings.py +23 -23
  31. pulumi_gcp/cloudrunv2/_inputs.py +197 -0
  32. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  33. pulumi_gcp/cloudrunv2/outputs.py +256 -0
  34. pulumi_gcp/cloudrunv2/service.py +159 -0
  35. pulumi_gcp/colab/__init__.py +5 -0
  36. pulumi_gcp/colab/_inputs.py +131 -0
  37. pulumi_gcp/colab/get_runtime_template_iam_policy.py +182 -0
  38. pulumi_gcp/colab/outputs.py +92 -0
  39. pulumi_gcp/colab/runtime.py +696 -0
  40. pulumi_gcp/colab/runtime_template_iam_binding.py +828 -0
  41. pulumi_gcp/colab/runtime_template_iam_member.py +828 -0
  42. pulumi_gcp/colab/runtime_template_iam_policy.py +667 -0
  43. pulumi_gcp/compute/__init__.py +4 -0
  44. pulumi_gcp/compute/_inputs.py +535 -9
  45. pulumi_gcp/compute/firewall_policy_rule.py +104 -22
  46. pulumi_gcp/compute/firewall_policy_with_rules.py +114 -42
  47. pulumi_gcp/compute/get_instance_template_iam_policy.py +159 -0
  48. pulumi_gcp/compute/get_network.py +3 -3
  49. pulumi_gcp/compute/instance_template_iam_binding.py +998 -0
  50. pulumi_gcp/compute/instance_template_iam_member.py +998 -0
  51. pulumi_gcp/compute/instance_template_iam_policy.py +817 -0
  52. pulumi_gcp/compute/interconnect_attachment.py +189 -2
  53. pulumi_gcp/compute/network.py +7 -7
  54. pulumi_gcp/compute/network_firewall_policy_rule.py +122 -10
  55. pulumi_gcp/compute/network_firewall_policy_with_rules.py +116 -44
  56. pulumi_gcp/compute/outputs.py +358 -6
  57. pulumi_gcp/compute/project_metadata_item.py +12 -0
  58. pulumi_gcp/compute/public_advertised_prefix.py +87 -0
  59. pulumi_gcp/compute/region_network_firewall_policy_rule.py +130 -10
  60. pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +104 -32
  61. pulumi_gcp/compute/router_peer.py +227 -3
  62. pulumi_gcp/config/__init__.pyi +2 -0
  63. pulumi_gcp/config/vars.py +4 -0
  64. pulumi_gcp/container/_inputs.py +79 -20
  65. pulumi_gcp/container/outputs.py +75 -12
  66. pulumi_gcp/dataproc/_inputs.py +34 -0
  67. pulumi_gcp/dataproc/outputs.py +37 -0
  68. pulumi_gcp/dataproc/workflow_template.py +47 -0
  69. pulumi_gcp/filestore/get_instance.py +12 -1
  70. pulumi_gcp/filestore/instance.py +75 -0
  71. pulumi_gcp/firestore/field.py +60 -0
  72. pulumi_gcp/gemini/code_repository_index.py +29 -33
  73. pulumi_gcp/gemini/get_repository_group_iam_policy.py +28 -2
  74. pulumi_gcp/gemini/repository_group.py +76 -26
  75. pulumi_gcp/gemini/repository_group_iam_binding.py +258 -0
  76. pulumi_gcp/gemini/repository_group_iam_member.py +258 -0
  77. pulumi_gcp/gemini/repository_group_iam_policy.py +258 -0
  78. pulumi_gcp/gkehub/_inputs.py +20 -0
  79. pulumi_gcp/gkehub/membership_binding.py +6 -6
  80. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  81. pulumi_gcp/gkehub/namespace.py +4 -4
  82. pulumi_gcp/gkehub/outputs.py +26 -1
  83. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  84. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  85. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  86. pulumi_gcp/kms/__init__.py +1 -0
  87. pulumi_gcp/kms/get_key_handles.py +172 -0
  88. pulumi_gcp/kms/outputs.py +45 -0
  89. pulumi_gcp/netapp/storage_pool.py +1 -1
  90. pulumi_gcp/networkconnectivity/spoke.py +76 -14
  91. pulumi_gcp/networksecurity/_inputs.py +72 -0
  92. pulumi_gcp/networksecurity/outputs.py +76 -0
  93. pulumi_gcp/networksecurity/security_profile.py +233 -7
  94. pulumi_gcp/networksecurity/security_profile_group.py +218 -0
  95. pulumi_gcp/organizations/__init__.py +1 -0
  96. pulumi_gcp/organizations/get_s.py +128 -0
  97. pulumi_gcp/organizations/outputs.py +63 -0
  98. pulumi_gcp/orgpolicy/policy.py +2 -2
  99. pulumi_gcp/parametermanager/__init__.py +6 -0
  100. pulumi_gcp/parametermanager/get_parameter.py +211 -0
  101. pulumi_gcp/parametermanager/get_parameter_version.py +216 -0
  102. pulumi_gcp/parametermanager/get_parameters.py +140 -0
  103. pulumi_gcp/parametermanager/get_regional_parameter_version.py +235 -0
  104. pulumi_gcp/parametermanager/get_regional_parameters.py +157 -0
  105. pulumi_gcp/parametermanager/outputs.py +366 -0
  106. pulumi_gcp/parametermanager/parameter_version.py +496 -0
  107. pulumi_gcp/parametermanager/regional_parameter_version.py +10 -38
  108. pulumi_gcp/provider.py +20 -0
  109. pulumi_gcp/pubsub/_inputs.py +477 -1
  110. pulumi_gcp/pubsub/outputs.py +631 -2
  111. pulumi_gcp/pubsub/subscription.py +6 -6
  112. pulumi_gcp/pubsub/topic.py +112 -0
  113. pulumi_gcp/pulumi-plugin.json +1 -1
  114. pulumi_gcp/redis/__init__.py +1 -0
  115. pulumi_gcp/redis/_inputs.py +342 -6
  116. pulumi_gcp/redis/cluster.py +223 -102
  117. pulumi_gcp/redis/cluster_user_created_connections.py +845 -0
  118. pulumi_gcp/redis/outputs.py +268 -4
  119. pulumi_gcp/resourcemanager/lien.py +12 -0
  120. pulumi_gcp/secretmanager/regional_secret.py +4 -0
  121. pulumi_gcp/secretmanager/regional_secret_version.py +12 -0
  122. pulumi_gcp/secretmanager/secret.py +4 -0
  123. pulumi_gcp/secretmanager/secret_version.py +12 -0
  124. pulumi_gcp/securityposture/posture.py +4 -0
  125. pulumi_gcp/securityposture/posture_deployment.py +4 -0
  126. pulumi_gcp/serviceaccount/get_s.py +98 -8
  127. pulumi_gcp/spanner/_inputs.py +68 -0
  128. pulumi_gcp/spanner/backup_schedule.py +70 -4
  129. pulumi_gcp/spanner/outputs.py +60 -0
  130. pulumi_gcp/storage/get_bucket_object_content.py +4 -4
  131. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  132. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  133. pulumi_gcp/workflows/workflow.py +175 -0
  134. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/METADATA +1 -1
  135. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/RECORD +137 -110
  136. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/WHEEL +0 -0
  137. {pulumi_gcp-8.17.0a1738274430.dist-info → pulumi_gcp-8.18.0.dist-info}/top_level.txt +0 -0
@@ -15,12 +15,18 @@ else:
15
15
  from .. import _utilities
16
16
 
17
17
  __all__ = [
18
+ 'RuntimeNotebookRuntimeTemplateRefArgs',
19
+ 'RuntimeNotebookRuntimeTemplateRefArgsDict',
18
20
  'RuntimeTemplateDataPersistentDiskSpecArgs',
19
21
  'RuntimeTemplateDataPersistentDiskSpecArgsDict',
20
22
  'RuntimeTemplateEncryptionSpecArgs',
21
23
  'RuntimeTemplateEncryptionSpecArgsDict',
22
24
  'RuntimeTemplateEucConfigArgs',
23
25
  'RuntimeTemplateEucConfigArgsDict',
26
+ 'RuntimeTemplateIamBindingConditionArgs',
27
+ 'RuntimeTemplateIamBindingConditionArgsDict',
28
+ 'RuntimeTemplateIamMemberConditionArgs',
29
+ 'RuntimeTemplateIamMemberConditionArgsDict',
24
30
  'RuntimeTemplateIdleShutdownConfigArgs',
25
31
  'RuntimeTemplateIdleShutdownConfigArgsDict',
26
32
  'RuntimeTemplateMachineSpecArgs',
@@ -33,6 +39,37 @@ __all__ = [
33
39
 
34
40
  MYPY = False
35
41
 
42
+ if not MYPY:
43
+ class RuntimeNotebookRuntimeTemplateRefArgsDict(TypedDict):
44
+ notebook_runtime_template: pulumi.Input[str]
45
+ """
46
+ The resource name of the NotebookRuntimeTemplate based on which a NotebookRuntime will be created.
47
+ """
48
+ elif False:
49
+ RuntimeNotebookRuntimeTemplateRefArgsDict: TypeAlias = Mapping[str, Any]
50
+
51
+ @pulumi.input_type
52
+ class RuntimeNotebookRuntimeTemplateRefArgs:
53
+ def __init__(__self__, *,
54
+ notebook_runtime_template: pulumi.Input[str]):
55
+ """
56
+ :param pulumi.Input[str] notebook_runtime_template: The resource name of the NotebookRuntimeTemplate based on which a NotebookRuntime will be created.
57
+ """
58
+ pulumi.set(__self__, "notebook_runtime_template", notebook_runtime_template)
59
+
60
+ @property
61
+ @pulumi.getter(name="notebookRuntimeTemplate")
62
+ def notebook_runtime_template(self) -> pulumi.Input[str]:
63
+ """
64
+ The resource name of the NotebookRuntimeTemplate based on which a NotebookRuntime will be created.
65
+ """
66
+ return pulumi.get(self, "notebook_runtime_template")
67
+
68
+ @notebook_runtime_template.setter
69
+ def notebook_runtime_template(self, value: pulumi.Input[str]):
70
+ pulumi.set(self, "notebook_runtime_template", value)
71
+
72
+
36
73
  if not MYPY:
37
74
  class RuntimeTemplateDataPersistentDiskSpecArgsDict(TypedDict):
38
75
  disk_size_gb: NotRequired[pulumi.Input[str]]
@@ -149,6 +186,100 @@ class RuntimeTemplateEucConfigArgs:
149
186
  pulumi.set(self, "euc_disabled", value)
150
187
 
151
188
 
189
+ if not MYPY:
190
+ class RuntimeTemplateIamBindingConditionArgsDict(TypedDict):
191
+ expression: pulumi.Input[str]
192
+ title: pulumi.Input[str]
193
+ description: NotRequired[pulumi.Input[str]]
194
+ elif False:
195
+ RuntimeTemplateIamBindingConditionArgsDict: TypeAlias = Mapping[str, Any]
196
+
197
+ @pulumi.input_type
198
+ class RuntimeTemplateIamBindingConditionArgs:
199
+ def __init__(__self__, *,
200
+ expression: pulumi.Input[str],
201
+ title: pulumi.Input[str],
202
+ description: Optional[pulumi.Input[str]] = None):
203
+ pulumi.set(__self__, "expression", expression)
204
+ pulumi.set(__self__, "title", title)
205
+ if description is not None:
206
+ pulumi.set(__self__, "description", description)
207
+
208
+ @property
209
+ @pulumi.getter
210
+ def expression(self) -> pulumi.Input[str]:
211
+ return pulumi.get(self, "expression")
212
+
213
+ @expression.setter
214
+ def expression(self, value: pulumi.Input[str]):
215
+ pulumi.set(self, "expression", value)
216
+
217
+ @property
218
+ @pulumi.getter
219
+ def title(self) -> pulumi.Input[str]:
220
+ return pulumi.get(self, "title")
221
+
222
+ @title.setter
223
+ def title(self, value: pulumi.Input[str]):
224
+ pulumi.set(self, "title", value)
225
+
226
+ @property
227
+ @pulumi.getter
228
+ def description(self) -> Optional[pulumi.Input[str]]:
229
+ return pulumi.get(self, "description")
230
+
231
+ @description.setter
232
+ def description(self, value: Optional[pulumi.Input[str]]):
233
+ pulumi.set(self, "description", value)
234
+
235
+
236
+ if not MYPY:
237
+ class RuntimeTemplateIamMemberConditionArgsDict(TypedDict):
238
+ expression: pulumi.Input[str]
239
+ title: pulumi.Input[str]
240
+ description: NotRequired[pulumi.Input[str]]
241
+ elif False:
242
+ RuntimeTemplateIamMemberConditionArgsDict: TypeAlias = Mapping[str, Any]
243
+
244
+ @pulumi.input_type
245
+ class RuntimeTemplateIamMemberConditionArgs:
246
+ def __init__(__self__, *,
247
+ expression: pulumi.Input[str],
248
+ title: pulumi.Input[str],
249
+ description: Optional[pulumi.Input[str]] = None):
250
+ pulumi.set(__self__, "expression", expression)
251
+ pulumi.set(__self__, "title", title)
252
+ if description is not None:
253
+ pulumi.set(__self__, "description", description)
254
+
255
+ @property
256
+ @pulumi.getter
257
+ def expression(self) -> pulumi.Input[str]:
258
+ return pulumi.get(self, "expression")
259
+
260
+ @expression.setter
261
+ def expression(self, value: pulumi.Input[str]):
262
+ pulumi.set(self, "expression", value)
263
+
264
+ @property
265
+ @pulumi.getter
266
+ def title(self) -> pulumi.Input[str]:
267
+ return pulumi.get(self, "title")
268
+
269
+ @title.setter
270
+ def title(self, value: pulumi.Input[str]):
271
+ pulumi.set(self, "title", value)
272
+
273
+ @property
274
+ @pulumi.getter
275
+ def description(self) -> Optional[pulumi.Input[str]]:
276
+ return pulumi.get(self, "description")
277
+
278
+ @description.setter
279
+ def description(self, value: Optional[pulumi.Input[str]]):
280
+ pulumi.set(self, "description", value)
281
+
282
+
152
283
  if not MYPY:
153
284
  class RuntimeTemplateIdleShutdownConfigArgsDict(TypedDict):
154
285
  idle_timeout: NotRequired[pulumi.Input[str]]
@@ -0,0 +1,182 @@
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__ = [
18
+ 'GetRuntimeTemplateIamPolicyResult',
19
+ 'AwaitableGetRuntimeTemplateIamPolicyResult',
20
+ 'get_runtime_template_iam_policy',
21
+ 'get_runtime_template_iam_policy_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetRuntimeTemplateIamPolicyResult:
26
+ """
27
+ A collection of values returned by getRuntimeTemplateIamPolicy.
28
+ """
29
+ def __init__(__self__, etag=None, id=None, location=None, policy_data=None, project=None, runtime_template=None):
30
+ if etag and not isinstance(etag, str):
31
+ raise TypeError("Expected argument 'etag' to be a str")
32
+ pulumi.set(__self__, "etag", etag)
33
+ if id and not isinstance(id, str):
34
+ raise TypeError("Expected argument 'id' to be a str")
35
+ pulumi.set(__self__, "id", id)
36
+ if location and not isinstance(location, str):
37
+ raise TypeError("Expected argument 'location' to be a str")
38
+ pulumi.set(__self__, "location", location)
39
+ if policy_data and not isinstance(policy_data, str):
40
+ raise TypeError("Expected argument 'policy_data' to be a str")
41
+ pulumi.set(__self__, "policy_data", policy_data)
42
+ if project and not isinstance(project, str):
43
+ raise TypeError("Expected argument 'project' to be a str")
44
+ pulumi.set(__self__, "project", project)
45
+ if runtime_template and not isinstance(runtime_template, str):
46
+ raise TypeError("Expected argument 'runtime_template' to be a str")
47
+ pulumi.set(__self__, "runtime_template", runtime_template)
48
+
49
+ @property
50
+ @pulumi.getter
51
+ def etag(self) -> str:
52
+ """
53
+ (Computed) The etag of the IAM policy.
54
+ """
55
+ return pulumi.get(self, "etag")
56
+
57
+ @property
58
+ @pulumi.getter
59
+ def id(self) -> str:
60
+ """
61
+ The provider-assigned unique ID for this managed resource.
62
+ """
63
+ return pulumi.get(self, "id")
64
+
65
+ @property
66
+ @pulumi.getter
67
+ def location(self) -> str:
68
+ return pulumi.get(self, "location")
69
+
70
+ @property
71
+ @pulumi.getter(name="policyData")
72
+ def policy_data(self) -> str:
73
+ """
74
+ (Required only by `colab.RuntimeTemplateIamPolicy`) The policy data generated by
75
+ a `organizations_get_iam_policy` data source.
76
+ """
77
+ return pulumi.get(self, "policy_data")
78
+
79
+ @property
80
+ @pulumi.getter
81
+ def project(self) -> str:
82
+ return pulumi.get(self, "project")
83
+
84
+ @property
85
+ @pulumi.getter(name="runtimeTemplate")
86
+ def runtime_template(self) -> str:
87
+ return pulumi.get(self, "runtime_template")
88
+
89
+
90
+ class AwaitableGetRuntimeTemplateIamPolicyResult(GetRuntimeTemplateIamPolicyResult):
91
+ # pylint: disable=using-constant-test
92
+ def __await__(self):
93
+ if False:
94
+ yield self
95
+ return GetRuntimeTemplateIamPolicyResult(
96
+ etag=self.etag,
97
+ id=self.id,
98
+ location=self.location,
99
+ policy_data=self.policy_data,
100
+ project=self.project,
101
+ runtime_template=self.runtime_template)
102
+
103
+
104
+ def get_runtime_template_iam_policy(location: Optional[str] = None,
105
+ project: Optional[str] = None,
106
+ runtime_template: Optional[str] = None,
107
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRuntimeTemplateIamPolicyResult:
108
+ """
109
+ Retrieves the current IAM policy data for runtimetemplate
110
+
111
+ ## example
112
+
113
+ ```python
114
+ import pulumi
115
+ import pulumi_gcp as gcp
116
+
117
+ policy = gcp.colab.get_runtime_template_iam_policy(project=runtime_template["project"],
118
+ location=runtime_template["location"],
119
+ runtime_template=runtime_template["name"])
120
+ ```
121
+
122
+
123
+ :param str location: The location for the resource: https://cloud.google.com/colab/docs/locations Used to find the parent resource to bind the IAM policy to. If not specified,
124
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
125
+ location is specified, it is taken from the provider configuration.
126
+ :param str project: The ID of the project in which the resource belongs.
127
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
128
+ :param str runtime_template: Used to find the parent resource to bind the IAM policy to
129
+ """
130
+ __args__ = dict()
131
+ __args__['location'] = location
132
+ __args__['project'] = project
133
+ __args__['runtimeTemplate'] = runtime_template
134
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
135
+ __ret__ = pulumi.runtime.invoke('gcp:colab/getRuntimeTemplateIamPolicy:getRuntimeTemplateIamPolicy', __args__, opts=opts, typ=GetRuntimeTemplateIamPolicyResult).value
136
+
137
+ return AwaitableGetRuntimeTemplateIamPolicyResult(
138
+ etag=pulumi.get(__ret__, 'etag'),
139
+ id=pulumi.get(__ret__, 'id'),
140
+ location=pulumi.get(__ret__, 'location'),
141
+ policy_data=pulumi.get(__ret__, 'policy_data'),
142
+ project=pulumi.get(__ret__, 'project'),
143
+ runtime_template=pulumi.get(__ret__, 'runtime_template'))
144
+ def get_runtime_template_iam_policy_output(location: Optional[pulumi.Input[Optional[str]]] = None,
145
+ project: Optional[pulumi.Input[Optional[str]]] = None,
146
+ runtime_template: Optional[pulumi.Input[str]] = None,
147
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetRuntimeTemplateIamPolicyResult]:
148
+ """
149
+ Retrieves the current IAM policy data for runtimetemplate
150
+
151
+ ## example
152
+
153
+ ```python
154
+ import pulumi
155
+ import pulumi_gcp as gcp
156
+
157
+ policy = gcp.colab.get_runtime_template_iam_policy(project=runtime_template["project"],
158
+ location=runtime_template["location"],
159
+ runtime_template=runtime_template["name"])
160
+ ```
161
+
162
+
163
+ :param str location: The location for the resource: https://cloud.google.com/colab/docs/locations Used to find the parent resource to bind the IAM policy to. If not specified,
164
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
165
+ location is specified, it is taken from the provider configuration.
166
+ :param str project: The ID of the project in which the resource belongs.
167
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
168
+ :param str runtime_template: Used to find the parent resource to bind the IAM policy to
169
+ """
170
+ __args__ = dict()
171
+ __args__['location'] = location
172
+ __args__['project'] = project
173
+ __args__['runtimeTemplate'] = runtime_template
174
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
175
+ __ret__ = pulumi.runtime.invoke_output('gcp:colab/getRuntimeTemplateIamPolicy:getRuntimeTemplateIamPolicy', __args__, opts=opts, typ=GetRuntimeTemplateIamPolicyResult)
176
+ return __ret__.apply(lambda __response__: GetRuntimeTemplateIamPolicyResult(
177
+ etag=pulumi.get(__response__, 'etag'),
178
+ id=pulumi.get(__response__, 'id'),
179
+ location=pulumi.get(__response__, 'location'),
180
+ policy_data=pulumi.get(__response__, 'policy_data'),
181
+ project=pulumi.get(__response__, 'project'),
182
+ runtime_template=pulumi.get(__response__, 'runtime_template')))
@@ -15,15 +15,53 @@ else:
15
15
  from .. import _utilities
16
16
 
17
17
  __all__ = [
18
+ 'RuntimeNotebookRuntimeTemplateRef',
18
19
  'RuntimeTemplateDataPersistentDiskSpec',
19
20
  'RuntimeTemplateEncryptionSpec',
20
21
  'RuntimeTemplateEucConfig',
22
+ 'RuntimeTemplateIamBindingCondition',
23
+ 'RuntimeTemplateIamMemberCondition',
21
24
  'RuntimeTemplateIdleShutdownConfig',
22
25
  'RuntimeTemplateMachineSpec',
23
26
  'RuntimeTemplateNetworkSpec',
24
27
  'RuntimeTemplateShieldedVmConfig',
25
28
  ]
26
29
 
30
+ @pulumi.output_type
31
+ class RuntimeNotebookRuntimeTemplateRef(dict):
32
+ @staticmethod
33
+ def __key_warning(key: str):
34
+ suggest = None
35
+ if key == "notebookRuntimeTemplate":
36
+ suggest = "notebook_runtime_template"
37
+
38
+ if suggest:
39
+ pulumi.log.warn(f"Key '{key}' not found in RuntimeNotebookRuntimeTemplateRef. Access the value via the '{suggest}' property getter instead.")
40
+
41
+ def __getitem__(self, key: str) -> Any:
42
+ RuntimeNotebookRuntimeTemplateRef.__key_warning(key)
43
+ return super().__getitem__(key)
44
+
45
+ def get(self, key: str, default = None) -> Any:
46
+ RuntimeNotebookRuntimeTemplateRef.__key_warning(key)
47
+ return super().get(key, default)
48
+
49
+ def __init__(__self__, *,
50
+ notebook_runtime_template: str):
51
+ """
52
+ :param str notebook_runtime_template: The resource name of the NotebookRuntimeTemplate based on which a NotebookRuntime will be created.
53
+ """
54
+ pulumi.set(__self__, "notebook_runtime_template", notebook_runtime_template)
55
+
56
+ @property
57
+ @pulumi.getter(name="notebookRuntimeTemplate")
58
+ def notebook_runtime_template(self) -> str:
59
+ """
60
+ The resource name of the NotebookRuntimeTemplate based on which a NotebookRuntime will be created.
61
+ """
62
+ return pulumi.get(self, "notebook_runtime_template")
63
+
64
+
27
65
  @pulumi.output_type
28
66
  class RuntimeTemplateDataPersistentDiskSpec(dict):
29
67
  @staticmethod
@@ -146,6 +184,60 @@ class RuntimeTemplateEucConfig(dict):
146
184
  return pulumi.get(self, "euc_disabled")
147
185
 
148
186
 
187
+ @pulumi.output_type
188
+ class RuntimeTemplateIamBindingCondition(dict):
189
+ def __init__(__self__, *,
190
+ expression: str,
191
+ title: str,
192
+ description: Optional[str] = None):
193
+ pulumi.set(__self__, "expression", expression)
194
+ pulumi.set(__self__, "title", title)
195
+ if description is not None:
196
+ pulumi.set(__self__, "description", description)
197
+
198
+ @property
199
+ @pulumi.getter
200
+ def expression(self) -> str:
201
+ return pulumi.get(self, "expression")
202
+
203
+ @property
204
+ @pulumi.getter
205
+ def title(self) -> str:
206
+ return pulumi.get(self, "title")
207
+
208
+ @property
209
+ @pulumi.getter
210
+ def description(self) -> Optional[str]:
211
+ return pulumi.get(self, "description")
212
+
213
+
214
+ @pulumi.output_type
215
+ class RuntimeTemplateIamMemberCondition(dict):
216
+ def __init__(__self__, *,
217
+ expression: str,
218
+ title: str,
219
+ description: Optional[str] = None):
220
+ pulumi.set(__self__, "expression", expression)
221
+ pulumi.set(__self__, "title", title)
222
+ if description is not None:
223
+ pulumi.set(__self__, "description", description)
224
+
225
+ @property
226
+ @pulumi.getter
227
+ def expression(self) -> str:
228
+ return pulumi.get(self, "expression")
229
+
230
+ @property
231
+ @pulumi.getter
232
+ def title(self) -> str:
233
+ return pulumi.get(self, "title")
234
+
235
+ @property
236
+ @pulumi.getter
237
+ def description(self) -> Optional[str]:
238
+ return pulumi.get(self, "description")
239
+
240
+
149
241
  @pulumi.output_type
150
242
  class RuntimeTemplateIdleShutdownConfig(dict):
151
243
  @staticmethod