pulumi-gcp 7.27.0a1718279079__py3-none-any.whl → 7.28.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.
- pulumi_gcp/__init__.py +59 -0
- pulumi_gcp/accesscontextmanager/_inputs.py +58 -74
- pulumi_gcp/accesscontextmanager/access_levels.py +0 -20
- pulumi_gcp/accesscontextmanager/outputs.py +58 -74
- pulumi_gcp/accesscontextmanager/service_perimeter.py +2 -0
- pulumi_gcp/bigtable/_inputs.py +40 -0
- pulumi_gcp/bigtable/outputs.py +49 -0
- pulumi_gcp/bigtable/table.py +54 -0
- pulumi_gcp/cloudbuildv2/_inputs.py +383 -0
- pulumi_gcp/cloudbuildv2/connection.py +110 -2
- pulumi_gcp/cloudbuildv2/outputs.py +421 -0
- pulumi_gcp/composer/__init__.py +3 -0
- pulumi_gcp/composer/get_user_workloads_config_map.py +190 -0
- pulumi_gcp/composer/get_user_workloads_secret.py +188 -0
- pulumi_gcp/composer/user_workloads_config_map.py +475 -0
- pulumi_gcp/compute/_inputs.py +4 -2
- pulumi_gcp/compute/backend_service.py +28 -48
- pulumi_gcp/compute/interconnect.py +4 -4
- pulumi_gcp/compute/outputs.py +10 -4
- pulumi_gcp/compute/region_backend_service.py +35 -48
- pulumi_gcp/compute/region_network_endpoint.py +187 -0
- pulumi_gcp/compute/region_network_endpoint_group.py +49 -9
- pulumi_gcp/compute/region_target_https_proxy.py +7 -14
- pulumi_gcp/compute/target_https_proxy.py +28 -14
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +2 -2
- pulumi_gcp/container/outputs.py +4 -4
- pulumi_gcp/discoveryengine/_inputs.py +227 -0
- pulumi_gcp/discoveryengine/data_store.py +108 -0
- pulumi_gcp/discoveryengine/outputs.py +280 -0
- pulumi_gcp/edgecontainer/_inputs.py +107 -1
- pulumi_gcp/edgecontainer/outputs.py +123 -1
- pulumi_gcp/gkehub/_inputs.py +16 -0
- pulumi_gcp/gkehub/outputs.py +15 -1
- pulumi_gcp/kms/crypto_key.py +2 -6
- pulumi_gcp/logging/folder_sink.py +14 -14
- pulumi_gcp/logging/organization_sink.py +14 -14
- pulumi_gcp/managedkafka/__init__.py +11 -0
- pulumi_gcp/managedkafka/_inputs.py +169 -0
- pulumi_gcp/managedkafka/cluster.py +807 -0
- pulumi_gcp/managedkafka/outputs.py +197 -0
- pulumi_gcp/managedkafka/topic.py +599 -0
- pulumi_gcp/netapp/__init__.py +1 -0
- pulumi_gcp/netapp/active_directory.py +55 -0
- pulumi_gcp/netapp/backup.py +903 -0
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/securitycenter/__init__.py +3 -0
- pulumi_gcp/securitycenter/_inputs.py +1105 -0
- pulumi_gcp/securitycenter/management_folder_security_health_analytics_custom_module.py +725 -0
- pulumi_gcp/securitycenter/management_organization_security_health_analytics_custom_module.py +713 -0
- pulumi_gcp/securitycenter/management_project_security_health_analytics_custom_module.py +706 -0
- pulumi_gcp/securitycenter/outputs.py +1048 -0
- pulumi_gcp/vertex/ai_feature_online_store.py +37 -8
- {pulumi_gcp-7.27.0a1718279079.dist-info → pulumi_gcp-7.28.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.27.0a1718279079.dist-info → pulumi_gcp-7.28.0.dist-info}/RECORD +59 -47
- {pulumi_gcp-7.27.0a1718279079.dist-info → pulumi_gcp-7.28.0.dist-info}/WHEEL +1 -1
- {pulumi_gcp-7.27.0a1718279079.dist-info → pulumi_gcp-7.28.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,903 @@
|
|
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
|
+
|