pulumi-gcp 8.28.0a1745598508__py3-none-any.whl → 8.29.0a1746076904__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 (78) hide show
  1. pulumi_gcp/__init__.py +88 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +399 -0
  3. pulumi_gcp/accesscontextmanager/gcp_user_access_binding.py +54 -0
  4. pulumi_gcp/accesscontextmanager/outputs.py +369 -0
  5. pulumi_gcp/alloydb/_inputs.py +47 -1
  6. pulumi_gcp/alloydb/outputs.py +61 -3
  7. pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +8 -2
  8. pulumi_gcp/applicationintegration/client.py +34 -12
  9. pulumi_gcp/artifactregistry/outputs.py +2 -2
  10. pulumi_gcp/certificateauthority/_inputs.py +32 -0
  11. pulumi_gcp/certificateauthority/ca_pool.py +2 -0
  12. pulumi_gcp/certificateauthority/outputs.py +22 -0
  13. pulumi_gcp/clouddeploy/_inputs.py +0 -6
  14. pulumi_gcp/clouddeploy/delivery_pipeline.py +84 -77
  15. pulumi_gcp/clouddeploy/outputs.py +0 -4
  16. pulumi_gcp/cloudrunv2/_inputs.py +3 -3
  17. pulumi_gcp/cloudrunv2/outputs.py +4 -4
  18. pulumi_gcp/colab/runtime_template.py +3 -3
  19. pulumi_gcp/compute/__init__.py +7 -0
  20. pulumi_gcp/compute/_inputs.py +809 -1
  21. pulumi_gcp/compute/backend_service.py +89 -0
  22. pulumi_gcp/compute/firewall_policy_with_rules.py +2 -2
  23. pulumi_gcp/compute/get_backend_service.py +12 -1
  24. pulumi_gcp/compute/get_storage_pool_iam_policy.py +183 -0
  25. pulumi_gcp/compute/get_storage_pool_types.py +268 -0
  26. pulumi_gcp/compute/outputs.py +743 -3
  27. pulumi_gcp/compute/resource_policy_attachment.py +476 -0
  28. pulumi_gcp/compute/storage_pool.py +1045 -0
  29. pulumi_gcp/compute/storage_pool_iam_binding.py +1088 -0
  30. pulumi_gcp/compute/storage_pool_iam_member.py +1088 -0
  31. pulumi_gcp/compute/storage_pool_iam_policy.py +907 -0
  32. pulumi_gcp/config/__init__.pyi +2 -0
  33. pulumi_gcp/config/vars.py +4 -0
  34. pulumi_gcp/container/_inputs.py +63 -3
  35. pulumi_gcp/container/outputs.py +70 -6
  36. pulumi_gcp/dataproc/get_metastore_service.py +12 -1
  37. pulumi_gcp/dataproc/metastore_service.py +61 -0
  38. pulumi_gcp/datastream/connection_profile.py +40 -0
  39. pulumi_gcp/discoveryengine/_inputs.py +38 -0
  40. pulumi_gcp/discoveryengine/chat_engine.py +6 -4
  41. pulumi_gcp/discoveryengine/outputs.py +26 -0
  42. pulumi_gcp/firebaserules/_inputs.py +6 -6
  43. pulumi_gcp/firebaserules/outputs.py +4 -4
  44. pulumi_gcp/gkebackup/__init__.py +2 -0
  45. pulumi_gcp/gkebackup/backup_channel.py +737 -0
  46. pulumi_gcp/gkebackup/restore_channel.py +737 -0
  47. pulumi_gcp/gkehub/_inputs.py +208 -0
  48. pulumi_gcp/gkehub/outputs.py +171 -1
  49. pulumi_gcp/healthcare/pipeline_job.py +2 -2
  50. pulumi_gcp/iap/__init__.py +4 -0
  51. pulumi_gcp/iap/_inputs.py +130 -0
  52. pulumi_gcp/iap/get_web_cloud_run_service_iam_policy.py +183 -0
  53. pulumi_gcp/iap/outputs.py +76 -0
  54. pulumi_gcp/iap/web_cloud_run_service_iam_binding.py +1089 -0
  55. pulumi_gcp/iap/web_cloud_run_service_iam_member.py +1089 -0
  56. pulumi_gcp/iap/web_cloud_run_service_iam_policy.py +908 -0
  57. pulumi_gcp/kms/key_ring_import_job.py +7 -7
  58. pulumi_gcp/managedkafka/connect_cluster.py +8 -4
  59. pulumi_gcp/managedkafka/connector.py +8 -4
  60. pulumi_gcp/monitoring/uptime_check_config.py +49 -0
  61. pulumi_gcp/networkconnectivity/internal_range.py +82 -0
  62. pulumi_gcp/projects/_inputs.py +0 -6
  63. pulumi_gcp/projects/api_key.py +28 -0
  64. pulumi_gcp/projects/outputs.py +0 -4
  65. pulumi_gcp/provider.py +20 -0
  66. pulumi_gcp/pulumi-plugin.json +1 -1
  67. pulumi_gcp/redis/get_instance.py +12 -1
  68. pulumi_gcp/redis/instance.py +61 -0
  69. pulumi_gcp/sql/_inputs.py +86 -6
  70. pulumi_gcp/sql/outputs.py +156 -12
  71. pulumi_gcp/storage/__init__.py +1 -0
  72. pulumi_gcp/storage/_inputs.py +457 -0
  73. pulumi_gcp/storage/batch_operations_job.py +776 -0
  74. pulumi_gcp/storage/outputs.py +403 -0
  75. {pulumi_gcp-8.28.0a1745598508.dist-info → pulumi_gcp-8.29.0a1746076904.dist-info}/METADATA +1 -1
  76. {pulumi_gcp-8.28.0a1745598508.dist-info → pulumi_gcp-8.29.0a1746076904.dist-info}/RECORD +78 -64
  77. {pulumi_gcp-8.28.0a1745598508.dist-info → pulumi_gcp-8.29.0a1746076904.dist-info}/WHEEL +1 -1
  78. {pulumi_gcp-8.28.0a1745598508.dist-info → pulumi_gcp-8.29.0a1746076904.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,476 @@
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 builtins
6
+ import copy
7
+ import warnings
8
+ import sys
9
+ import pulumi
10
+ import pulumi.runtime
11
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
12
+ if sys.version_info >= (3, 11):
13
+ from typing import NotRequired, TypedDict, TypeAlias
14
+ else:
15
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
16
+ from .. import _utilities
17
+
18
+ __all__ = ['ResourcePolicyAttachmentArgs', 'ResourcePolicyAttachment']
19
+
20
+ @pulumi.input_type
21
+ class ResourcePolicyAttachmentArgs:
22
+ def __init__(__self__, *,
23
+ instance: pulumi.Input[builtins.str],
24
+ name: Optional[pulumi.Input[builtins.str]] = None,
25
+ project: Optional[pulumi.Input[builtins.str]] = None,
26
+ zone: Optional[pulumi.Input[builtins.str]] = None):
27
+ """
28
+ The set of arguments for constructing a ResourcePolicyAttachment resource.
29
+ :param pulumi.Input[builtins.str] instance: The name of the instance in which the resource policies are attached to.
30
+
31
+
32
+ - - -
33
+ :param pulumi.Input[builtins.str] name: The resource policy to be attached to the instance for scheduling start/stop
34
+ operations. Do not specify the self link.
35
+ :param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
36
+ If it is not provided, the provider project is used.
37
+ :param pulumi.Input[builtins.str] zone: A reference to the zone where the instance resides.
38
+ """
39
+ pulumi.set(__self__, "instance", instance)
40
+ if name is not None:
41
+ pulumi.set(__self__, "name", name)
42
+ if project is not None:
43
+ pulumi.set(__self__, "project", project)
44
+ if zone is not None:
45
+ pulumi.set(__self__, "zone", zone)
46
+
47
+ @property
48
+ @pulumi.getter
49
+ def instance(self) -> pulumi.Input[builtins.str]:
50
+ """
51
+ The name of the instance in which the resource policies are attached to.
52
+
53
+
54
+ - - -
55
+ """
56
+ return pulumi.get(self, "instance")
57
+
58
+ @instance.setter
59
+ def instance(self, value: pulumi.Input[builtins.str]):
60
+ pulumi.set(self, "instance", value)
61
+
62
+ @property
63
+ @pulumi.getter
64
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
65
+ """
66
+ The resource policy to be attached to the instance for scheduling start/stop
67
+ operations. Do not specify the self link.
68
+ """
69
+ return pulumi.get(self, "name")
70
+
71
+ @name.setter
72
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
73
+ pulumi.set(self, "name", value)
74
+
75
+ @property
76
+ @pulumi.getter
77
+ def project(self) -> Optional[pulumi.Input[builtins.str]]:
78
+ """
79
+ The ID of the project in which the resource belongs.
80
+ If it is not provided, the provider project is used.
81
+ """
82
+ return pulumi.get(self, "project")
83
+
84
+ @project.setter
85
+ def project(self, value: Optional[pulumi.Input[builtins.str]]):
86
+ pulumi.set(self, "project", value)
87
+
88
+ @property
89
+ @pulumi.getter
90
+ def zone(self) -> Optional[pulumi.Input[builtins.str]]:
91
+ """
92
+ A reference to the zone where the instance resides.
93
+ """
94
+ return pulumi.get(self, "zone")
95
+
96
+ @zone.setter
97
+ def zone(self, value: Optional[pulumi.Input[builtins.str]]):
98
+ pulumi.set(self, "zone", value)
99
+
100
+
101
+ @pulumi.input_type
102
+ class _ResourcePolicyAttachmentState:
103
+ def __init__(__self__, *,
104
+ instance: Optional[pulumi.Input[builtins.str]] = None,
105
+ name: Optional[pulumi.Input[builtins.str]] = None,
106
+ project: Optional[pulumi.Input[builtins.str]] = None,
107
+ zone: Optional[pulumi.Input[builtins.str]] = None):
108
+ """
109
+ Input properties used for looking up and filtering ResourcePolicyAttachment resources.
110
+ :param pulumi.Input[builtins.str] instance: The name of the instance in which the resource policies are attached to.
111
+
112
+
113
+ - - -
114
+ :param pulumi.Input[builtins.str] name: The resource policy to be attached to the instance for scheduling start/stop
115
+ operations. Do not specify the self link.
116
+ :param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
117
+ If it is not provided, the provider project is used.
118
+ :param pulumi.Input[builtins.str] zone: A reference to the zone where the instance resides.
119
+ """
120
+ if instance is not None:
121
+ pulumi.set(__self__, "instance", instance)
122
+ if name is not None:
123
+ pulumi.set(__self__, "name", name)
124
+ if project is not None:
125
+ pulumi.set(__self__, "project", project)
126
+ if zone is not None:
127
+ pulumi.set(__self__, "zone", zone)
128
+
129
+ @property
130
+ @pulumi.getter
131
+ def instance(self) -> Optional[pulumi.Input[builtins.str]]:
132
+ """
133
+ The name of the instance in which the resource policies are attached to.
134
+
135
+
136
+ - - -
137
+ """
138
+ return pulumi.get(self, "instance")
139
+
140
+ @instance.setter
141
+ def instance(self, value: Optional[pulumi.Input[builtins.str]]):
142
+ pulumi.set(self, "instance", value)
143
+
144
+ @property
145
+ @pulumi.getter
146
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
147
+ """
148
+ The resource policy to be attached to the instance for scheduling start/stop
149
+ operations. Do not specify the self link.
150
+ """
151
+ return pulumi.get(self, "name")
152
+
153
+ @name.setter
154
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
155
+ pulumi.set(self, "name", value)
156
+
157
+ @property
158
+ @pulumi.getter
159
+ def project(self) -> Optional[pulumi.Input[builtins.str]]:
160
+ """
161
+ The ID of the project in which the resource belongs.
162
+ If it is not provided, the provider project is used.
163
+ """
164
+ return pulumi.get(self, "project")
165
+
166
+ @project.setter
167
+ def project(self, value: Optional[pulumi.Input[builtins.str]]):
168
+ pulumi.set(self, "project", value)
169
+
170
+ @property
171
+ @pulumi.getter
172
+ def zone(self) -> Optional[pulumi.Input[builtins.str]]:
173
+ """
174
+ A reference to the zone where the instance resides.
175
+ """
176
+ return pulumi.get(self, "zone")
177
+
178
+ @zone.setter
179
+ def zone(self, value: Optional[pulumi.Input[builtins.str]]):
180
+ pulumi.set(self, "zone", value)
181
+
182
+
183
+ class ResourcePolicyAttachment(pulumi.CustomResource):
184
+ @overload
185
+ def __init__(__self__,
186
+ resource_name: str,
187
+ opts: Optional[pulumi.ResourceOptions] = None,
188
+ instance: Optional[pulumi.Input[builtins.str]] = None,
189
+ name: Optional[pulumi.Input[builtins.str]] = None,
190
+ project: Optional[pulumi.Input[builtins.str]] = None,
191
+ zone: Optional[pulumi.Input[builtins.str]] = None,
192
+ __props__=None):
193
+ """
194
+ Adds existing resource policies to a compute instance. You can only add one policy
195
+ which will be applied to this instance for scheduling start/stop operations.
196
+
197
+ This resource can be used instead of setting the resource_policy directly in the
198
+ compute instance resource to avoid dependency issues when using instance-level IAM
199
+ permissions.
200
+
201
+ ## Example Usage
202
+
203
+ ### Compute Resource Policy Attachment Basic
204
+
205
+ ```python
206
+ import pulumi
207
+ import pulumi_gcp as gcp
208
+
209
+ instance = gcp.compute.Instance("instance",
210
+ network_interfaces=[{
211
+ "access_configs": [{}],
212
+ "network": "default",
213
+ }],
214
+ name="my-instance",
215
+ machine_type="e2-medium",
216
+ zone="us-central1-a",
217
+ boot_disk={
218
+ "initialize_params": {
219
+ "image": "debian-cloud/debian-11",
220
+ },
221
+ })
222
+ policy = gcp.compute.ResourcePolicy("policy",
223
+ name="my-resource-policy",
224
+ region="us-central1",
225
+ instance_schedule_policy={
226
+ "vm_start_schedule": {
227
+ "schedule": "0 8 * * *",
228
+ },
229
+ "vm_stop_schedule": {
230
+ "schedule": "0 18 * * *",
231
+ },
232
+ "time_zone": "America/New_York",
233
+ })
234
+ attachment = gcp.compute.ResourcePolicyAttachment("attachment",
235
+ name=policy.name,
236
+ instance=instance.name,
237
+ zone="us-central1-a")
238
+ ```
239
+
240
+ ## Import
241
+
242
+ ResourcePolicyAttachment can be imported using any of these accepted formats:
243
+
244
+ * `projects/{{project}}/zones/{{zone}}/instances/{{instance}}/{{name}}`
245
+
246
+ * `{{project}}/{{zone}}/{{instance}}/{{name}}`
247
+
248
+ * `{{zone}}/{{instance}}/{{name}}`
249
+
250
+ * `{{instance}}/{{name}}`
251
+
252
+ When using the `pulumi import` command, ResourcePolicyAttachment can be imported using one of the formats above. For example:
253
+
254
+ ```sh
255
+ $ pulumi import gcp:compute/resourcePolicyAttachment:ResourcePolicyAttachment default projects/{{project}}/zones/{{zone}}/instances/{{instance}}/{{name}}
256
+ ```
257
+
258
+ ```sh
259
+ $ pulumi import gcp:compute/resourcePolicyAttachment:ResourcePolicyAttachment default {{project}}/{{zone}}/{{instance}}/{{name}}
260
+ ```
261
+
262
+ ```sh
263
+ $ pulumi import gcp:compute/resourcePolicyAttachment:ResourcePolicyAttachment default {{zone}}/{{instance}}/{{name}}
264
+ ```
265
+
266
+ ```sh
267
+ $ pulumi import gcp:compute/resourcePolicyAttachment:ResourcePolicyAttachment default {{instance}}/{{name}}
268
+ ```
269
+
270
+ :param str resource_name: The name of the resource.
271
+ :param pulumi.ResourceOptions opts: Options for the resource.
272
+ :param pulumi.Input[builtins.str] instance: The name of the instance in which the resource policies are attached to.
273
+
274
+
275
+ - - -
276
+ :param pulumi.Input[builtins.str] name: The resource policy to be attached to the instance for scheduling start/stop
277
+ operations. Do not specify the self link.
278
+ :param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
279
+ If it is not provided, the provider project is used.
280
+ :param pulumi.Input[builtins.str] zone: A reference to the zone where the instance resides.
281
+ """
282
+ ...
283
+ @overload
284
+ def __init__(__self__,
285
+ resource_name: str,
286
+ args: ResourcePolicyAttachmentArgs,
287
+ opts: Optional[pulumi.ResourceOptions] = None):
288
+ """
289
+ Adds existing resource policies to a compute instance. You can only add one policy
290
+ which will be applied to this instance for scheduling start/stop operations.
291
+
292
+ This resource can be used instead of setting the resource_policy directly in the
293
+ compute instance resource to avoid dependency issues when using instance-level IAM
294
+ permissions.
295
+
296
+ ## Example Usage
297
+
298
+ ### Compute Resource Policy Attachment Basic
299
+
300
+ ```python
301
+ import pulumi
302
+ import pulumi_gcp as gcp
303
+
304
+ instance = gcp.compute.Instance("instance",
305
+ network_interfaces=[{
306
+ "access_configs": [{}],
307
+ "network": "default",
308
+ }],
309
+ name="my-instance",
310
+ machine_type="e2-medium",
311
+ zone="us-central1-a",
312
+ boot_disk={
313
+ "initialize_params": {
314
+ "image": "debian-cloud/debian-11",
315
+ },
316
+ })
317
+ policy = gcp.compute.ResourcePolicy("policy",
318
+ name="my-resource-policy",
319
+ region="us-central1",
320
+ instance_schedule_policy={
321
+ "vm_start_schedule": {
322
+ "schedule": "0 8 * * *",
323
+ },
324
+ "vm_stop_schedule": {
325
+ "schedule": "0 18 * * *",
326
+ },
327
+ "time_zone": "America/New_York",
328
+ })
329
+ attachment = gcp.compute.ResourcePolicyAttachment("attachment",
330
+ name=policy.name,
331
+ instance=instance.name,
332
+ zone="us-central1-a")
333
+ ```
334
+
335
+ ## Import
336
+
337
+ ResourcePolicyAttachment can be imported using any of these accepted formats:
338
+
339
+ * `projects/{{project}}/zones/{{zone}}/instances/{{instance}}/{{name}}`
340
+
341
+ * `{{project}}/{{zone}}/{{instance}}/{{name}}`
342
+
343
+ * `{{zone}}/{{instance}}/{{name}}`
344
+
345
+ * `{{instance}}/{{name}}`
346
+
347
+ When using the `pulumi import` command, ResourcePolicyAttachment can be imported using one of the formats above. For example:
348
+
349
+ ```sh
350
+ $ pulumi import gcp:compute/resourcePolicyAttachment:ResourcePolicyAttachment default projects/{{project}}/zones/{{zone}}/instances/{{instance}}/{{name}}
351
+ ```
352
+
353
+ ```sh
354
+ $ pulumi import gcp:compute/resourcePolicyAttachment:ResourcePolicyAttachment default {{project}}/{{zone}}/{{instance}}/{{name}}
355
+ ```
356
+
357
+ ```sh
358
+ $ pulumi import gcp:compute/resourcePolicyAttachment:ResourcePolicyAttachment default {{zone}}/{{instance}}/{{name}}
359
+ ```
360
+
361
+ ```sh
362
+ $ pulumi import gcp:compute/resourcePolicyAttachment:ResourcePolicyAttachment default {{instance}}/{{name}}
363
+ ```
364
+
365
+ :param str resource_name: The name of the resource.
366
+ :param ResourcePolicyAttachmentArgs args: The arguments to use to populate this resource's properties.
367
+ :param pulumi.ResourceOptions opts: Options for the resource.
368
+ """
369
+ ...
370
+ def __init__(__self__, resource_name: str, *args, **kwargs):
371
+ resource_args, opts = _utilities.get_resource_args_opts(ResourcePolicyAttachmentArgs, pulumi.ResourceOptions, *args, **kwargs)
372
+ if resource_args is not None:
373
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
374
+ else:
375
+ __self__._internal_init(resource_name, *args, **kwargs)
376
+
377
+ def _internal_init(__self__,
378
+ resource_name: str,
379
+ opts: Optional[pulumi.ResourceOptions] = None,
380
+ instance: Optional[pulumi.Input[builtins.str]] = None,
381
+ name: Optional[pulumi.Input[builtins.str]] = None,
382
+ project: Optional[pulumi.Input[builtins.str]] = None,
383
+ zone: Optional[pulumi.Input[builtins.str]] = None,
384
+ __props__=None):
385
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
386
+ if not isinstance(opts, pulumi.ResourceOptions):
387
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
388
+ if opts.id is None:
389
+ if __props__ is not None:
390
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
391
+ __props__ = ResourcePolicyAttachmentArgs.__new__(ResourcePolicyAttachmentArgs)
392
+
393
+ if instance is None and not opts.urn:
394
+ raise TypeError("Missing required property 'instance'")
395
+ __props__.__dict__["instance"] = instance
396
+ __props__.__dict__["name"] = name
397
+ __props__.__dict__["project"] = project
398
+ __props__.__dict__["zone"] = zone
399
+ super(ResourcePolicyAttachment, __self__).__init__(
400
+ 'gcp:compute/resourcePolicyAttachment:ResourcePolicyAttachment',
401
+ resource_name,
402
+ __props__,
403
+ opts)
404
+
405
+ @staticmethod
406
+ def get(resource_name: str,
407
+ id: pulumi.Input[str],
408
+ opts: Optional[pulumi.ResourceOptions] = None,
409
+ instance: Optional[pulumi.Input[builtins.str]] = None,
410
+ name: Optional[pulumi.Input[builtins.str]] = None,
411
+ project: Optional[pulumi.Input[builtins.str]] = None,
412
+ zone: Optional[pulumi.Input[builtins.str]] = None) -> 'ResourcePolicyAttachment':
413
+ """
414
+ Get an existing ResourcePolicyAttachment resource's state with the given name, id, and optional extra
415
+ properties used to qualify the lookup.
416
+
417
+ :param str resource_name: The unique name of the resulting resource.
418
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
419
+ :param pulumi.ResourceOptions opts: Options for the resource.
420
+ :param pulumi.Input[builtins.str] instance: The name of the instance in which the resource policies are attached to.
421
+
422
+
423
+ - - -
424
+ :param pulumi.Input[builtins.str] name: The resource policy to be attached to the instance for scheduling start/stop
425
+ operations. Do not specify the self link.
426
+ :param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
427
+ If it is not provided, the provider project is used.
428
+ :param pulumi.Input[builtins.str] zone: A reference to the zone where the instance resides.
429
+ """
430
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
431
+
432
+ __props__ = _ResourcePolicyAttachmentState.__new__(_ResourcePolicyAttachmentState)
433
+
434
+ __props__.__dict__["instance"] = instance
435
+ __props__.__dict__["name"] = name
436
+ __props__.__dict__["project"] = project
437
+ __props__.__dict__["zone"] = zone
438
+ return ResourcePolicyAttachment(resource_name, opts=opts, __props__=__props__)
439
+
440
+ @property
441
+ @pulumi.getter
442
+ def instance(self) -> pulumi.Output[builtins.str]:
443
+ """
444
+ The name of the instance in which the resource policies are attached to.
445
+
446
+
447
+ - - -
448
+ """
449
+ return pulumi.get(self, "instance")
450
+
451
+ @property
452
+ @pulumi.getter
453
+ def name(self) -> pulumi.Output[builtins.str]:
454
+ """
455
+ The resource policy to be attached to the instance for scheduling start/stop
456
+ operations. Do not specify the self link.
457
+ """
458
+ return pulumi.get(self, "name")
459
+
460
+ @property
461
+ @pulumi.getter
462
+ def project(self) -> pulumi.Output[builtins.str]:
463
+ """
464
+ The ID of the project in which the resource belongs.
465
+ If it is not provided, the provider project is used.
466
+ """
467
+ return pulumi.get(self, "project")
468
+
469
+ @property
470
+ @pulumi.getter
471
+ def zone(self) -> pulumi.Output[builtins.str]:
472
+ """
473
+ A reference to the zone where the instance resides.
474
+ """
475
+ return pulumi.get(self, "zone")
476
+