pulumi-gcp 8.3.0a1727223968__py3-none-any.whl → 8.3.0a1727226164__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 +120 -0
- pulumi_gcp/alloydb/_inputs.py +20 -0
- pulumi_gcp/alloydb/instance.py +36 -0
- pulumi_gcp/alloydb/outputs.py +14 -0
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +1400 -0
- pulumi_gcp/compute/attached_disk.py +103 -0
- pulumi_gcp/compute/backend_service.py +29 -22
- pulumi_gcp/compute/firewall_policy_with_rules.py +769 -0
- pulumi_gcp/compute/outputs.py +1019 -0
- pulumi_gcp/compute/region_backend_service.py +29 -22
- pulumi_gcp/compute/router_nat.py +27 -66
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +72 -99
- pulumi_gcp/container/outputs.py +53 -70
- pulumi_gcp/databasemigrationservice/__init__.py +1 -0
- pulumi_gcp/databasemigrationservice/_inputs.py +362 -0
- pulumi_gcp/databasemigrationservice/migration_job.py +1739 -0
- pulumi_gcp/databasemigrationservice/outputs.py +268 -0
- pulumi_gcp/dataproc/get_metastore_service.py +11 -1
- pulumi_gcp/dataproc/metastore_service.py +93 -0
- pulumi_gcp/developerconnect/_inputs.py +42 -39
- pulumi_gcp/developerconnect/connection.py +86 -83
- pulumi_gcp/developerconnect/outputs.py +28 -26
- pulumi_gcp/discoveryengine/__init__.py +1 -0
- pulumi_gcp/discoveryengine/_inputs.py +131 -0
- pulumi_gcp/discoveryengine/outputs.py +131 -0
- pulumi_gcp/discoveryengine/target_site.py +870 -0
- pulumi_gcp/dns/managed_zone.py +1 -1
- pulumi_gcp/filestore/get_instance.py +21 -1
- pulumi_gcp/filestore/instance.py +94 -0
- pulumi_gcp/gkehub/feature_membership.py +140 -62
- pulumi_gcp/healthcare/__init__.py +1 -0
- pulumi_gcp/healthcare/_inputs.py +39 -0
- pulumi_gcp/healthcare/outputs.py +40 -0
- pulumi_gcp/healthcare/workspace.py +465 -0
- pulumi_gcp/looker/instance.py +81 -0
- pulumi_gcp/netapp/_inputs.py +63 -0
- pulumi_gcp/netapp/outputs.py +57 -0
- pulumi_gcp/netapp/storage_pool.py +54 -0
- pulumi_gcp/netapp/volume.py +82 -0
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pubsub/subscription.py +43 -7
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/secretmanager/__init__.py +8 -0
- pulumi_gcp/secretmanager/_inputs.py +308 -0
- pulumi_gcp/secretmanager/get_regional_secret.py +279 -0
- pulumi_gcp/secretmanager/get_regional_secret_iam_policy.py +173 -0
- pulumi_gcp/secretmanager/get_regional_secret_version.py +241 -0
- pulumi_gcp/secretmanager/outputs.py +336 -0
- pulumi_gcp/secretmanager/regional_secret.py +1433 -0
- pulumi_gcp/secretmanager/regional_secret_iam_binding.py +1082 -0
- pulumi_gcp/secretmanager/regional_secret_iam_member.py +1082 -0
- pulumi_gcp/secretmanager/regional_secret_iam_policy.py +901 -0
- pulumi_gcp/secretmanager/regional_secret_version.py +753 -0
- pulumi_gcp/securitycenter/__init__.py +4 -0
- pulumi_gcp/securitycenter/folder_scc_big_query_export.py +795 -0
- pulumi_gcp/securitycenter/organization_scc_big_query_export.py +738 -0
- pulumi_gcp/securitycenter/project_scc_big_query_export.py +749 -0
- pulumi_gcp/securitycenter/v2_organization_scc_big_query_export.py +862 -0
- pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +6 -2
- pulumi_gcp/siteverification/__init__.py +3 -0
- pulumi_gcp/siteverification/_inputs.py +85 -0
- pulumi_gcp/siteverification/outputs.py +57 -0
- pulumi_gcp/siteverification/web_resource.py +398 -0
- pulumi_gcp/spanner/__init__.py +1 -0
- pulumi_gcp/spanner/_inputs.py +129 -0
- pulumi_gcp/spanner/backup_schedule.py +748 -0
- pulumi_gcp/spanner/get_instance.py +11 -1
- pulumi_gcp/spanner/instance.py +56 -0
- pulumi_gcp/spanner/outputs.py +93 -0
- {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/RECORD +76 -56
- {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.3.0a1727223968.dist-info → pulumi_gcp-8.3.0a1727226164.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,748 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
+
|
5
|
+
import copy
|
6
|
+
import warnings
|
7
|
+
import sys
|
8
|
+
import pulumi
|
9
|
+
import pulumi.runtime
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
11
|
+
if sys.version_info >= (3, 11):
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
13
|
+
else:
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
15
|
+
from .. import _utilities
|
16
|
+
from . import outputs
|
17
|
+
from ._inputs import *
|
18
|
+
|
19
|
+
__all__ = ['BackupScheduleArgs', 'BackupSchedule']
|
20
|
+
|
21
|
+
@pulumi.input_type
|
22
|
+
class BackupScheduleArgs:
|
23
|
+
def __init__(__self__, *,
|
24
|
+
database: pulumi.Input[str],
|
25
|
+
instance: pulumi.Input[str],
|
26
|
+
retention_duration: pulumi.Input[str],
|
27
|
+
full_backup_spec: Optional[pulumi.Input['BackupScheduleFullBackupSpecArgs']] = None,
|
28
|
+
incremental_backup_spec: Optional[pulumi.Input['BackupScheduleIncrementalBackupSpecArgs']] = None,
|
29
|
+
name: Optional[pulumi.Input[str]] = None,
|
30
|
+
project: Optional[pulumi.Input[str]] = None,
|
31
|
+
spec: Optional[pulumi.Input['BackupScheduleSpecArgs']] = None):
|
32
|
+
"""
|
33
|
+
The set of arguments for constructing a BackupSchedule resource.
|
34
|
+
:param pulumi.Input[str] database: The database to create the backup schedule on.
|
35
|
+
|
36
|
+
|
37
|
+
- - -
|
38
|
+
:param pulumi.Input[str] instance: The instance to create the database on.
|
39
|
+
:param pulumi.Input[str] retention_duration: At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days.
|
40
|
+
A duration in seconds with up to nine fractional digits, ending with 's'. Example: '3.5s'.
|
41
|
+
You can set this to a value up to 366 days.
|
42
|
+
:param pulumi.Input['BackupScheduleFullBackupSpecArgs'] full_backup_spec: The schedule creates only full backups..
|
43
|
+
:param pulumi.Input['BackupScheduleIncrementalBackupSpecArgs'] incremental_backup_spec: The schedule creates incremental backup chains.
|
44
|
+
:param pulumi.Input[str] name: A unique identifier for the backup schedule, which cannot be changed after
|
45
|
+
the backup schedule is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9].
|
46
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
47
|
+
If it is not provided, the provider project is used.
|
48
|
+
:param pulumi.Input['BackupScheduleSpecArgs'] spec: Defines specifications of the backup schedule.
|
49
|
+
Structure is documented below.
|
50
|
+
"""
|
51
|
+
pulumi.set(__self__, "database", database)
|
52
|
+
pulumi.set(__self__, "instance", instance)
|
53
|
+
pulumi.set(__self__, "retention_duration", retention_duration)
|
54
|
+
if full_backup_spec is not None:
|
55
|
+
pulumi.set(__self__, "full_backup_spec", full_backup_spec)
|
56
|
+
if incremental_backup_spec is not None:
|
57
|
+
pulumi.set(__self__, "incremental_backup_spec", incremental_backup_spec)
|
58
|
+
if name is not None:
|
59
|
+
pulumi.set(__self__, "name", name)
|
60
|
+
if project is not None:
|
61
|
+
pulumi.set(__self__, "project", project)
|
62
|
+
if spec is not None:
|
63
|
+
pulumi.set(__self__, "spec", spec)
|
64
|
+
|
65
|
+
@property
|
66
|
+
@pulumi.getter
|
67
|
+
def database(self) -> pulumi.Input[str]:
|
68
|
+
"""
|
69
|
+
The database to create the backup schedule on.
|
70
|
+
|
71
|
+
|
72
|
+
- - -
|
73
|
+
"""
|
74
|
+
return pulumi.get(self, "database")
|
75
|
+
|
76
|
+
@database.setter
|
77
|
+
def database(self, value: pulumi.Input[str]):
|
78
|
+
pulumi.set(self, "database", value)
|
79
|
+
|
80
|
+
@property
|
81
|
+
@pulumi.getter
|
82
|
+
def instance(self) -> pulumi.Input[str]:
|
83
|
+
"""
|
84
|
+
The instance to create the database on.
|
85
|
+
"""
|
86
|
+
return pulumi.get(self, "instance")
|
87
|
+
|
88
|
+
@instance.setter
|
89
|
+
def instance(self, value: pulumi.Input[str]):
|
90
|
+
pulumi.set(self, "instance", value)
|
91
|
+
|
92
|
+
@property
|
93
|
+
@pulumi.getter(name="retentionDuration")
|
94
|
+
def retention_duration(self) -> pulumi.Input[str]:
|
95
|
+
"""
|
96
|
+
At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days.
|
97
|
+
A duration in seconds with up to nine fractional digits, ending with 's'. Example: '3.5s'.
|
98
|
+
You can set this to a value up to 366 days.
|
99
|
+
"""
|
100
|
+
return pulumi.get(self, "retention_duration")
|
101
|
+
|
102
|
+
@retention_duration.setter
|
103
|
+
def retention_duration(self, value: pulumi.Input[str]):
|
104
|
+
pulumi.set(self, "retention_duration", value)
|
105
|
+
|
106
|
+
@property
|
107
|
+
@pulumi.getter(name="fullBackupSpec")
|
108
|
+
def full_backup_spec(self) -> Optional[pulumi.Input['BackupScheduleFullBackupSpecArgs']]:
|
109
|
+
"""
|
110
|
+
The schedule creates only full backups..
|
111
|
+
"""
|
112
|
+
return pulumi.get(self, "full_backup_spec")
|
113
|
+
|
114
|
+
@full_backup_spec.setter
|
115
|
+
def full_backup_spec(self, value: Optional[pulumi.Input['BackupScheduleFullBackupSpecArgs']]):
|
116
|
+
pulumi.set(self, "full_backup_spec", value)
|
117
|
+
|
118
|
+
@property
|
119
|
+
@pulumi.getter(name="incrementalBackupSpec")
|
120
|
+
def incremental_backup_spec(self) -> Optional[pulumi.Input['BackupScheduleIncrementalBackupSpecArgs']]:
|
121
|
+
"""
|
122
|
+
The schedule creates incremental backup chains.
|
123
|
+
"""
|
124
|
+
return pulumi.get(self, "incremental_backup_spec")
|
125
|
+
|
126
|
+
@incremental_backup_spec.setter
|
127
|
+
def incremental_backup_spec(self, value: Optional[pulumi.Input['BackupScheduleIncrementalBackupSpecArgs']]):
|
128
|
+
pulumi.set(self, "incremental_backup_spec", value)
|
129
|
+
|
130
|
+
@property
|
131
|
+
@pulumi.getter
|
132
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
133
|
+
"""
|
134
|
+
A unique identifier for the backup schedule, which cannot be changed after
|
135
|
+
the backup schedule is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9].
|
136
|
+
"""
|
137
|
+
return pulumi.get(self, "name")
|
138
|
+
|
139
|
+
@name.setter
|
140
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
141
|
+
pulumi.set(self, "name", value)
|
142
|
+
|
143
|
+
@property
|
144
|
+
@pulumi.getter
|
145
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
146
|
+
"""
|
147
|
+
The ID of the project in which the resource belongs.
|
148
|
+
If it is not provided, the provider project is used.
|
149
|
+
"""
|
150
|
+
return pulumi.get(self, "project")
|
151
|
+
|
152
|
+
@project.setter
|
153
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
154
|
+
pulumi.set(self, "project", value)
|
155
|
+
|
156
|
+
@property
|
157
|
+
@pulumi.getter
|
158
|
+
def spec(self) -> Optional[pulumi.Input['BackupScheduleSpecArgs']]:
|
159
|
+
"""
|
160
|
+
Defines specifications of the backup schedule.
|
161
|
+
Structure is documented below.
|
162
|
+
"""
|
163
|
+
return pulumi.get(self, "spec")
|
164
|
+
|
165
|
+
@spec.setter
|
166
|
+
def spec(self, value: Optional[pulumi.Input['BackupScheduleSpecArgs']]):
|
167
|
+
pulumi.set(self, "spec", value)
|
168
|
+
|
169
|
+
|
170
|
+
@pulumi.input_type
|
171
|
+
class _BackupScheduleState:
|
172
|
+
def __init__(__self__, *,
|
173
|
+
database: Optional[pulumi.Input[str]] = None,
|
174
|
+
full_backup_spec: Optional[pulumi.Input['BackupScheduleFullBackupSpecArgs']] = None,
|
175
|
+
incremental_backup_spec: Optional[pulumi.Input['BackupScheduleIncrementalBackupSpecArgs']] = None,
|
176
|
+
instance: Optional[pulumi.Input[str]] = None,
|
177
|
+
name: Optional[pulumi.Input[str]] = None,
|
178
|
+
project: Optional[pulumi.Input[str]] = None,
|
179
|
+
retention_duration: Optional[pulumi.Input[str]] = None,
|
180
|
+
spec: Optional[pulumi.Input['BackupScheduleSpecArgs']] = None):
|
181
|
+
"""
|
182
|
+
Input properties used for looking up and filtering BackupSchedule resources.
|
183
|
+
:param pulumi.Input[str] database: The database to create the backup schedule on.
|
184
|
+
|
185
|
+
|
186
|
+
- - -
|
187
|
+
:param pulumi.Input['BackupScheduleFullBackupSpecArgs'] full_backup_spec: The schedule creates only full backups..
|
188
|
+
:param pulumi.Input['BackupScheduleIncrementalBackupSpecArgs'] incremental_backup_spec: The schedule creates incremental backup chains.
|
189
|
+
:param pulumi.Input[str] instance: The instance to create the database on.
|
190
|
+
:param pulumi.Input[str] name: A unique identifier for the backup schedule, which cannot be changed after
|
191
|
+
the backup schedule is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9].
|
192
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
193
|
+
If it is not provided, the provider project is used.
|
194
|
+
:param pulumi.Input[str] retention_duration: At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days.
|
195
|
+
A duration in seconds with up to nine fractional digits, ending with 's'. Example: '3.5s'.
|
196
|
+
You can set this to a value up to 366 days.
|
197
|
+
:param pulumi.Input['BackupScheduleSpecArgs'] spec: Defines specifications of the backup schedule.
|
198
|
+
Structure is documented below.
|
199
|
+
"""
|
200
|
+
if database is not None:
|
201
|
+
pulumi.set(__self__, "database", database)
|
202
|
+
if full_backup_spec is not None:
|
203
|
+
pulumi.set(__self__, "full_backup_spec", full_backup_spec)
|
204
|
+
if incremental_backup_spec is not None:
|
205
|
+
pulumi.set(__self__, "incremental_backup_spec", incremental_backup_spec)
|
206
|
+
if instance is not None:
|
207
|
+
pulumi.set(__self__, "instance", instance)
|
208
|
+
if name is not None:
|
209
|
+
pulumi.set(__self__, "name", name)
|
210
|
+
if project is not None:
|
211
|
+
pulumi.set(__self__, "project", project)
|
212
|
+
if retention_duration is not None:
|
213
|
+
pulumi.set(__self__, "retention_duration", retention_duration)
|
214
|
+
if spec is not None:
|
215
|
+
pulumi.set(__self__, "spec", spec)
|
216
|
+
|
217
|
+
@property
|
218
|
+
@pulumi.getter
|
219
|
+
def database(self) -> Optional[pulumi.Input[str]]:
|
220
|
+
"""
|
221
|
+
The database to create the backup schedule on.
|
222
|
+
|
223
|
+
|
224
|
+
- - -
|
225
|
+
"""
|
226
|
+
return pulumi.get(self, "database")
|
227
|
+
|
228
|
+
@database.setter
|
229
|
+
def database(self, value: Optional[pulumi.Input[str]]):
|
230
|
+
pulumi.set(self, "database", value)
|
231
|
+
|
232
|
+
@property
|
233
|
+
@pulumi.getter(name="fullBackupSpec")
|
234
|
+
def full_backup_spec(self) -> Optional[pulumi.Input['BackupScheduleFullBackupSpecArgs']]:
|
235
|
+
"""
|
236
|
+
The schedule creates only full backups..
|
237
|
+
"""
|
238
|
+
return pulumi.get(self, "full_backup_spec")
|
239
|
+
|
240
|
+
@full_backup_spec.setter
|
241
|
+
def full_backup_spec(self, value: Optional[pulumi.Input['BackupScheduleFullBackupSpecArgs']]):
|
242
|
+
pulumi.set(self, "full_backup_spec", value)
|
243
|
+
|
244
|
+
@property
|
245
|
+
@pulumi.getter(name="incrementalBackupSpec")
|
246
|
+
def incremental_backup_spec(self) -> Optional[pulumi.Input['BackupScheduleIncrementalBackupSpecArgs']]:
|
247
|
+
"""
|
248
|
+
The schedule creates incremental backup chains.
|
249
|
+
"""
|
250
|
+
return pulumi.get(self, "incremental_backup_spec")
|
251
|
+
|
252
|
+
@incremental_backup_spec.setter
|
253
|
+
def incremental_backup_spec(self, value: Optional[pulumi.Input['BackupScheduleIncrementalBackupSpecArgs']]):
|
254
|
+
pulumi.set(self, "incremental_backup_spec", value)
|
255
|
+
|
256
|
+
@property
|
257
|
+
@pulumi.getter
|
258
|
+
def instance(self) -> Optional[pulumi.Input[str]]:
|
259
|
+
"""
|
260
|
+
The instance to create the database on.
|
261
|
+
"""
|
262
|
+
return pulumi.get(self, "instance")
|
263
|
+
|
264
|
+
@instance.setter
|
265
|
+
def instance(self, value: Optional[pulumi.Input[str]]):
|
266
|
+
pulumi.set(self, "instance", value)
|
267
|
+
|
268
|
+
@property
|
269
|
+
@pulumi.getter
|
270
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
271
|
+
"""
|
272
|
+
A unique identifier for the backup schedule, which cannot be changed after
|
273
|
+
the backup schedule is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9].
|
274
|
+
"""
|
275
|
+
return pulumi.get(self, "name")
|
276
|
+
|
277
|
+
@name.setter
|
278
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
279
|
+
pulumi.set(self, "name", value)
|
280
|
+
|
281
|
+
@property
|
282
|
+
@pulumi.getter
|
283
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
284
|
+
"""
|
285
|
+
The ID of the project in which the resource belongs.
|
286
|
+
If it is not provided, the provider project is used.
|
287
|
+
"""
|
288
|
+
return pulumi.get(self, "project")
|
289
|
+
|
290
|
+
@project.setter
|
291
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
292
|
+
pulumi.set(self, "project", value)
|
293
|
+
|
294
|
+
@property
|
295
|
+
@pulumi.getter(name="retentionDuration")
|
296
|
+
def retention_duration(self) -> Optional[pulumi.Input[str]]:
|
297
|
+
"""
|
298
|
+
At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days.
|
299
|
+
A duration in seconds with up to nine fractional digits, ending with 's'. Example: '3.5s'.
|
300
|
+
You can set this to a value up to 366 days.
|
301
|
+
"""
|
302
|
+
return pulumi.get(self, "retention_duration")
|
303
|
+
|
304
|
+
@retention_duration.setter
|
305
|
+
def retention_duration(self, value: Optional[pulumi.Input[str]]):
|
306
|
+
pulumi.set(self, "retention_duration", value)
|
307
|
+
|
308
|
+
@property
|
309
|
+
@pulumi.getter
|
310
|
+
def spec(self) -> Optional[pulumi.Input['BackupScheduleSpecArgs']]:
|
311
|
+
"""
|
312
|
+
Defines specifications of the backup schedule.
|
313
|
+
Structure is documented below.
|
314
|
+
"""
|
315
|
+
return pulumi.get(self, "spec")
|
316
|
+
|
317
|
+
@spec.setter
|
318
|
+
def spec(self, value: Optional[pulumi.Input['BackupScheduleSpecArgs']]):
|
319
|
+
pulumi.set(self, "spec", value)
|
320
|
+
|
321
|
+
|
322
|
+
class BackupSchedule(pulumi.CustomResource):
|
323
|
+
@overload
|
324
|
+
def __init__(__self__,
|
325
|
+
resource_name: str,
|
326
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
327
|
+
database: Optional[pulumi.Input[str]] = None,
|
328
|
+
full_backup_spec: Optional[pulumi.Input[Union['BackupScheduleFullBackupSpecArgs', 'BackupScheduleFullBackupSpecArgsDict']]] = None,
|
329
|
+
incremental_backup_spec: Optional[pulumi.Input[Union['BackupScheduleIncrementalBackupSpecArgs', 'BackupScheduleIncrementalBackupSpecArgsDict']]] = None,
|
330
|
+
instance: Optional[pulumi.Input[str]] = None,
|
331
|
+
name: Optional[pulumi.Input[str]] = None,
|
332
|
+
project: Optional[pulumi.Input[str]] = None,
|
333
|
+
retention_duration: Optional[pulumi.Input[str]] = None,
|
334
|
+
spec: Optional[pulumi.Input[Union['BackupScheduleSpecArgs', 'BackupScheduleSpecArgsDict']]] = None,
|
335
|
+
__props__=None):
|
336
|
+
"""
|
337
|
+
A backup schedule for a Cloud Spanner Database.
|
338
|
+
This resource is owned by the database it is backing up, and is deleted along with the database.
|
339
|
+
The actual backups are not though.
|
340
|
+
|
341
|
+
To get more information about BackupSchedule, see:
|
342
|
+
|
343
|
+
* [API documentation](https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances.databases.backupSchedules)
|
344
|
+
* How-to Guides
|
345
|
+
* [Official Documentation](https://cloud.google.com/spanner/docs/backup)
|
346
|
+
|
347
|
+
> **Warning:** This resource creates a Spanner Backup Schedule on a project that already has
|
348
|
+
a Spanner database.
|
349
|
+
This resource is owned by the database it is backing up, and is deleted along
|
350
|
+
with the database. The actual backups are not though.
|
351
|
+
|
352
|
+
## Example Usage
|
353
|
+
|
354
|
+
### Spanner Backup Schedule Daily Full
|
355
|
+
|
356
|
+
```python
|
357
|
+
import pulumi
|
358
|
+
import pulumi_gcp as gcp
|
359
|
+
|
360
|
+
main = gcp.spanner.Instance("main",
|
361
|
+
name="instance-id",
|
362
|
+
config="regional-europe-west1",
|
363
|
+
display_name="main-instance",
|
364
|
+
num_nodes=1)
|
365
|
+
database = gcp.spanner.Database("database",
|
366
|
+
instance=main.name,
|
367
|
+
name="database-id",
|
368
|
+
version_retention_period="3d",
|
369
|
+
ddls=[
|
370
|
+
"CREATE TABLE t1 (t1 INT64 NOT NULL,) PRIMARY KEY(t1)",
|
371
|
+
"CREATE TABLE t2 (t2 INT64 NOT NULL,) PRIMARY KEY(t2)",
|
372
|
+
],
|
373
|
+
deletion_protection=True)
|
374
|
+
full_backup = gcp.spanner.BackupSchedule("full-backup",
|
375
|
+
instance=main.name,
|
376
|
+
database=database.name,
|
377
|
+
name="backup-schedule-id",
|
378
|
+
retention_duration="31620000s",
|
379
|
+
spec={
|
380
|
+
"cron_spec": {
|
381
|
+
"text": "0 12 * * *",
|
382
|
+
},
|
383
|
+
},
|
384
|
+
full_backup_spec={})
|
385
|
+
```
|
386
|
+
### Spanner Backup Schedule Daily Incremental
|
387
|
+
|
388
|
+
```python
|
389
|
+
import pulumi
|
390
|
+
import pulumi_gcp as gcp
|
391
|
+
|
392
|
+
main = gcp.spanner.Instance("main",
|
393
|
+
name="instance-id",
|
394
|
+
config="regional-europe-west1",
|
395
|
+
display_name="main-instance",
|
396
|
+
num_nodes=1)
|
397
|
+
database = gcp.spanner.Database("database",
|
398
|
+
instance=main.name,
|
399
|
+
name="database-id",
|
400
|
+
version_retention_period="3d",
|
401
|
+
ddls=[
|
402
|
+
"CREATE TABLE t1 (t1 INT64 NOT NULL,) PRIMARY KEY(t1)",
|
403
|
+
"CREATE TABLE t2 (t2 INT64 NOT NULL,) PRIMARY KEY(t2)",
|
404
|
+
],
|
405
|
+
deletion_protection=True)
|
406
|
+
incremental_backup = gcp.spanner.BackupSchedule("incremental-backup",
|
407
|
+
instance=main.name,
|
408
|
+
database=database.name,
|
409
|
+
name="backup-schedule-id",
|
410
|
+
retention_duration="31620000s",
|
411
|
+
spec={
|
412
|
+
"cron_spec": {
|
413
|
+
"text": "0 12 * * *",
|
414
|
+
},
|
415
|
+
},
|
416
|
+
incremental_backup_spec={})
|
417
|
+
```
|
418
|
+
|
419
|
+
## Import
|
420
|
+
|
421
|
+
BackupSchedule can be imported using any of these accepted formats:
|
422
|
+
|
423
|
+
* `projects/{{project}}/instances/{{instance}}/databases/{{database}}/backupSchedules/{{name}}`
|
424
|
+
|
425
|
+
* `{{project}}/{{instance}}/{{database}}/{{name}}`
|
426
|
+
|
427
|
+
* `{{instance}}/{{database}}/{{name}}`
|
428
|
+
|
429
|
+
When using the `pulumi import` command, BackupSchedule can be imported using one of the formats above. For example:
|
430
|
+
|
431
|
+
```sh
|
432
|
+
$ pulumi import gcp:spanner/backupSchedule:BackupSchedule default projects/{{project}}/instances/{{instance}}/databases/{{database}}/backupSchedules/{{name}}
|
433
|
+
```
|
434
|
+
|
435
|
+
```sh
|
436
|
+
$ pulumi import gcp:spanner/backupSchedule:BackupSchedule default {{project}}/{{instance}}/{{database}}/{{name}}
|
437
|
+
```
|
438
|
+
|
439
|
+
```sh
|
440
|
+
$ pulumi import gcp:spanner/backupSchedule:BackupSchedule default {{instance}}/{{database}}/{{name}}
|
441
|
+
```
|
442
|
+
|
443
|
+
:param str resource_name: The name of the resource.
|
444
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
445
|
+
:param pulumi.Input[str] database: The database to create the backup schedule on.
|
446
|
+
|
447
|
+
|
448
|
+
- - -
|
449
|
+
:param pulumi.Input[Union['BackupScheduleFullBackupSpecArgs', 'BackupScheduleFullBackupSpecArgsDict']] full_backup_spec: The schedule creates only full backups..
|
450
|
+
:param pulumi.Input[Union['BackupScheduleIncrementalBackupSpecArgs', 'BackupScheduleIncrementalBackupSpecArgsDict']] incremental_backup_spec: The schedule creates incremental backup chains.
|
451
|
+
:param pulumi.Input[str] instance: The instance to create the database on.
|
452
|
+
:param pulumi.Input[str] name: A unique identifier for the backup schedule, which cannot be changed after
|
453
|
+
the backup schedule is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9].
|
454
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
455
|
+
If it is not provided, the provider project is used.
|
456
|
+
:param pulumi.Input[str] retention_duration: At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days.
|
457
|
+
A duration in seconds with up to nine fractional digits, ending with 's'. Example: '3.5s'.
|
458
|
+
You can set this to a value up to 366 days.
|
459
|
+
:param pulumi.Input[Union['BackupScheduleSpecArgs', 'BackupScheduleSpecArgsDict']] spec: Defines specifications of the backup schedule.
|
460
|
+
Structure is documented below.
|
461
|
+
"""
|
462
|
+
...
|
463
|
+
@overload
|
464
|
+
def __init__(__self__,
|
465
|
+
resource_name: str,
|
466
|
+
args: BackupScheduleArgs,
|
467
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
468
|
+
"""
|
469
|
+
A backup schedule for a Cloud Spanner Database.
|
470
|
+
This resource is owned by the database it is backing up, and is deleted along with the database.
|
471
|
+
The actual backups are not though.
|
472
|
+
|
473
|
+
To get more information about BackupSchedule, see:
|
474
|
+
|
475
|
+
* [API documentation](https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances.databases.backupSchedules)
|
476
|
+
* How-to Guides
|
477
|
+
* [Official Documentation](https://cloud.google.com/spanner/docs/backup)
|
478
|
+
|
479
|
+
> **Warning:** This resource creates a Spanner Backup Schedule on a project that already has
|
480
|
+
a Spanner database.
|
481
|
+
This resource is owned by the database it is backing up, and is deleted along
|
482
|
+
with the database. The actual backups are not though.
|
483
|
+
|
484
|
+
## Example Usage
|
485
|
+
|
486
|
+
### Spanner Backup Schedule Daily Full
|
487
|
+
|
488
|
+
```python
|
489
|
+
import pulumi
|
490
|
+
import pulumi_gcp as gcp
|
491
|
+
|
492
|
+
main = gcp.spanner.Instance("main",
|
493
|
+
name="instance-id",
|
494
|
+
config="regional-europe-west1",
|
495
|
+
display_name="main-instance",
|
496
|
+
num_nodes=1)
|
497
|
+
database = gcp.spanner.Database("database",
|
498
|
+
instance=main.name,
|
499
|
+
name="database-id",
|
500
|
+
version_retention_period="3d",
|
501
|
+
ddls=[
|
502
|
+
"CREATE TABLE t1 (t1 INT64 NOT NULL,) PRIMARY KEY(t1)",
|
503
|
+
"CREATE TABLE t2 (t2 INT64 NOT NULL,) PRIMARY KEY(t2)",
|
504
|
+
],
|
505
|
+
deletion_protection=True)
|
506
|
+
full_backup = gcp.spanner.BackupSchedule("full-backup",
|
507
|
+
instance=main.name,
|
508
|
+
database=database.name,
|
509
|
+
name="backup-schedule-id",
|
510
|
+
retention_duration="31620000s",
|
511
|
+
spec={
|
512
|
+
"cron_spec": {
|
513
|
+
"text": "0 12 * * *",
|
514
|
+
},
|
515
|
+
},
|
516
|
+
full_backup_spec={})
|
517
|
+
```
|
518
|
+
### Spanner Backup Schedule Daily Incremental
|
519
|
+
|
520
|
+
```python
|
521
|
+
import pulumi
|
522
|
+
import pulumi_gcp as gcp
|
523
|
+
|
524
|
+
main = gcp.spanner.Instance("main",
|
525
|
+
name="instance-id",
|
526
|
+
config="regional-europe-west1",
|
527
|
+
display_name="main-instance",
|
528
|
+
num_nodes=1)
|
529
|
+
database = gcp.spanner.Database("database",
|
530
|
+
instance=main.name,
|
531
|
+
name="database-id",
|
532
|
+
version_retention_period="3d",
|
533
|
+
ddls=[
|
534
|
+
"CREATE TABLE t1 (t1 INT64 NOT NULL,) PRIMARY KEY(t1)",
|
535
|
+
"CREATE TABLE t2 (t2 INT64 NOT NULL,) PRIMARY KEY(t2)",
|
536
|
+
],
|
537
|
+
deletion_protection=True)
|
538
|
+
incremental_backup = gcp.spanner.BackupSchedule("incremental-backup",
|
539
|
+
instance=main.name,
|
540
|
+
database=database.name,
|
541
|
+
name="backup-schedule-id",
|
542
|
+
retention_duration="31620000s",
|
543
|
+
spec={
|
544
|
+
"cron_spec": {
|
545
|
+
"text": "0 12 * * *",
|
546
|
+
},
|
547
|
+
},
|
548
|
+
incremental_backup_spec={})
|
549
|
+
```
|
550
|
+
|
551
|
+
## Import
|
552
|
+
|
553
|
+
BackupSchedule can be imported using any of these accepted formats:
|
554
|
+
|
555
|
+
* `projects/{{project}}/instances/{{instance}}/databases/{{database}}/backupSchedules/{{name}}`
|
556
|
+
|
557
|
+
* `{{project}}/{{instance}}/{{database}}/{{name}}`
|
558
|
+
|
559
|
+
* `{{instance}}/{{database}}/{{name}}`
|
560
|
+
|
561
|
+
When using the `pulumi import` command, BackupSchedule can be imported using one of the formats above. For example:
|
562
|
+
|
563
|
+
```sh
|
564
|
+
$ pulumi import gcp:spanner/backupSchedule:BackupSchedule default projects/{{project}}/instances/{{instance}}/databases/{{database}}/backupSchedules/{{name}}
|
565
|
+
```
|
566
|
+
|
567
|
+
```sh
|
568
|
+
$ pulumi import gcp:spanner/backupSchedule:BackupSchedule default {{project}}/{{instance}}/{{database}}/{{name}}
|
569
|
+
```
|
570
|
+
|
571
|
+
```sh
|
572
|
+
$ pulumi import gcp:spanner/backupSchedule:BackupSchedule default {{instance}}/{{database}}/{{name}}
|
573
|
+
```
|
574
|
+
|
575
|
+
:param str resource_name: The name of the resource.
|
576
|
+
:param BackupScheduleArgs args: The arguments to use to populate this resource's properties.
|
577
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
578
|
+
"""
|
579
|
+
...
|
580
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
581
|
+
resource_args, opts = _utilities.get_resource_args_opts(BackupScheduleArgs, pulumi.ResourceOptions, *args, **kwargs)
|
582
|
+
if resource_args is not None:
|
583
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
584
|
+
else:
|
585
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
586
|
+
|
587
|
+
def _internal_init(__self__,
|
588
|
+
resource_name: str,
|
589
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
590
|
+
database: Optional[pulumi.Input[str]] = None,
|
591
|
+
full_backup_spec: Optional[pulumi.Input[Union['BackupScheduleFullBackupSpecArgs', 'BackupScheduleFullBackupSpecArgsDict']]] = None,
|
592
|
+
incremental_backup_spec: Optional[pulumi.Input[Union['BackupScheduleIncrementalBackupSpecArgs', 'BackupScheduleIncrementalBackupSpecArgsDict']]] = None,
|
593
|
+
instance: Optional[pulumi.Input[str]] = None,
|
594
|
+
name: Optional[pulumi.Input[str]] = None,
|
595
|
+
project: Optional[pulumi.Input[str]] = None,
|
596
|
+
retention_duration: Optional[pulumi.Input[str]] = None,
|
597
|
+
spec: Optional[pulumi.Input[Union['BackupScheduleSpecArgs', 'BackupScheduleSpecArgsDict']]] = None,
|
598
|
+
__props__=None):
|
599
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
600
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
601
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
602
|
+
if opts.id is None:
|
603
|
+
if __props__ is not None:
|
604
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
605
|
+
__props__ = BackupScheduleArgs.__new__(BackupScheduleArgs)
|
606
|
+
|
607
|
+
if database is None and not opts.urn:
|
608
|
+
raise TypeError("Missing required property 'database'")
|
609
|
+
__props__.__dict__["database"] = database
|
610
|
+
__props__.__dict__["full_backup_spec"] = full_backup_spec
|
611
|
+
__props__.__dict__["incremental_backup_spec"] = incremental_backup_spec
|
612
|
+
if instance is None and not opts.urn:
|
613
|
+
raise TypeError("Missing required property 'instance'")
|
614
|
+
__props__.__dict__["instance"] = instance
|
615
|
+
__props__.__dict__["name"] = name
|
616
|
+
__props__.__dict__["project"] = project
|
617
|
+
if retention_duration is None and not opts.urn:
|
618
|
+
raise TypeError("Missing required property 'retention_duration'")
|
619
|
+
__props__.__dict__["retention_duration"] = retention_duration
|
620
|
+
__props__.__dict__["spec"] = spec
|
621
|
+
super(BackupSchedule, __self__).__init__(
|
622
|
+
'gcp:spanner/backupSchedule:BackupSchedule',
|
623
|
+
resource_name,
|
624
|
+
__props__,
|
625
|
+
opts)
|
626
|
+
|
627
|
+
@staticmethod
|
628
|
+
def get(resource_name: str,
|
629
|
+
id: pulumi.Input[str],
|
630
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
631
|
+
database: Optional[pulumi.Input[str]] = None,
|
632
|
+
full_backup_spec: Optional[pulumi.Input[Union['BackupScheduleFullBackupSpecArgs', 'BackupScheduleFullBackupSpecArgsDict']]] = None,
|
633
|
+
incremental_backup_spec: Optional[pulumi.Input[Union['BackupScheduleIncrementalBackupSpecArgs', 'BackupScheduleIncrementalBackupSpecArgsDict']]] = None,
|
634
|
+
instance: Optional[pulumi.Input[str]] = None,
|
635
|
+
name: Optional[pulumi.Input[str]] = None,
|
636
|
+
project: Optional[pulumi.Input[str]] = None,
|
637
|
+
retention_duration: Optional[pulumi.Input[str]] = None,
|
638
|
+
spec: Optional[pulumi.Input[Union['BackupScheduleSpecArgs', 'BackupScheduleSpecArgsDict']]] = None) -> 'BackupSchedule':
|
639
|
+
"""
|
640
|
+
Get an existing BackupSchedule resource's state with the given name, id, and optional extra
|
641
|
+
properties used to qualify the lookup.
|
642
|
+
|
643
|
+
:param str resource_name: The unique name of the resulting resource.
|
644
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
645
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
646
|
+
:param pulumi.Input[str] database: The database to create the backup schedule on.
|
647
|
+
|
648
|
+
|
649
|
+
- - -
|
650
|
+
:param pulumi.Input[Union['BackupScheduleFullBackupSpecArgs', 'BackupScheduleFullBackupSpecArgsDict']] full_backup_spec: The schedule creates only full backups..
|
651
|
+
:param pulumi.Input[Union['BackupScheduleIncrementalBackupSpecArgs', 'BackupScheduleIncrementalBackupSpecArgsDict']] incremental_backup_spec: The schedule creates incremental backup chains.
|
652
|
+
:param pulumi.Input[str] instance: The instance to create the database on.
|
653
|
+
:param pulumi.Input[str] name: A unique identifier for the backup schedule, which cannot be changed after
|
654
|
+
the backup schedule is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9].
|
655
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
656
|
+
If it is not provided, the provider project is used.
|
657
|
+
:param pulumi.Input[str] retention_duration: At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days.
|
658
|
+
A duration in seconds with up to nine fractional digits, ending with 's'. Example: '3.5s'.
|
659
|
+
You can set this to a value up to 366 days.
|
660
|
+
:param pulumi.Input[Union['BackupScheduleSpecArgs', 'BackupScheduleSpecArgsDict']] spec: Defines specifications of the backup schedule.
|
661
|
+
Structure is documented below.
|
662
|
+
"""
|
663
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
664
|
+
|
665
|
+
__props__ = _BackupScheduleState.__new__(_BackupScheduleState)
|
666
|
+
|
667
|
+
__props__.__dict__["database"] = database
|
668
|
+
__props__.__dict__["full_backup_spec"] = full_backup_spec
|
669
|
+
__props__.__dict__["incremental_backup_spec"] = incremental_backup_spec
|
670
|
+
__props__.__dict__["instance"] = instance
|
671
|
+
__props__.__dict__["name"] = name
|
672
|
+
__props__.__dict__["project"] = project
|
673
|
+
__props__.__dict__["retention_duration"] = retention_duration
|
674
|
+
__props__.__dict__["spec"] = spec
|
675
|
+
return BackupSchedule(resource_name, opts=opts, __props__=__props__)
|
676
|
+
|
677
|
+
@property
|
678
|
+
@pulumi.getter
|
679
|
+
def database(self) -> pulumi.Output[str]:
|
680
|
+
"""
|
681
|
+
The database to create the backup schedule on.
|
682
|
+
|
683
|
+
|
684
|
+
- - -
|
685
|
+
"""
|
686
|
+
return pulumi.get(self, "database")
|
687
|
+
|
688
|
+
@property
|
689
|
+
@pulumi.getter(name="fullBackupSpec")
|
690
|
+
def full_backup_spec(self) -> pulumi.Output[Optional['outputs.BackupScheduleFullBackupSpec']]:
|
691
|
+
"""
|
692
|
+
The schedule creates only full backups..
|
693
|
+
"""
|
694
|
+
return pulumi.get(self, "full_backup_spec")
|
695
|
+
|
696
|
+
@property
|
697
|
+
@pulumi.getter(name="incrementalBackupSpec")
|
698
|
+
def incremental_backup_spec(self) -> pulumi.Output[Optional['outputs.BackupScheduleIncrementalBackupSpec']]:
|
699
|
+
"""
|
700
|
+
The schedule creates incremental backup chains.
|
701
|
+
"""
|
702
|
+
return pulumi.get(self, "incremental_backup_spec")
|
703
|
+
|
704
|
+
@property
|
705
|
+
@pulumi.getter
|
706
|
+
def instance(self) -> pulumi.Output[str]:
|
707
|
+
"""
|
708
|
+
The instance to create the database on.
|
709
|
+
"""
|
710
|
+
return pulumi.get(self, "instance")
|
711
|
+
|
712
|
+
@property
|
713
|
+
@pulumi.getter
|
714
|
+
def name(self) -> pulumi.Output[str]:
|
715
|
+
"""
|
716
|
+
A unique identifier for the backup schedule, which cannot be changed after
|
717
|
+
the backup schedule is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9].
|
718
|
+
"""
|
719
|
+
return pulumi.get(self, "name")
|
720
|
+
|
721
|
+
@property
|
722
|
+
@pulumi.getter
|
723
|
+
def project(self) -> pulumi.Output[str]:
|
724
|
+
"""
|
725
|
+
The ID of the project in which the resource belongs.
|
726
|
+
If it is not provided, the provider project is used.
|
727
|
+
"""
|
728
|
+
return pulumi.get(self, "project")
|
729
|
+
|
730
|
+
@property
|
731
|
+
@pulumi.getter(name="retentionDuration")
|
732
|
+
def retention_duration(self) -> pulumi.Output[str]:
|
733
|
+
"""
|
734
|
+
At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days.
|
735
|
+
A duration in seconds with up to nine fractional digits, ending with 's'. Example: '3.5s'.
|
736
|
+
You can set this to a value up to 366 days.
|
737
|
+
"""
|
738
|
+
return pulumi.get(self, "retention_duration")
|
739
|
+
|
740
|
+
@property
|
741
|
+
@pulumi.getter
|
742
|
+
def spec(self) -> pulumi.Output[Optional['outputs.BackupScheduleSpec']]:
|
743
|
+
"""
|
744
|
+
Defines specifications of the backup schedule.
|
745
|
+
Structure is documented below.
|
746
|
+
"""
|
747
|
+
return pulumi.get(self, "spec")
|
748
|
+
|