pulumi-gcp 7.28.0__py3-none-any.whl → 7.28.0a1718754929__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 (58) hide show
  1. pulumi_gcp/__init__.py +0 -59
  2. pulumi_gcp/accesscontextmanager/_inputs.py +74 -58
  3. pulumi_gcp/accesscontextmanager/access_levels.py +20 -0
  4. pulumi_gcp/accesscontextmanager/outputs.py +74 -58
  5. pulumi_gcp/accesscontextmanager/service_perimeter.py +0 -2
  6. pulumi_gcp/bigtable/_inputs.py +0 -40
  7. pulumi_gcp/bigtable/outputs.py +0 -49
  8. pulumi_gcp/bigtable/table.py +0 -54
  9. pulumi_gcp/cloudbuildv2/_inputs.py +0 -383
  10. pulumi_gcp/cloudbuildv2/connection.py +2 -110
  11. pulumi_gcp/cloudbuildv2/outputs.py +0 -421
  12. pulumi_gcp/composer/__init__.py +0 -3
  13. pulumi_gcp/compute/_inputs.py +2 -4
  14. pulumi_gcp/compute/backend_service.py +48 -28
  15. pulumi_gcp/compute/interconnect.py +4 -4
  16. pulumi_gcp/compute/outputs.py +4 -10
  17. pulumi_gcp/compute/region_backend_service.py +48 -35
  18. pulumi_gcp/compute/region_network_endpoint.py +0 -187
  19. pulumi_gcp/compute/region_network_endpoint_group.py +9 -49
  20. pulumi_gcp/compute/region_target_https_proxy.py +14 -7
  21. pulumi_gcp/compute/target_https_proxy.py +14 -28
  22. pulumi_gcp/config/__init__.pyi +0 -2
  23. pulumi_gcp/config/vars.py +0 -4
  24. pulumi_gcp/container/_inputs.py +2 -2
  25. pulumi_gcp/container/outputs.py +4 -4
  26. pulumi_gcp/discoveryengine/_inputs.py +0 -227
  27. pulumi_gcp/discoveryengine/data_store.py +0 -108
  28. pulumi_gcp/discoveryengine/outputs.py +0 -280
  29. pulumi_gcp/edgecontainer/_inputs.py +1 -107
  30. pulumi_gcp/edgecontainer/outputs.py +1 -123
  31. pulumi_gcp/gkehub/_inputs.py +0 -16
  32. pulumi_gcp/gkehub/outputs.py +1 -15
  33. pulumi_gcp/logging/folder_sink.py +14 -14
  34. pulumi_gcp/logging/organization_sink.py +14 -14
  35. pulumi_gcp/netapp/__init__.py +0 -1
  36. pulumi_gcp/netapp/active_directory.py +0 -55
  37. pulumi_gcp/provider.py +0 -20
  38. pulumi_gcp/pulumi-plugin.json +1 -1
  39. pulumi_gcp/securitycenter/__init__.py +0 -3
  40. pulumi_gcp/securitycenter/_inputs.py +0 -1105
  41. pulumi_gcp/securitycenter/outputs.py +0 -1048
  42. pulumi_gcp/vertex/ai_feature_online_store.py +8 -37
  43. {pulumi_gcp-7.28.0.dist-info → pulumi_gcp-7.28.0a1718754929.dist-info}/METADATA +1 -1
  44. {pulumi_gcp-7.28.0.dist-info → pulumi_gcp-7.28.0a1718754929.dist-info}/RECORD +46 -58
  45. {pulumi_gcp-7.28.0.dist-info → pulumi_gcp-7.28.0a1718754929.dist-info}/WHEEL +1 -1
  46. pulumi_gcp/composer/get_user_workloads_config_map.py +0 -190
  47. pulumi_gcp/composer/get_user_workloads_secret.py +0 -188
  48. pulumi_gcp/composer/user_workloads_config_map.py +0 -475
  49. pulumi_gcp/managedkafka/__init__.py +0 -11
  50. pulumi_gcp/managedkafka/_inputs.py +0 -169
  51. pulumi_gcp/managedkafka/cluster.py +0 -807
  52. pulumi_gcp/managedkafka/outputs.py +0 -197
  53. pulumi_gcp/managedkafka/topic.py +0 -599
  54. pulumi_gcp/netapp/backup.py +0 -903
  55. pulumi_gcp/securitycenter/management_folder_security_health_analytics_custom_module.py +0 -725
  56. pulumi_gcp/securitycenter/management_organization_security_health_analytics_custom_module.py +0 -713
  57. pulumi_gcp/securitycenter/management_project_security_health_analytics_custom_module.py +0 -706
  58. {pulumi_gcp-7.28.0.dist-info → pulumi_gcp-7.28.0a1718754929.dist-info}/top_level.txt +0 -0
