cloudsnorkel.cdk-rds-sanitized-snapshots 0.0.3__py3-none-any.whl → 0.1.1__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.
Potentially problematic release.
This version of cloudsnorkel.cdk-rds-sanitized-snapshots might be problematic. Click here for more details.
- cloudsnorkel/cdk_rds_sanitized_snapshots/__init__.py +115 -73
- cloudsnorkel/cdk_rds_sanitized_snapshots/_jsii/__init__.py +7 -2
- cloudsnorkel/cdk_rds_sanitized_snapshots/_jsii/cdk-rds-sanitized-snapshots@0.1.1.jsii.tgz +0 -0
- {cloudsnorkel.cdk_rds_sanitized_snapshots-0.0.3.dist-info → cloudsnorkel.cdk_rds_sanitized_snapshots-0.1.1.dist-info}/METADATA +8 -10
- cloudsnorkel.cdk_rds_sanitized_snapshots-0.1.1.dist-info/RECORD +9 -0
- {cloudsnorkel.cdk_rds_sanitized_snapshots-0.0.3.dist-info → cloudsnorkel.cdk_rds_sanitized_snapshots-0.1.1.dist-info}/WHEEL +1 -1
- cloudsnorkel/cdk_rds_sanitized_snapshots/_jsii/cdk-rds-sanitized-snapshots@0.0.3.jsii.tgz +0 -0
- cloudsnorkel.cdk_rds_sanitized_snapshots-0.0.3.dist-info/RECORD +0 -9
- {cloudsnorkel.cdk_rds_sanitized_snapshots-0.0.3.dist-info → cloudsnorkel.cdk_rds_sanitized_snapshots-0.1.1.dist-info}/LICENSE +0 -0
- {cloudsnorkel.cdk_rds_sanitized_snapshots-0.0.3.dist-info → cloudsnorkel.cdk_rds_sanitized_snapshots-0.1.1.dist-info}/top_level.txt +0 -0
|
@@ -109,6 +109,9 @@ on giving other accounts access to the key.
|
|
|
109
109
|
npm run bundle && npm run integ:default:deploy
|
|
110
110
|
```
|
|
111
111
|
'''
|
|
112
|
+
from pkgutil import extend_path
|
|
113
|
+
__path__ = extend_path(__path__, __name__)
|
|
114
|
+
|
|
112
115
|
import abc
|
|
113
116
|
import builtins
|
|
114
117
|
import datetime
|
|
@@ -119,15 +122,17 @@ import jsii
|
|
|
119
122
|
import publication
|
|
120
123
|
import typing_extensions
|
|
121
124
|
|
|
125
|
+
from typeguard import check_type
|
|
126
|
+
|
|
122
127
|
from ._jsii import *
|
|
123
128
|
|
|
124
|
-
import aws_cdk.aws_ec2
|
|
125
|
-
import aws_cdk.aws_ecs
|
|
126
|
-
import aws_cdk.aws_events
|
|
127
|
-
import aws_cdk.aws_kms
|
|
128
|
-
import aws_cdk.aws_rds
|
|
129
|
-
import aws_cdk.aws_stepfunctions
|
|
130
|
-
import constructs
|
|
129
|
+
import aws_cdk.aws_ec2 as _aws_cdk_aws_ec2_ceddda9d
|
|
130
|
+
import aws_cdk.aws_ecs as _aws_cdk_aws_ecs_ceddda9d
|
|
131
|
+
import aws_cdk.aws_events as _aws_cdk_aws_events_ceddda9d
|
|
132
|
+
import aws_cdk.aws_kms as _aws_cdk_aws_kms_ceddda9d
|
|
133
|
+
import aws_cdk.aws_rds as _aws_cdk_aws_rds_ceddda9d
|
|
134
|
+
import aws_cdk.aws_stepfunctions as _aws_cdk_aws_stepfunctions_ceddda9d
|
|
135
|
+
import constructs as _constructs_77d1e7e8
|
|
131
136
|
|
|
132
137
|
|
|
133
138
|
@jsii.interface(
|
|
@@ -138,7 +143,7 @@ class IRdsSanitizedSnapshotter(typing_extensions.Protocol):
|
|
|
138
143
|
:stability: experimental
|
|
139
144
|
'''
|
|
140
145
|
|
|
141
|
-
@builtins.property
|
|
146
|
+
@builtins.property
|
|
142
147
|
@jsii.member(jsii_name="script")
|
|
143
148
|
def script(self) -> builtins.str:
|
|
144
149
|
'''(experimental) SQL script used to sanitize the database. It will be executed against the temporary database.
|
|
@@ -149,18 +154,20 @@ class IRdsSanitizedSnapshotter(typing_extensions.Protocol):
|
|
|
149
154
|
'''
|
|
150
155
|
...
|
|
151
156
|
|
|
152
|
-
@builtins.property
|
|
157
|
+
@builtins.property
|
|
153
158
|
@jsii.member(jsii_name="vpc")
|
|
154
|
-
def vpc(self) ->
|
|
159
|
+
def vpc(self) -> _aws_cdk_aws_ec2_ceddda9d.IVpc:
|
|
155
160
|
'''(experimental) VPC where temporary database and sanitizing task will be created.
|
|
156
161
|
|
|
157
162
|
:stability: experimental
|
|
158
163
|
'''
|
|
159
164
|
...
|
|
160
165
|
|
|
161
|
-
@builtins.property
|
|
166
|
+
@builtins.property
|
|
162
167
|
@jsii.member(jsii_name="databaseCluster")
|
|
163
|
-
def database_cluster(
|
|
168
|
+
def database_cluster(
|
|
169
|
+
self,
|
|
170
|
+
) -> typing.Optional[_aws_cdk_aws_rds_ceddda9d.IDatabaseCluster]:
|
|
164
171
|
'''(experimental) Database cluster to snapshot and sanitize.
|
|
165
172
|
|
|
166
173
|
Only one of ``databaseCluster`` and ``databaseInstance`` can be specified.
|
|
@@ -169,9 +176,11 @@ class IRdsSanitizedSnapshotter(typing_extensions.Protocol):
|
|
|
169
176
|
'''
|
|
170
177
|
...
|
|
171
178
|
|
|
172
|
-
@builtins.property
|
|
179
|
+
@builtins.property
|
|
173
180
|
@jsii.member(jsii_name="databaseInstance")
|
|
174
|
-
def database_instance(
|
|
181
|
+
def database_instance(
|
|
182
|
+
self,
|
|
183
|
+
) -> typing.Optional[_aws_cdk_aws_rds_ceddda9d.IDatabaseInstance]:
|
|
175
184
|
'''(experimental) Database instance to snapshot and sanitize.
|
|
176
185
|
|
|
177
186
|
Only one of ``databaseCluster`` and ``databaseInstance`` can be specified.
|
|
@@ -180,16 +189,16 @@ class IRdsSanitizedSnapshotter(typing_extensions.Protocol):
|
|
|
180
189
|
'''
|
|
181
190
|
...
|
|
182
191
|
|
|
183
|
-
@builtins.property
|
|
192
|
+
@builtins.property
|
|
184
193
|
@jsii.member(jsii_name="databaseKey")
|
|
185
|
-
def database_key(self) -> typing.Optional[
|
|
194
|
+
def database_key(self) -> typing.Optional[_aws_cdk_aws_kms_ceddda9d.IKey]:
|
|
186
195
|
'''(experimental) KMS key used to encrypt original database, if any.
|
|
187
196
|
|
|
188
197
|
:stability: experimental
|
|
189
198
|
'''
|
|
190
199
|
...
|
|
191
200
|
|
|
192
|
-
@builtins.property
|
|
201
|
+
@builtins.property
|
|
193
202
|
@jsii.member(jsii_name="databaseName")
|
|
194
203
|
def database_name(self) -> typing.Optional[builtins.str]:
|
|
195
204
|
'''(experimental) Name of database to connect to inside the RDS cluster or instance.
|
|
@@ -202,9 +211,9 @@ class IRdsSanitizedSnapshotter(typing_extensions.Protocol):
|
|
|
202
211
|
'''
|
|
203
212
|
...
|
|
204
213
|
|
|
205
|
-
@builtins.property
|
|
214
|
+
@builtins.property
|
|
206
215
|
@jsii.member(jsii_name="dbSubnets")
|
|
207
|
-
def db_subnets(self) -> typing.Optional[
|
|
216
|
+
def db_subnets(self) -> typing.Optional[_aws_cdk_aws_ec2_ceddda9d.SubnetSelection]:
|
|
208
217
|
'''(experimental) VPC subnets to use for temporary databases.
|
|
209
218
|
|
|
210
219
|
:default: ec2.SubnetType.PRIVATE_ISOLATED
|
|
@@ -213,9 +222,9 @@ class IRdsSanitizedSnapshotter(typing_extensions.Protocol):
|
|
|
213
222
|
'''
|
|
214
223
|
...
|
|
215
224
|
|
|
216
|
-
@builtins.property
|
|
225
|
+
@builtins.property
|
|
217
226
|
@jsii.member(jsii_name="fargateCluster")
|
|
218
|
-
def fargate_cluster(self) -> typing.Optional[
|
|
227
|
+
def fargate_cluster(self) -> typing.Optional[_aws_cdk_aws_ecs_ceddda9d.ICluster]:
|
|
219
228
|
'''(experimental) Cluster where sanitization task will be executed.
|
|
220
229
|
|
|
221
230
|
:default: a new cluster running on given VPC
|
|
@@ -224,27 +233,29 @@ class IRdsSanitizedSnapshotter(typing_extensions.Protocol):
|
|
|
224
233
|
'''
|
|
225
234
|
...
|
|
226
235
|
|
|
227
|
-
@builtins.property
|
|
236
|
+
@builtins.property
|
|
228
237
|
@jsii.member(jsii_name="sanitizeSubnets")
|
|
229
|
-
def sanitize_subnets(
|
|
238
|
+
def sanitize_subnets(
|
|
239
|
+
self,
|
|
240
|
+
) -> typing.Optional[_aws_cdk_aws_ec2_ceddda9d.SubnetSelection]:
|
|
230
241
|
'''(experimental) VPC subnets to use for sanitization task.
|
|
231
242
|
|
|
232
|
-
:default: ec2.SubnetType.
|
|
243
|
+
:default: ec2.SubnetType.PRIVATE_WITH_EGRESS
|
|
233
244
|
|
|
234
245
|
:stability: experimental
|
|
235
246
|
'''
|
|
236
247
|
...
|
|
237
248
|
|
|
238
|
-
@builtins.property
|
|
249
|
+
@builtins.property
|
|
239
250
|
@jsii.member(jsii_name="schedule")
|
|
240
|
-
def schedule(self) -> typing.Optional[
|
|
251
|
+
def schedule(self) -> typing.Optional[_aws_cdk_aws_events_ceddda9d.Schedule]:
|
|
241
252
|
'''(experimental) The schedule or rate (frequency) that determines when the sanitized snapshot runs automatically.
|
|
242
253
|
|
|
243
254
|
:stability: experimental
|
|
244
255
|
'''
|
|
245
256
|
...
|
|
246
257
|
|
|
247
|
-
@builtins.property
|
|
258
|
+
@builtins.property
|
|
248
259
|
@jsii.member(jsii_name="shareAccounts")
|
|
249
260
|
def share_accounts(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
250
261
|
'''(experimental) List of accounts the sanitized snapshot should be shared with.
|
|
@@ -253,7 +264,7 @@ class IRdsSanitizedSnapshotter(typing_extensions.Protocol):
|
|
|
253
264
|
'''
|
|
254
265
|
...
|
|
255
266
|
|
|
256
|
-
@builtins.property
|
|
267
|
+
@builtins.property
|
|
257
268
|
@jsii.member(jsii_name="snapshotHistoryLimit")
|
|
258
269
|
def snapshot_history_limit(self) -> typing.Optional[jsii.Number]:
|
|
259
270
|
'''(experimental) Limit the number of snapshot history.
|
|
@@ -264,16 +275,16 @@ class IRdsSanitizedSnapshotter(typing_extensions.Protocol):
|
|
|
264
275
|
'''
|
|
265
276
|
...
|
|
266
277
|
|
|
267
|
-
@builtins.property
|
|
278
|
+
@builtins.property
|
|
268
279
|
@jsii.member(jsii_name="snapshotKey")
|
|
269
|
-
def snapshot_key(self) -> typing.Optional[
|
|
280
|
+
def snapshot_key(self) -> typing.Optional[_aws_cdk_aws_kms_ceddda9d.IKey]:
|
|
270
281
|
'''(experimental) Optional KMS key to encrypt target snapshot.
|
|
271
282
|
|
|
272
283
|
:stability: experimental
|
|
273
284
|
'''
|
|
274
285
|
...
|
|
275
286
|
|
|
276
|
-
@builtins.property
|
|
287
|
+
@builtins.property
|
|
277
288
|
@jsii.member(jsii_name="snapshotPrefix")
|
|
278
289
|
def snapshot_prefix(self) -> typing.Optional[builtins.str]:
|
|
279
290
|
'''(experimental) Prefix for sanitized snapshot name.
|
|
@@ -286,7 +297,7 @@ class IRdsSanitizedSnapshotter(typing_extensions.Protocol):
|
|
|
286
297
|
'''
|
|
287
298
|
...
|
|
288
299
|
|
|
289
|
-
@builtins.property
|
|
300
|
+
@builtins.property
|
|
290
301
|
@jsii.member(jsii_name="tempPrefix")
|
|
291
302
|
def temp_prefix(self) -> typing.Optional[builtins.str]:
|
|
292
303
|
'''(experimental) Prefix for all temporary snapshots and databases.
|
|
@@ -307,7 +318,7 @@ class _IRdsSanitizedSnapshotterProxy:
|
|
|
307
318
|
|
|
308
319
|
__jsii_type__: typing.ClassVar[str] = "@cloudsnorkel/cdk-rds-sanitized-snapshots.IRdsSanitizedSnapshotter"
|
|
309
320
|
|
|
310
|
-
@builtins.property
|
|
321
|
+
@builtins.property
|
|
311
322
|
@jsii.member(jsii_name="script")
|
|
312
323
|
def script(self) -> builtins.str:
|
|
313
324
|
'''(experimental) SQL script used to sanitize the database. It will be executed against the temporary database.
|
|
@@ -318,47 +329,51 @@ class _IRdsSanitizedSnapshotterProxy:
|
|
|
318
329
|
'''
|
|
319
330
|
return typing.cast(builtins.str, jsii.get(self, "script"))
|
|
320
331
|
|
|
321
|
-
@builtins.property
|
|
332
|
+
@builtins.property
|
|
322
333
|
@jsii.member(jsii_name="vpc")
|
|
323
|
-
def vpc(self) ->
|
|
334
|
+
def vpc(self) -> _aws_cdk_aws_ec2_ceddda9d.IVpc:
|
|
324
335
|
'''(experimental) VPC where temporary database and sanitizing task will be created.
|
|
325
336
|
|
|
326
337
|
:stability: experimental
|
|
327
338
|
'''
|
|
328
|
-
return typing.cast(
|
|
339
|
+
return typing.cast(_aws_cdk_aws_ec2_ceddda9d.IVpc, jsii.get(self, "vpc"))
|
|
329
340
|
|
|
330
|
-
@builtins.property
|
|
341
|
+
@builtins.property
|
|
331
342
|
@jsii.member(jsii_name="databaseCluster")
|
|
332
|
-
def database_cluster(
|
|
343
|
+
def database_cluster(
|
|
344
|
+
self,
|
|
345
|
+
) -> typing.Optional[_aws_cdk_aws_rds_ceddda9d.IDatabaseCluster]:
|
|
333
346
|
'''(experimental) Database cluster to snapshot and sanitize.
|
|
334
347
|
|
|
335
348
|
Only one of ``databaseCluster`` and ``databaseInstance`` can be specified.
|
|
336
349
|
|
|
337
350
|
:stability: experimental
|
|
338
351
|
'''
|
|
339
|
-
return typing.cast(typing.Optional[
|
|
352
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_rds_ceddda9d.IDatabaseCluster], jsii.get(self, "databaseCluster"))
|
|
340
353
|
|
|
341
|
-
@builtins.property
|
|
354
|
+
@builtins.property
|
|
342
355
|
@jsii.member(jsii_name="databaseInstance")
|
|
343
|
-
def database_instance(
|
|
356
|
+
def database_instance(
|
|
357
|
+
self,
|
|
358
|
+
) -> typing.Optional[_aws_cdk_aws_rds_ceddda9d.IDatabaseInstance]:
|
|
344
359
|
'''(experimental) Database instance to snapshot and sanitize.
|
|
345
360
|
|
|
346
361
|
Only one of ``databaseCluster`` and ``databaseInstance`` can be specified.
|
|
347
362
|
|
|
348
363
|
:stability: experimental
|
|
349
364
|
'''
|
|
350
|
-
return typing.cast(typing.Optional[
|
|
365
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_rds_ceddda9d.IDatabaseInstance], jsii.get(self, "databaseInstance"))
|
|
351
366
|
|
|
352
|
-
@builtins.property
|
|
367
|
+
@builtins.property
|
|
353
368
|
@jsii.member(jsii_name="databaseKey")
|
|
354
|
-
def database_key(self) -> typing.Optional[
|
|
369
|
+
def database_key(self) -> typing.Optional[_aws_cdk_aws_kms_ceddda9d.IKey]:
|
|
355
370
|
'''(experimental) KMS key used to encrypt original database, if any.
|
|
356
371
|
|
|
357
372
|
:stability: experimental
|
|
358
373
|
'''
|
|
359
|
-
return typing.cast(typing.Optional[
|
|
374
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_kms_ceddda9d.IKey], jsii.get(self, "databaseKey"))
|
|
360
375
|
|
|
361
|
-
@builtins.property
|
|
376
|
+
@builtins.property
|
|
362
377
|
@jsii.member(jsii_name="databaseName")
|
|
363
378
|
def database_name(self) -> typing.Optional[builtins.str]:
|
|
364
379
|
'''(experimental) Name of database to connect to inside the RDS cluster or instance.
|
|
@@ -371,49 +386,51 @@ class _IRdsSanitizedSnapshotterProxy:
|
|
|
371
386
|
'''
|
|
372
387
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "databaseName"))
|
|
373
388
|
|
|
374
|
-
@builtins.property
|
|
389
|
+
@builtins.property
|
|
375
390
|
@jsii.member(jsii_name="dbSubnets")
|
|
376
|
-
def db_subnets(self) -> typing.Optional[
|
|
391
|
+
def db_subnets(self) -> typing.Optional[_aws_cdk_aws_ec2_ceddda9d.SubnetSelection]:
|
|
377
392
|
'''(experimental) VPC subnets to use for temporary databases.
|
|
378
393
|
|
|
379
394
|
:default: ec2.SubnetType.PRIVATE_ISOLATED
|
|
380
395
|
|
|
381
396
|
:stability: experimental
|
|
382
397
|
'''
|
|
383
|
-
return typing.cast(typing.Optional[
|
|
398
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_ec2_ceddda9d.SubnetSelection], jsii.get(self, "dbSubnets"))
|
|
384
399
|
|
|
385
|
-
@builtins.property
|
|
400
|
+
@builtins.property
|
|
386
401
|
@jsii.member(jsii_name="fargateCluster")
|
|
387
|
-
def fargate_cluster(self) -> typing.Optional[
|
|
402
|
+
def fargate_cluster(self) -> typing.Optional[_aws_cdk_aws_ecs_ceddda9d.ICluster]:
|
|
388
403
|
'''(experimental) Cluster where sanitization task will be executed.
|
|
389
404
|
|
|
390
405
|
:default: a new cluster running on given VPC
|
|
391
406
|
|
|
392
407
|
:stability: experimental
|
|
393
408
|
'''
|
|
394
|
-
return typing.cast(typing.Optional[
|
|
409
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_ecs_ceddda9d.ICluster], jsii.get(self, "fargateCluster"))
|
|
395
410
|
|
|
396
|
-
@builtins.property
|
|
411
|
+
@builtins.property
|
|
397
412
|
@jsii.member(jsii_name="sanitizeSubnets")
|
|
398
|
-
def sanitize_subnets(
|
|
413
|
+
def sanitize_subnets(
|
|
414
|
+
self,
|
|
415
|
+
) -> typing.Optional[_aws_cdk_aws_ec2_ceddda9d.SubnetSelection]:
|
|
399
416
|
'''(experimental) VPC subnets to use for sanitization task.
|
|
400
417
|
|
|
401
|
-
:default: ec2.SubnetType.
|
|
418
|
+
:default: ec2.SubnetType.PRIVATE_WITH_EGRESS
|
|
402
419
|
|
|
403
420
|
:stability: experimental
|
|
404
421
|
'''
|
|
405
|
-
return typing.cast(typing.Optional[
|
|
422
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_ec2_ceddda9d.SubnetSelection], jsii.get(self, "sanitizeSubnets"))
|
|
406
423
|
|
|
407
|
-
@builtins.property
|
|
424
|
+
@builtins.property
|
|
408
425
|
@jsii.member(jsii_name="schedule")
|
|
409
|
-
def schedule(self) -> typing.Optional[
|
|
426
|
+
def schedule(self) -> typing.Optional[_aws_cdk_aws_events_ceddda9d.Schedule]:
|
|
410
427
|
'''(experimental) The schedule or rate (frequency) that determines when the sanitized snapshot runs automatically.
|
|
411
428
|
|
|
412
429
|
:stability: experimental
|
|
413
430
|
'''
|
|
414
|
-
return typing.cast(typing.Optional[
|
|
431
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_events_ceddda9d.Schedule], jsii.get(self, "schedule"))
|
|
415
432
|
|
|
416
|
-
@builtins.property
|
|
433
|
+
@builtins.property
|
|
417
434
|
@jsii.member(jsii_name="shareAccounts")
|
|
418
435
|
def share_accounts(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
419
436
|
'''(experimental) List of accounts the sanitized snapshot should be shared with.
|
|
@@ -422,7 +439,7 @@ class _IRdsSanitizedSnapshotterProxy:
|
|
|
422
439
|
'''
|
|
423
440
|
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "shareAccounts"))
|
|
424
441
|
|
|
425
|
-
@builtins.property
|
|
442
|
+
@builtins.property
|
|
426
443
|
@jsii.member(jsii_name="snapshotHistoryLimit")
|
|
427
444
|
def snapshot_history_limit(self) -> typing.Optional[jsii.Number]:
|
|
428
445
|
'''(experimental) Limit the number of snapshot history.
|
|
@@ -433,16 +450,16 @@ class _IRdsSanitizedSnapshotterProxy:
|
|
|
433
450
|
'''
|
|
434
451
|
return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "snapshotHistoryLimit"))
|
|
435
452
|
|
|
436
|
-
@builtins.property
|
|
453
|
+
@builtins.property
|
|
437
454
|
@jsii.member(jsii_name="snapshotKey")
|
|
438
|
-
def snapshot_key(self) -> typing.Optional[
|
|
455
|
+
def snapshot_key(self) -> typing.Optional[_aws_cdk_aws_kms_ceddda9d.IKey]:
|
|
439
456
|
'''(experimental) Optional KMS key to encrypt target snapshot.
|
|
440
457
|
|
|
441
458
|
:stability: experimental
|
|
442
459
|
'''
|
|
443
|
-
return typing.cast(typing.Optional[
|
|
460
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_kms_ceddda9d.IKey], jsii.get(self, "snapshotKey"))
|
|
444
461
|
|
|
445
|
-
@builtins.property
|
|
462
|
+
@builtins.property
|
|
446
463
|
@jsii.member(jsii_name="snapshotPrefix")
|
|
447
464
|
def snapshot_prefix(self) -> typing.Optional[builtins.str]:
|
|
448
465
|
'''(experimental) Prefix for sanitized snapshot name.
|
|
@@ -455,7 +472,7 @@ class _IRdsSanitizedSnapshotterProxy:
|
|
|
455
472
|
'''
|
|
456
473
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "snapshotPrefix"))
|
|
457
474
|
|
|
458
|
-
@builtins.property
|
|
475
|
+
@builtins.property
|
|
459
476
|
@jsii.member(jsii_name="tempPrefix")
|
|
460
477
|
def temp_prefix(self) -> typing.Optional[builtins.str]:
|
|
461
478
|
'''(experimental) Prefix for all temporary snapshots and databases.
|
|
@@ -473,7 +490,7 @@ typing.cast(typing.Any, IRdsSanitizedSnapshotter).__jsii_proxy_class__ = lambda
|
|
|
473
490
|
|
|
474
491
|
|
|
475
492
|
class RdsSanitizedSnapshotter(
|
|
476
|
-
|
|
493
|
+
_constructs_77d1e7e8.Construct,
|
|
477
494
|
metaclass=jsii.JSIIMeta,
|
|
478
495
|
jsii_type="@cloudsnorkel/cdk-rds-sanitized-snapshots.RdsSanitizedSnapshotter",
|
|
479
496
|
):
|
|
@@ -493,7 +510,7 @@ class RdsSanitizedSnapshotter(
|
|
|
493
510
|
|
|
494
511
|
def __init__(
|
|
495
512
|
self,
|
|
496
|
-
scope:
|
|
513
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
497
514
|
id: builtins.str,
|
|
498
515
|
props: IRdsSanitizedSnapshotter,
|
|
499
516
|
) -> None:
|
|
@@ -504,9 +521,14 @@ class RdsSanitizedSnapshotter(
|
|
|
504
521
|
|
|
505
522
|
:stability: experimental
|
|
506
523
|
'''
|
|
524
|
+
if __debug__:
|
|
525
|
+
type_hints = typing.get_type_hints(_typecheckingstub__1e15c41233acb14f8259c09345be1563a5d61c80585cf7e3c29c90b00f3e5879)
|
|
526
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
527
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
528
|
+
check_type(argname="argument props", value=props, expected_type=type_hints["props"])
|
|
507
529
|
jsii.create(self.__class__, self, [scope, id, props])
|
|
508
530
|
|
|
509
|
-
@builtins.property
|
|
531
|
+
@builtins.property
|
|
510
532
|
@jsii.member(jsii_name="props")
|
|
511
533
|
def props(self) -> IRdsSanitizedSnapshotter:
|
|
512
534
|
'''
|
|
@@ -514,19 +536,25 @@ class RdsSanitizedSnapshotter(
|
|
|
514
536
|
'''
|
|
515
537
|
return typing.cast(IRdsSanitizedSnapshotter, jsii.get(self, "props"))
|
|
516
538
|
|
|
517
|
-
@builtins.property
|
|
539
|
+
@builtins.property
|
|
518
540
|
@jsii.member(jsii_name="snapshotter")
|
|
519
|
-
def snapshotter(self) ->
|
|
541
|
+
def snapshotter(self) -> _aws_cdk_aws_stepfunctions_ceddda9d.StateMachine:
|
|
520
542
|
'''(experimental) Step function in charge of the entire process including snapshotting, sanitizing, and cleanup.
|
|
521
543
|
|
|
522
544
|
Trigger this step function to get a new snapshot.
|
|
523
545
|
|
|
524
546
|
:stability: experimental
|
|
525
547
|
'''
|
|
526
|
-
return typing.cast(
|
|
548
|
+
return typing.cast(_aws_cdk_aws_stepfunctions_ceddda9d.StateMachine, jsii.get(self, "snapshotter"))
|
|
527
549
|
|
|
528
550
|
@snapshotter.setter
|
|
529
|
-
def snapshotter(
|
|
551
|
+
def snapshotter(
|
|
552
|
+
self,
|
|
553
|
+
value: _aws_cdk_aws_stepfunctions_ceddda9d.StateMachine,
|
|
554
|
+
) -> None:
|
|
555
|
+
if __debug__:
|
|
556
|
+
type_hints = typing.get_type_hints(_typecheckingstub__df51411713b297623720935bb6779afc65503804a74afed6b48f5754baba7f14)
|
|
557
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
530
558
|
jsii.set(self, "snapshotter", value)
|
|
531
559
|
|
|
532
560
|
|
|
@@ -536,3 +564,17 @@ __all__ = [
|
|
|
536
564
|
]
|
|
537
565
|
|
|
538
566
|
publication.publish()
|
|
567
|
+
|
|
568
|
+
def _typecheckingstub__1e15c41233acb14f8259c09345be1563a5d61c80585cf7e3c29c90b00f3e5879(
|
|
569
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
570
|
+
id: builtins.str,
|
|
571
|
+
props: IRdsSanitizedSnapshotter,
|
|
572
|
+
) -> None:
|
|
573
|
+
"""Type checking stubs"""
|
|
574
|
+
pass
|
|
575
|
+
|
|
576
|
+
def _typecheckingstub__df51411713b297623720935bb6779afc65503804a74afed6b48f5754baba7f14(
|
|
577
|
+
value: _aws_cdk_aws_stepfunctions_ceddda9d.StateMachine,
|
|
578
|
+
) -> None:
|
|
579
|
+
"""Type checking stubs"""
|
|
580
|
+
pass
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
from pkgutil import extend_path
|
|
2
|
+
__path__ = extend_path(__path__, __name__)
|
|
3
|
+
|
|
1
4
|
import abc
|
|
2
5
|
import builtins
|
|
3
6
|
import datetime
|
|
@@ -8,14 +11,16 @@ import jsii
|
|
|
8
11
|
import publication
|
|
9
12
|
import typing_extensions
|
|
10
13
|
|
|
14
|
+
from typeguard import check_type
|
|
15
|
+
|
|
11
16
|
import aws_cdk._jsii
|
|
12
17
|
import constructs._jsii
|
|
13
18
|
|
|
14
19
|
__jsii_assembly__ = jsii.JSIIAssembly.load(
|
|
15
20
|
"@cloudsnorkel/cdk-rds-sanitized-snapshots",
|
|
16
|
-
"0.
|
|
21
|
+
"0.1.1",
|
|
17
22
|
__name__[0:-6],
|
|
18
|
-
"cdk-rds-sanitized-snapshots@0.
|
|
23
|
+
"cdk-rds-sanitized-snapshots@0.1.1.jsii.tgz",
|
|
19
24
|
)
|
|
20
25
|
|
|
21
26
|
__all__ = [
|
|
Binary file
|
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: cloudsnorkel.cdk-rds-sanitized-snapshots
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.1.1
|
|
4
4
|
Summary: CDK construct to periodically take snapshots of RDS databases, sanitize them, and share with selected accounts.
|
|
5
5
|
Home-page: https://github.com/CloudSnorkel/cdk-rds-sanitized-snapshots.git
|
|
6
6
|
Author: Amir Szekely<amir@cloudsnorkel.com>
|
|
7
7
|
License: Apache-2.0
|
|
8
8
|
Project-URL: Source, https://github.com/CloudSnorkel/cdk-rds-sanitized-snapshots.git
|
|
9
|
-
Platform: UNKNOWN
|
|
10
9
|
Classifier: Intended Audience :: Developers
|
|
11
10
|
Classifier: Operating System :: OS Independent
|
|
12
11
|
Classifier: Programming Language :: JavaScript
|
|
13
12
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
14
|
-
Classifier: Programming Language :: Python :: 3.7
|
|
15
13
|
Classifier: Programming Language :: Python :: 3.8
|
|
16
14
|
Classifier: Programming Language :: Python :: 3.9
|
|
17
15
|
Classifier: Programming Language :: Python :: 3.10
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
17
|
Classifier: Typing :: Typed
|
|
19
18
|
Classifier: Development Status :: 4 - Beta
|
|
20
19
|
Classifier: License :: OSI Approved
|
|
21
|
-
Requires-Python: ~=3.
|
|
20
|
+
Requires-Python: ~=3.8
|
|
22
21
|
Description-Content-Type: text/markdown
|
|
23
22
|
License-File: LICENSE
|
|
24
|
-
Requires-Dist: aws-cdk-lib
|
|
25
|
-
Requires-Dist: constructs
|
|
26
|
-
Requires-Dist: jsii
|
|
27
|
-
Requires-Dist: publication
|
|
23
|
+
Requires-Dist: aws-cdk-lib <3.0.0,>=2.85.0
|
|
24
|
+
Requires-Dist: constructs <11.0.0,>=10.0.5
|
|
25
|
+
Requires-Dist: jsii <2.0.0,>=1.97.0
|
|
26
|
+
Requires-Dist: publication >=0.0.3
|
|
27
|
+
Requires-Dist: typeguard ~=2.13.3
|
|
28
28
|
|
|
29
29
|
# CDK Construct for RDS Sanitized Snapshots
|
|
30
30
|
|
|
@@ -135,5 +135,3 @@ on giving other accounts access to the key.
|
|
|
135
135
|
```
|
|
136
136
|
npm run bundle && npm run integ:default:deploy
|
|
137
137
|
```
|
|
138
|
-
|
|
139
|
-
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
cloudsnorkel/cdk_rds_sanitized_snapshots/__init__.py,sha256=81Fb1dPEfBg4SRLDp5tD9NDS5GgfbSMeFKvfzq94Xfc,21369
|
|
2
|
+
cloudsnorkel/cdk_rds_sanitized_snapshots/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
3
|
+
cloudsnorkel/cdk_rds_sanitized_snapshots/_jsii/__init__.py,sha256=WF99Pef5fg1ISuHaIa_nmHINjfLgRb5KUnaAa4gGEZI,524
|
|
4
|
+
cloudsnorkel/cdk_rds_sanitized_snapshots/_jsii/cdk-rds-sanitized-snapshots@0.1.1.jsii.tgz,sha256=j2cUkVID_llqM_1Cd7_VZjWrEqK1OP1Jpz-yA_PXa9s,74630
|
|
5
|
+
cloudsnorkel.cdk_rds_sanitized_snapshots-0.1.1.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
|
|
6
|
+
cloudsnorkel.cdk_rds_sanitized_snapshots-0.1.1.dist-info/METADATA,sha256=8JVCHMSt4d491aj-uptO4wOwLoSVRrnCBZZ9IvgHtV4,6490
|
|
7
|
+
cloudsnorkel.cdk_rds_sanitized_snapshots-0.1.1.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
8
|
+
cloudsnorkel.cdk_rds_sanitized_snapshots-0.1.1.dist-info/top_level.txt,sha256=6vUrT-dcGOiRMT4Q6gEQPznoyS7nHOJ269MHpo4DEd8,13
|
|
9
|
+
cloudsnorkel.cdk_rds_sanitized_snapshots-0.1.1.dist-info/RECORD,,
|
|
Binary file
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
cloudsnorkel/cdk_rds_sanitized_snapshots/__init__.py,sha256=KZeAu7q69syXElfkq5wvoVBq5Z0TG4gs_uwKjpdK5N0,20151
|
|
2
|
-
cloudsnorkel/cdk_rds_sanitized_snapshots/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
3
|
-
cloudsnorkel/cdk_rds_sanitized_snapshots/_jsii/__init__.py,sha256=PbYkAPYawnr9NpqoRGdDMQbFGZhwVw458yHPLROZw38,414
|
|
4
|
-
cloudsnorkel/cdk_rds_sanitized_snapshots/_jsii/cdk-rds-sanitized-snapshots@0.0.3.jsii.tgz,sha256=OtNMoZtUUA_1PlkILXljaNUeTJpI6dI0115y_Zstd-8,72564
|
|
5
|
-
cloudsnorkel.cdk_rds_sanitized_snapshots-0.0.3.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
|
|
6
|
-
cloudsnorkel.cdk_rds_sanitized_snapshots-0.0.3.dist-info/METADATA,sha256=Lm0TkLUKksxGJxsM_DLR7We4leyumB9MjOe8_8z1LHE,6482
|
|
7
|
-
cloudsnorkel.cdk_rds_sanitized_snapshots-0.0.3.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
|
|
8
|
-
cloudsnorkel.cdk_rds_sanitized_snapshots-0.0.3.dist-info/top_level.txt,sha256=6vUrT-dcGOiRMT4Q6gEQPznoyS7nHOJ269MHpo4DEd8,13
|
|
9
|
-
cloudsnorkel.cdk_rds_sanitized_snapshots-0.0.3.dist-info/RECORD,,
|
|
File without changes
|