@@ -1,903 +0,0 @@
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 pulumi
8
- import pulumi.runtime
9
- from typing import Any, Mapping, Optional, Sequence, Union, overload
10
- from .. import _utilities
11
-
12
- __all__ = ['BackupArgs', 'Backup']
13
-
14
- @pulumi.input_type
15
- class BackupArgs:
16
- def __init__(__self__, *,
17
- location: pulumi.Input[str],
18
- vault_name: pulumi.Input[str],
19
- description: Optional[pulumi.Input[str]] = None,
20
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
21
- name: Optional[pulumi.Input[str]] = None,
22
- project: Optional[pulumi.Input[str]] = None,
23
- source_snapshot: Optional[pulumi.Input[str]] = None,
24
- source_volume: Optional[pulumi.Input[str]] = None):
25
- """
26
- The set of arguments for constructing a Backup resource.
27
- :param pulumi.Input[str] location: Location of the backup.
28
- :param pulumi.Input[str] vault_name: Name of the backup vault to store the backup in.
29
- :param pulumi.Input[str] description: A description of the backup with 2048 characters or less. Requests with longer descriptions will be rejected.
30
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
31
-
32
- **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
33
- Please refer to the field `effective_labels` for all of the labels present on the resource.
34
- :param pulumi.Input[str] name: The resource name of the backup. Needs to be unique per location.
35
-
36
-
37
- - - -
38
- :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
39
- If it is not provided, the provider project is used.
40
- :param pulumi.Input[str] source_snapshot: If specified, backup will be created from the given snapshot. If not specified,
41
- there will be a new snapshot taken to initiate the backup creation.
42
- Format: `projects/{{projectId}}/locations/{{location}}/volumes/{{volumename}}/snapshots/{{snapshotname}}``
43
- :param pulumi.Input[str] source_volume: ID of volumes this backup belongs to. Format: `projects/{{projects_id}}/locations/{{location}}/volumes/{{name}}``
44
- """
45
- pulumi.set(__self__, "location", location)
46
- pulumi.set(__self__, "vault_name", vault_name)
47
- if description is not None:
48
- pulumi.set(__self__, "description", description)
49
- if labels is not None:
50
- pulumi.set(__self__, "labels", labels)
51
- if name is not None:
52
- pulumi.set(__self__, "name", name)
53
- if project is not None:
54
- pulumi.set(__self__, "project", project)
55
- if source_snapshot is not None:
56
- pulumi.set(__self__, "source_snapshot", source_snapshot)
57
- if source_volume is not None:
58
- pulumi.set(__self__, "source_volume", source_volume)
59
-
60
- @property
61
- @pulumi.getter
62
- def location(self) -> pulumi.Input[str]:
63
- """
64
- Location of the backup.
65
- """
66
- return pulumi.get(self, "location")
67
-
68
- @location.setter
69
- def location(self, value: pulumi.Input[str]):
70
- pulumi.set(self, "location", value)
71
-
72
- @property
73
- @pulumi.getter(name="vaultName")
74
- def vault_name(self) -> pulumi.Input[str]:
75
- """
76
- Name of the backup vault to store the backup in.
77
- """
78
- return pulumi.get(self, "vault_name")
79
-
80
- @vault_name.setter
81
- def vault_name(self, value: pulumi.Input[str]):
82
- pulumi.set(self, "vault_name", value)
83
-
84
- @property
85
- @pulumi.getter
86
- def description(self) -> Optional[pulumi.Input[str]]:
87
- """
88
- A description of the backup with 2048 characters or less. Requests with longer descriptions will be rejected.
89
- """
90
- return pulumi.get(self, "description")
91
-
92
- @description.setter
93
- def description(self, value: Optional[pulumi.Input[str]]):
94
- pulumi.set(self, "description", value)
95
-
96
- @property
97
- @pulumi.getter
98
- def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
99
- """
100
- Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
101
-
102
- **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
103
- Please refer to the field `effective_labels` for all of the labels present on the resource.
104
- """
105
- return pulumi.get(self, "labels")
106
-
107
- @labels.setter
108
- def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
109
- pulumi.set(self, "labels", value)
110
-
111
- @property
112
- @pulumi.getter
113
- def name(self) -> Optional[pulumi.Input[str]]:
114
- """
115
- The resource name of the backup. Needs to be unique per location.
116
-
117
-
118
- - - -
119
- """
120
- return pulumi.get(self, "name")
121
-
122
- @name.setter
123
- def name(self, value: Optional[pulumi.Input[str]]):
124
- pulumi.set(self, "name", value)
125
-
126
- @property
127
- @pulumi.getter
128
- def project(self) -> Optional[pulumi.Input[str]]:
129
- """
130
- The ID of the project in which the resource belongs.
131
- If it is not provided, the provider project is used.
132
- """
133
- return pulumi.get(self, "project")
134
-
135
- @project.setter
136
- def project(self, value: Optional[pulumi.Input[str]]):
137
- pulumi.set(self, "project", value)
138
-
139
- @property
140
- @pulumi.getter(name="sourceSnapshot")
141
- def source_snapshot(self) -> Optional[pulumi.Input[str]]:
142
- """
143
- If specified, backup will be created from the given snapshot. If not specified,
144
- there will be a new snapshot taken to initiate the backup creation.
145
- Format: `projects/{{projectId}}/locations/{{location}}/volumes/{{volumename}}/snapshots/{{snapshotname}}``
146
- """
147
- return pulumi.get(self, "source_snapshot")
148
-
149
- @source_snapshot.setter
150
- def source_snapshot(self, value: Optional[pulumi.Input[str]]):
151
- pulumi.set(self, "source_snapshot", value)
152
-
153
- @property
154
- @pulumi.getter(name="sourceVolume")
155
- def source_volume(self) -> Optional[pulumi.Input[str]]:
156
- """
157
- ID of volumes this backup belongs to. Format: `projects/{{projects_id}}/locations/{{location}}/volumes/{{name}}``
158
- """
159
- return pulumi.get(self, "source_volume")
160
-
161
- @source_volume.setter
162
- def source_volume(self, value: Optional[pulumi.Input[str]]):
163
- pulumi.set(self, "source_volume", value)
164
-
165
-
166
- @pulumi.input_type
167
- class _BackupState:
168
- def __init__(__self__, *,
169
- backup_type: Optional[pulumi.Input[str]] = None,
170
- chain_storage_bytes: Optional[pulumi.Input[str]] = None,
171
- create_time: Optional[pulumi.Input[str]] = None,
172
- description: Optional[pulumi.Input[str]] = None,
173
- effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
174
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
175
- location: Optional[pulumi.Input[str]] = None,
176
- name: Optional[pulumi.Input[str]] = None,
177
- project: Optional[pulumi.Input[str]] = None,
178
- pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
179
- source_snapshot: Optional[pulumi.Input[str]] = None,
180
- source_volume: Optional[pulumi.Input[str]] = None,
181
- state: Optional[pulumi.Input[str]] = None,
182
- vault_name: Optional[pulumi.Input[str]] = None,
183
- volume_usage_bytes: Optional[pulumi.Input[str]] = None):
184
- """
185
- Input properties used for looking up and filtering Backup resources.
186
- :param pulumi.Input[str] backup_type: Type of backup, manually created or created by a backup policy. Possible Values : [TYPE_UNSPECIFIED, MANUAL, SCHEDULED]
187
- :param pulumi.Input[str] chain_storage_bytes: Backups of a volume build incrementally on top of each other. They form a "backup chain".
188
- Total size of all backups in a chain in bytes = baseline backup size + sum(incremental backup size)
189
- :param pulumi.Input[str] create_time: Create time of the backup. A timestamp in RFC3339 UTC "Zulu" format. Examples: "2023-06-22T09:13:01.617Z".
190
- :param pulumi.Input[str] description: A description of the backup with 2048 characters or less. Requests with longer descriptions will be rejected.
191
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
192
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
193
-
194
- **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
195
- Please refer to the field `effective_labels` for all of the labels present on the resource.
196
- :param pulumi.Input[str] location: Location of the backup.
197
- :param pulumi.Input[str] name: The resource name of the backup. Needs to be unique per location.
198
-
199
-
200
- - - -
201
- :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
202
- If it is not provided, the provider project is used.
203
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
204
- and default labels configured on the provider.
205
- :param pulumi.Input[str] source_snapshot: If specified, backup will be created from the given snapshot. If not specified,
206
- there will be a new snapshot taken to initiate the backup creation.
207
- Format: `projects/{{projectId}}/locations/{{location}}/volumes/{{volumename}}/snapshots/{{snapshotname}}``
208
- :param pulumi.Input[str] source_volume: ID of volumes this backup belongs to. Format: `projects/{{projects_id}}/locations/{{location}}/volumes/{{name}}``
209
- :param pulumi.Input[str] state: The state of the Backup Vault. Possible Values : [STATE_UNSPECIFIED, CREATING, UPLOADING, READY, DELETING, ERROR, UPDATING]
210
- :param pulumi.Input[str] vault_name: Name of the backup vault to store the backup in.
211
- :param pulumi.Input[str] volume_usage_bytes: Size of the file system when the backup was created. When creating a new volume from the backup, the volume capacity will have to be at least as big.
212
- """
213
- if backup_type is not None:
214
- pulumi.set(__self__, "backup_type", backup_type)
215
- if chain_storage_bytes is not None:
216
- pulumi.set(__self__, "chain_storage_bytes", chain_storage_bytes)
217
- if create_time is not None:
218
- pulumi.set(__self__, "create_time", create_time)
219
- if description is not None:
220
- pulumi.set(__self__, "description", description)
221
- if effective_labels is not None:
222
- pulumi.set(__self__, "effective_labels", effective_labels)
223
- if labels is not None:
224
- pulumi.set(__self__, "labels", labels)
225
- if location is not None:
226
- pulumi.set(__self__, "location", location)
227
- if name is not None:
228
- pulumi.set(__self__, "name", name)
229
- if project is not None:
230
- pulumi.set(__self__, "project", project)
231
- if pulumi_labels is not None:
232
- pulumi.set(__self__, "pulumi_labels", pulumi_labels)
233
- if source_snapshot is not None:
234
- pulumi.set(__self__, "source_snapshot", source_snapshot)
235
- if source_volume is not None:
236
- pulumi.set(__self__, "source_volume", source_volume)
237
- if state is not None:
238
- pulumi.set(__self__, "state", state)
239
- if vault_name is not None:
240
- pulumi.set(__self__, "vault_name", vault_name)
241
- if volume_usage_bytes is not None:
242
- pulumi.set(__self__, "volume_usage_bytes", volume_usage_bytes)
243
-
244
- @property
245
- @pulumi.getter(name="backupType")
246
- def backup_type(self) -> Optional[pulumi.Input[str]]:
247
- """
248
- Type of backup, manually created or created by a backup policy. Possible Values : [TYPE_UNSPECIFIED, MANUAL, SCHEDULED]
249
- """
250
- return pulumi.get(self, "backup_type")
251
-
252
- @backup_type.setter
253
- def backup_type(self, value: Optional[pulumi.Input[str]]):
254
- pulumi.set(self, "backup_type", value)
255
-
256
- @property
257
- @pulumi.getter(name="chainStorageBytes")
258
- def chain_storage_bytes(self) -> Optional[pulumi.Input[str]]:
259
- """
260
- Backups of a volume build incrementally on top of each other. They form a "backup chain".
261
- Total size of all backups in a chain in bytes = baseline backup size + sum(incremental backup size)
262
- """
263
- return pulumi.get(self, "chain_storage_bytes")
264
-
265
- @chain_storage_bytes.setter
266
- def chain_storage_bytes(self, value: Optional[pulumi.Input[str]]):
267
- pulumi.set(self, "chain_storage_bytes", value)
268
-
269
- @property
270
- @pulumi.getter(name="createTime")
271
- def create_time(self) -> Optional[pulumi.Input[str]]:
272
- """
273
- Create time of the backup. A timestamp in RFC3339 UTC "Zulu" format. Examples: "2023-06-22T09:13:01.617Z".
274
- """
275
- return pulumi.get(self, "create_time")
276
-
277
- @create_time.setter
278
- def create_time(self, value: Optional[pulumi.Input[str]]):
279
- pulumi.set(self, "create_time", value)
280
-
281
- @property
282
- @pulumi.getter
283
- def description(self) -> Optional[pulumi.Input[str]]:
284
- """
285
- A description of the backup with 2048 characters or less. Requests with longer descriptions will be rejected.
286
- """
287
- return pulumi.get(self, "description")
288
-
289
- @description.setter
290
- def description(self, value: Optional[pulumi.Input[str]]):
291
- pulumi.set(self, "description", value)
292
-
293
- @property
294
- @pulumi.getter(name="effectiveLabels")
295
- def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
296
- """
297
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
298
- """
299
- return pulumi.get(self, "effective_labels")
300
-
301
- @effective_labels.setter
302
- def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
303
- pulumi.set(self, "effective_labels", value)
304
-
305
- @property
306
- @pulumi.getter
307
- def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
308
- """
309
- Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
310
-
311
- **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
312
- Please refer to the field `effective_labels` for all of the labels present on the resource.
313
- """
314
- return pulumi.get(self, "labels")
315
-
316
- @labels.setter
317
- def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
318
- pulumi.set(self, "labels", value)
319
-
320
- @property
321
- @pulumi.getter
322
- def location(self) -> Optional[pulumi.Input[str]]:
323
- """
324
- Location of the backup.
325
- """
326
- return pulumi.get(self, "location")
327
-
328
- @location.setter
329
- def location(self, value: Optional[pulumi.Input[str]]):
330
- pulumi.set(self, "location", value)
331
-
332
- @property
333
- @pulumi.getter
334
- def name(self) -> Optional[pulumi.Input[str]]:
335
- """
336
- The resource name of the backup. Needs to be unique per location.
337
-
338
-
339
- - - -
340
- """
341
- return pulumi.get(self, "name")
342
-
343
- @name.setter
344
- def name(self, value: Optional[pulumi.Input[str]]):
345
- pulumi.set(self, "name", value)
346
-
347
- @property
348
- @pulumi.getter
349
- def project(self) -> Optional[pulumi.Input[str]]:
350
- """
351
- The ID of the project in which the resource belongs.
352
- If it is not provided, the provider project is used.
353
- """
354
- return pulumi.get(self, "project")
355
-
356
- @project.setter
357
- def project(self, value: Optional[pulumi.Input[str]]):
358
- pulumi.set(self, "project", value)
359
-
360
- @property
361
- @pulumi.getter(name="pulumiLabels")
362
- def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
363
- """
364
- The combination of labels configured directly on the resource
365
- and default labels configured on the provider.
366
- """
367
- return pulumi.get(self, "pulumi_labels")
368
-
369
- @pulumi_labels.setter
370
- def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
371
- pulumi.set(self, "pulumi_labels", value)
372
-
373
- @property
374
- @pulumi.getter(name="sourceSnapshot")
375
- def source_snapshot(self) -> Optional[pulumi.Input[str]]:
376
- """
377
- If specified, backup will be created from the given snapshot. If not specified,
378
- there will be a new snapshot taken to initiate the backup creation.
379
- Format: `projects/{{projectId}}/locations/{{location}}/volumes/{{volumename}}/snapshots/{{snapshotname}}``
380
- """
381
- return pulumi.get(self, "source_snapshot")
382
-
383
- @source_snapshot.setter
384
- def source_snapshot(self, value: Optional[pulumi.Input[str]]):
385
- pulumi.set(self, "source_snapshot", value)
386
-
387
- @property
388
- @pulumi.getter(name="sourceVolume")
389
- def source_volume(self) -> Optional[pulumi.Input[str]]:
390
- """
391
- ID of volumes this backup belongs to. Format: `projects/{{projects_id}}/locations/{{location}}/volumes/{{name}}``
392
- """
393
- return pulumi.get(self, "source_volume")
394
-
395
- @source_volume.setter
396
- def source_volume(self, value: Optional[pulumi.Input[str]]):
397
- pulumi.set(self, "source_volume", value)
398
-
399
- @property
400
- @pulumi.getter
401
- def state(self) -> Optional[pulumi.Input[str]]:
402
- """
403
- The state of the Backup Vault. Possible Values : [STATE_UNSPECIFIED, CREATING, UPLOADING, READY, DELETING, ERROR, UPDATING]
404
- """
405
- return pulumi.get(self, "state")
406
-
407
- @state.setter
408
- def state(self, value: Optional[pulumi.Input[str]]):
409
- pulumi.set(self, "state", value)
410
-
411
- @property
412
- @pulumi.getter(name="vaultName")
413
- def vault_name(self) -> Optional[pulumi.Input[str]]:
414
- """
415
- Name of the backup vault to store the backup in.
416
- """
417
- return pulumi.get(self, "vault_name")
418
-
419
- @vault_name.setter
420
- def vault_name(self, value: Optional[pulumi.Input[str]]):
421
- pulumi.set(self, "vault_name", value)
422
-
423
- @property
424
- @pulumi.getter(name="volumeUsageBytes")
425
- def volume_usage_bytes(self) -> Optional[pulumi.Input[str]]:
426
- """
427
- Size of the file system when the backup was created. When creating a new volume from the backup, the volume capacity will have to be at least as big.
428
- """
429
- return pulumi.get(self, "volume_usage_bytes")
430
-
431
- @volume_usage_bytes.setter
432
- def volume_usage_bytes(self, value: Optional[pulumi.Input[str]]):
433
- pulumi.set(self, "volume_usage_bytes", value)
434
-
435
-
436
- class Backup(pulumi.CustomResource):
437
- @overload
438
- def __init__(__self__,
439
- resource_name: str,
440
- opts: Optional[pulumi.ResourceOptions] = None,
441
- description: Optional[pulumi.Input[str]] = None,
442
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
443
- location: Optional[pulumi.Input[str]] = None,
444
- name: Optional[pulumi.Input[str]] = None,
445
- project: Optional[pulumi.Input[str]] = None,
446
- source_snapshot: Optional[pulumi.Input[str]] = None,
447
- source_volume: Optional[pulumi.Input[str]] = None,
448
- vault_name: Optional[pulumi.Input[str]] = None,
449
- __props__=None):
450
- """
451
- NetApp Volumes supports volume backups, which are copies of your volumes
452
- stored independently from the volume. Backups are stored in backup vaults,
453
- which are containers for backups. If a volume is lost or deleted, you can
454
- use backups to restore your data to a new volume.
455
-
456
- When you create the first backup of a volume, all of the volume's used
457
- data is sent to the backup vault. Subsequent backups of the same volume
458
- only include data that has changed from the previous backup. This allows
459
- for fast incremental-forever backups and reduces the required capacity
460
- inside the backup vault.
461
-
462
- You can create manual and scheduled backups. Manual backups can be taken
463
- from a volume or from an existing volume snapshot. Scheduled backups
464
- require a backup policy.
465
-
466
- To get more information about backup, see:
467
-
468
- * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.backupVaults.backups)
469
- * How-to Guides
470
- * [Documentation](https://cloud.google.com/netapp/volumes/docs/protect-data/about-volume-backups)
471
-
472
- ## Example Usage
473
-
474
- ### Netapp Backup
475
-
476
- ```python
477
- import pulumi
478
- import pulumi_gcp as gcp
479
-
480
- default = gcp.compute.get_network(name="")
481
- default_storage_pool = gcp.netapp.StoragePool("default",
482
- name="backup-pool",
483
- location="us-central1",
484
- service_level="PREMIUM",
485
- capacity_gib="2048",
486
- network=default.id)
487
- default_backup_vault = gcp.netapp.BackupVault("default",
488
- name="backup-vault",
489
- location=default_storage_pool.location)
490
- default_volume = gcp.netapp.Volume("default",
491
- name="backup-volume",
492
- location=default_storage_pool.location,
493
- capacity_gib="100",
494
- share_name="backup-volume",
495
- storage_pool=default_storage_pool.name,
496
- protocols=["NFSV3"],
497
- deletion_policy="FORCE",
498
- backup_config=gcp.netapp.VolumeBackupConfigArgs(
499
- backup_vault=default_backup_vault.id,
500
- ))
501
- test_backup = gcp.netapp.Backup("test_backup",
502
- name="test-backup",
503
- location=default_backup_vault.location,
504
- vault_name=default_backup_vault.name,
505
- source_volume=default_volume.id)
506
- ```
507
-
508
- ## Import
509
-
510
- backup can be imported using any of these accepted formats:
511
-
512
- * `projects/{{project}}/locations/{{location}}/backupVaults/{{vault_name}}/backups/{{name}}`
513
-
514
- * `{{project}}/{{location}}/{{vault_name}}/{{name}}`
515
-
516
- * `{{location}}/{{vault_name}}/{{name}}`
517
-
518
- When using the `pulumi import` command, backup can be imported using one of the formats above. For example:
519
-
520
- ```sh
521
- $ pulumi import gcp:netapp/backup:Backup default projects/{{project}}/locations/{{location}}/backupVaults/{{vault_name}}/backups/{{name}}
522
- ```
523
-
524
- ```sh
525
- $ pulumi import gcp:netapp/backup:Backup default {{project}}/{{location}}/{{vault_name}}/{{name}}
526
- ```
527
-
528
- ```sh
529
- $ pulumi import gcp:netapp/backup:Backup default {{location}}/{{vault_name}}/{{name}}
530
- ```
531
-
532
- :param str resource_name: The name of the resource.
533
- :param pulumi.ResourceOptions opts: Options for the resource.
534
- :param pulumi.Input[str] description: A description of the backup with 2048 characters or less. Requests with longer descriptions will be rejected.
535
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
536
-
537
- **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
538
- Please refer to the field `effective_labels` for all of the labels present on the resource.
539
- :param pulumi.Input[str] location: Location of the backup.
540
- :param pulumi.Input[str] name: The resource name of the backup. Needs to be unique per location.
541
-
542
-
543
- - - -
544
- :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
545
- If it is not provided, the provider project is used.
546
- :param pulumi.Input[str] source_snapshot: If specified, backup will be created from the given snapshot. If not specified,
547
- there will be a new snapshot taken to initiate the backup creation.
548
- Format: `projects/{{projectId}}/locations/{{location}}/volumes/{{volumename}}/snapshots/{{snapshotname}}``
549
- :param pulumi.Input[str] source_volume: ID of volumes this backup belongs to. Format: `projects/{{projects_id}}/locations/{{location}}/volumes/{{name}}``
550
- :param pulumi.Input[str] vault_name: Name of the backup vault to store the backup in.
551
- """
552
- ...
553
- @overload
554
- def __init__(__self__,
555
- resource_name: str,
556
- args: BackupArgs,
557
- opts: Optional[pulumi.ResourceOptions] = None):
558
- """
559
- NetApp Volumes supports volume backups, which are copies of your volumes
560
- stored independently from the volume. Backups are stored in backup vaults,
561
- which are containers for backups. If a volume is lost or deleted, you can
562
- use backups to restore your data to a new volume.
563
-
564
- When you create the first backup of a volume, all of the volume's used
565
- data is sent to the backup vault. Subsequent backups of the same volume
566
- only include data that has changed from the previous backup. This allows
567
- for fast incremental-forever backups and reduces the required capacity
568
- inside the backup vault.
569
-
570
- You can create manual and scheduled backups. Manual backups can be taken
571
- from a volume or from an existing volume snapshot. Scheduled backups
572
- require a backup policy.
573
-
574
- To get more information about backup, see:
575
-
576
- * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.backupVaults.backups)
577
- * How-to Guides
578
- * [Documentation](https://cloud.google.com/netapp/volumes/docs/protect-data/about-volume-backups)
579
-
580
- ## Example Usage
581
-
582
- ### Netapp Backup
583
-
584
- ```python
585
- import pulumi
586
- import pulumi_gcp as gcp
587
-
588
- default = gcp.compute.get_network(name="")
589
- default_storage_pool = gcp.netapp.StoragePool("default",
590
- name="backup-pool",
591
- location="us-central1",
592
- service_level="PREMIUM",
593
- capacity_gib="2048",
594
- network=default.id)
595
- default_backup_vault = gcp.netapp.BackupVault("default",
596
- name="backup-vault",
597
- location=default_storage_pool.location)
598
- default_volume = gcp.netapp.Volume("default",
599
- name="backup-volume",
600
- location=default_storage_pool.location,
601
- capacity_gib="100",
602
- share_name="backup-volume",
603
- storage_pool=default_storage_pool.name,
604
- protocols=["NFSV3"],
605
- deletion_policy="FORCE",
606
- backup_config=gcp.netapp.VolumeBackupConfigArgs(
607
- backup_vault=default_backup_vault.id,
608
- ))
609
- test_backup = gcp.netapp.Backup("test_backup",
610
- name="test-backup",
611
- location=default_backup_vault.location,
612
- vault_name=default_backup_vault.name,
613
- source_volume=default_volume.id)
614
- ```
615
-
616
- ## Import
617
-
618
- backup can be imported using any of these accepted formats:
619
-
620
- * `projects/{{project}}/locations/{{location}}/backupVaults/{{vault_name}}/backups/{{name}}`
621
-
622
- * `{{project}}/{{location}}/{{vault_name}}/{{name}}`
623
-
624
- * `{{location}}/{{vault_name}}/{{name}}`
625
-
626
- When using the `pulumi import` command, backup can be imported using one of the formats above. For example:
627
-
628
- ```sh
629
- $ pulumi import gcp:netapp/backup:Backup default projects/{{project}}/locations/{{location}}/backupVaults/{{vault_name}}/backups/{{name}}
630
- ```
631
-
632
- ```sh
633
- $ pulumi import gcp:netapp/backup:Backup default {{project}}/{{location}}/{{vault_name}}/{{name}}
634
- ```
635
-
636
- ```sh
637
- $ pulumi import gcp:netapp/backup:Backup default {{location}}/{{vault_name}}/{{name}}
638
- ```
639
-
640
- :param str resource_name: The name of the resource.
641
- :param BackupArgs args: The arguments to use to populate this resource's properties.
642
- :param pulumi.ResourceOptions opts: Options for the resource.
643
- """
644
- ...
645
- def __init__(__self__, resource_name: str, *args, **kwargs):
646
- resource_args, opts = _utilities.get_resource_args_opts(BackupArgs, pulumi.ResourceOptions, *args, **kwargs)
647
- if resource_args is not None:
648
- __self__._internal_init(resource_name, opts, **resource_args.__dict__)
649
- else:
650
- __self__._internal_init(resource_name, *args, **kwargs)
651
-
652
- def _internal_init(__self__,
653
- resource_name: str,
654
- opts: Optional[pulumi.ResourceOptions] = None,
655
- description: Optional[pulumi.Input[str]] = None,
656
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
657
- location: Optional[pulumi.Input[str]] = None,
658
- name: Optional[pulumi.Input[str]] = None,
659
- project: Optional[pulumi.Input[str]] = None,
660
- source_snapshot: Optional[pulumi.Input[str]] = None,
661
- source_volume: Optional[pulumi.Input[str]] = None,
662
- vault_name: Optional[pulumi.Input[str]] = None,
663
- __props__=None):
664
- opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
665
- if not isinstance(opts, pulumi.ResourceOptions):
666
- raise TypeError('Expected resource options to be a ResourceOptions instance')
667
- if opts.id is None:
668
- if __props__ is not None:
669
- raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
670
- __props__ = BackupArgs.__new__(BackupArgs)
671
-
672
- __props__.__dict__["description"] = description
673
- __props__.__dict__["labels"] = labels
674
- if location is None and not opts.urn:
675
- raise TypeError("Missing required property 'location'")
676
- __props__.__dict__["location"] = location
677
- __props__.__dict__["name"] = name
678
- __props__.__dict__["project"] = project
679
- __props__.__dict__["source_snapshot"] = source_snapshot
680
- __props__.__dict__["source_volume"] = source_volume
681
- if vault_name is None and not opts.urn:
682
- raise TypeError("Missing required property 'vault_name'")
683
- __props__.__dict__["vault_name"] = vault_name
684
- __props__.__dict__["backup_type"] = None
685
- __props__.__dict__["chain_storage_bytes"] = None
686
- __props__.__dict__["create_time"] = None
687
- __props__.__dict__["effective_labels"] = None
688
- __props__.__dict__["pulumi_labels"] = None
689
- __props__.__dict__["state"] = None
690
- __props__.__dict__["volume_usage_bytes"] = None
691
- secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
692
- opts = pulumi.ResourceOptions.merge(opts, secret_opts)
693
- super(Backup, __self__).__init__(
694
- 'gcp:netapp/backup:Backup',
695
- resource_name,
696
- __props__,
697
- opts)
698
-
699
- @staticmethod
700
- def get(resource_name: str,
701
- id: pulumi.Input[str],
702
- opts: Optional[pulumi.ResourceOptions] = None,
703
- backup_type: Optional[pulumi.Input[str]] = None,
704
- chain_storage_bytes: Optional[pulumi.Input[str]] = None,
705
- create_time: Optional[pulumi.Input[str]] = None,
706
- description: Optional[pulumi.Input[str]] = None,
707
- effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
708
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
709
- location: Optional[pulumi.Input[str]] = None,
710
- name: Optional[pulumi.Input[str]] = None,
711
- project: Optional[pulumi.Input[str]] = None,
712
- pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
713
- source_snapshot: Optional[pulumi.Input[str]] = None,
714
- source_volume: Optional[pulumi.Input[str]] = None,
715
- state: Optional[pulumi.Input[str]] = None,
716
- vault_name: Optional[pulumi.Input[str]] = None,
717
- volume_usage_bytes: Optional[pulumi.Input[str]] = None) -> 'Backup':
718
- """
719
- Get an existing Backup resource's state with the given name, id, and optional extra
720
- properties used to qualify the lookup.
721
-
722
- :param str resource_name: The unique name of the resulting resource.
723
- :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
724
- :param pulumi.ResourceOptions opts: Options for the resource.
725
- :param pulumi.Input[str] backup_type: Type of backup, manually created or created by a backup policy. Possible Values : [TYPE_UNSPECIFIED, MANUAL, SCHEDULED]
726
- :param pulumi.Input[str] chain_storage_bytes: Backups of a volume build incrementally on top of each other. They form a "backup chain".
727
- Total size of all backups in a chain in bytes = baseline backup size + sum(incremental backup size)
728
- :param pulumi.Input[str] create_time: Create time of the backup. A timestamp in RFC3339 UTC "Zulu" format. Examples: "2023-06-22T09:13:01.617Z".
729
- :param pulumi.Input[str] description: A description of the backup with 2048 characters or less. Requests with longer descriptions will be rejected.
730
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
731
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
732
-
733
- **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
734
- Please refer to the field `effective_labels` for all of the labels present on the resource.
735
- :param pulumi.Input[str] location: Location of the backup.
736
- :param pulumi.Input[str] name: The resource name of the backup. Needs to be unique per location.
737
-
738
-
739
- - - -
740
- :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
741
- If it is not provided, the provider project is used.
742
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
743
- and default labels configured on the provider.
744
- :param pulumi.Input[str] source_snapshot: If specified, backup will be created from the given snapshot. If not specified,
745
- there will be a new snapshot taken to initiate the backup creation.
746
- Format: `projects/{{projectId}}/locations/{{location}}/volumes/{{volumename}}/snapshots/{{snapshotname}}``
747
- :param pulumi.Input[str] source_volume: ID of volumes this backup belongs to. Format: `projects/{{projects_id}}/locations/{{location}}/volumes/{{name}}``
748
- :param pulumi.Input[str] state: The state of the Backup Vault. Possible Values : [STATE_UNSPECIFIED, CREATING, UPLOADING, READY, DELETING, ERROR, UPDATING]
749
- :param pulumi.Input[str] vault_name: Name of the backup vault to store the backup in.
750
- :param pulumi.Input[str] volume_usage_bytes: Size of the file system when the backup was created. When creating a new volume from the backup, the volume capacity will have to be at least as big.
751
- """
752
- opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
753
-
754
- __props__ = _BackupState.__new__(_BackupState)
755
-
756
- __props__.__dict__["backup_type"] = backup_type
757
- __props__.__dict__["chain_storage_bytes"] = chain_storage_bytes
758
- __props__.__dict__["create_time"] = create_time
759
- __props__.__dict__["description"] = description
760
- __props__.__dict__["effective_labels"] = effective_labels
761
- __props__.__dict__["labels"] = labels
762
- __props__.__dict__["location"] = location
763
- __props__.__dict__["name"] = name
764
- __props__.__dict__["project"] = project
765
- __props__.__dict__["pulumi_labels"] = pulumi_labels
766
- __props__.__dict__["source_snapshot"] = source_snapshot
767
- __props__.__dict__["source_volume"] = source_volume
768
- __props__.__dict__["state"] = state
769
- __props__.__dict__["vault_name"] = vault_name
770
- __props__.__dict__["volume_usage_bytes"] = volume_usage_bytes
771
- return Backup(resource_name, opts=opts, __props__=__props__)
772
-
773
- @property
774
- @pulumi.getter(name="backupType")
775
- def backup_type(self) -> pulumi.Output[str]:
776
- """
777
- Type of backup, manually created or created by a backup policy. Possible Values : [TYPE_UNSPECIFIED, MANUAL, SCHEDULED]
778
- """
779
- return pulumi.get(self, "backup_type")
780
-
781
- @property
782
- @pulumi.getter(name="chainStorageBytes")
783
- def chain_storage_bytes(self) -> pulumi.Output[str]:
784
- """
785
- Backups of a volume build incrementally on top of each other. They form a "backup chain".
786
- Total size of all backups in a chain in bytes = baseline backup size + sum(incremental backup size)
787
- """
788
- return pulumi.get(self, "chain_storage_bytes")
789
-
790
- @property
791
- @pulumi.getter(name="createTime")
792
- def create_time(self) -> pulumi.Output[str]:
793
- """
794
- Create time of the backup. A timestamp in RFC3339 UTC "Zulu" format. Examples: "2023-06-22T09:13:01.617Z".
795
- """
796
- return pulumi.get(self, "create_time")
797
-
798
- @property
799
- @pulumi.getter
800
- def description(self) -> pulumi.Output[Optional[str]]:
801
- """
802
- A description of the backup with 2048 characters or less. Requests with longer descriptions will be rejected.
803
- """
804
- return pulumi.get(self, "description")
805
-
806
- @property
807
- @pulumi.getter(name="effectiveLabels")
808
- def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
809
- """
810
- All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
811
- """
812
- return pulumi.get(self, "effective_labels")
813
-
814
- @property
815
- @pulumi.getter
816
- def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
817
- """
818
- Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
819
-
820
- **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
821
- Please refer to the field `effective_labels` for all of the labels present on the resource.
822
- """
823
- return pulumi.get(self, "labels")
824
-
825
- @property
826
- @pulumi.getter
827
- def location(self) -> pulumi.Output[str]:
828
- """
829
- Location of the backup.
830
- """
831
- return pulumi.get(self, "location")
832
-
833
- @property
834
- @pulumi.getter
835
- def name(self) -> pulumi.Output[str]:
836
- """
837
- The resource name of the backup. Needs to be unique per location.
838
-
839
-
840
- - - -
841
- """
842
- return pulumi.get(self, "name")
843
-
844
- @property
845
- @pulumi.getter
846
- def project(self) -> pulumi.Output[str]:
847
- """
848
- The ID of the project in which the resource belongs.
849
- If it is not provided, the provider project is used.
850
- """
851
- return pulumi.get(self, "project")
852
-
853
- @property
854
- @pulumi.getter(name="pulumiLabels")
855
- def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
856
- """
857
- The combination of labels configured directly on the resource
858
- and default labels configured on the provider.
859
- """
860
- return pulumi.get(self, "pulumi_labels")
861
-
862
- @property
863
- @pulumi.getter(name="sourceSnapshot")
864
- def source_snapshot(self) -> pulumi.Output[Optional[str]]:
865
- """
866
- If specified, backup will be created from the given snapshot. If not specified,
867
- there will be a new snapshot taken to initiate the backup creation.
868
- Format: `projects/{{projectId}}/locations/{{location}}/volumes/{{volumename}}/snapshots/{{snapshotname}}``
869
- """
870
- return pulumi.get(self, "source_snapshot")
871
-
872
- @property
873
- @pulumi.getter(name="sourceVolume")
874
- def source_volume(self) -> pulumi.Output[Optional[str]]:
875
- """
876
- ID of volumes this backup belongs to. Format: `projects/{{projects_id}}/locations/{{location}}/volumes/{{name}}``
877
- """
878
- return pulumi.get(self, "source_volume")
879
-
880
- @property
881
- @pulumi.getter
882
- def state(self) -> pulumi.Output[str]:
883
- """
884
- The state of the Backup Vault. Possible Values : [STATE_UNSPECIFIED, CREATING, UPLOADING, READY, DELETING, ERROR, UPDATING]
885
- """
886
- return pulumi.get(self, "state")
887
-
888
- @property
889
- @pulumi.getter(name="vaultName")
890
- def vault_name(self) -> pulumi.Output[str]:
891
- """
892
- Name of the backup vault to store the backup in.
893
- """
894
- return pulumi.get(self, "vault_name")
895
-
896
- @property
897
- @pulumi.getter(name="volumeUsageBytes")
898
- def volume_usage_bytes(self) -> pulumi.Output[str]:
899
- """
900
- Size of the file system when the backup was created. When creating a new volume from the backup, the volume capacity will have to be at least as big.
901
- """
902
- return pulumi.get(self, "volume_usage_bytes")
903
-