aws-cdk 2.19.0 → 2.21.1
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.
- package/README.md +59 -11
- package/THIRD_PARTY_LICENSES +8 -28
- package/build-info.json +2 -2
- package/does-not-exist.json +1 -1
- package/lib/api/aws-auth/account-cache.d.ts +1 -1
- package/lib/api/aws-auth/account-cache.js +2 -2
- package/lib/api/bootstrap/bootstrap-template.yaml +3 -1
- package/lib/api/cloudformation-deployments.d.ts +12 -1
- package/lib/api/cloudformation-deployments.js +31 -8
- package/lib/api/deploy-stack.d.ts +24 -0
- package/lib/api/deploy-stack.js +46 -8
- package/lib/api/evaluate-cloudformation-template.js +3 -2
- package/lib/api/hotswap/common.js +2 -2
- package/lib/api/util/cloudformation/stack-activity-monitor.d.ts +5 -0
- package/lib/api/util/cloudformation/stack-activity-monitor.js +24 -7
- package/lib/api/util/cloudformation/stack-status.js +2 -2
- package/lib/api/util/cloudformation.d.ts +3 -0
- package/lib/api/util/cloudformation.js +1 -1
- package/lib/api/util/display.d.ts +3 -0
- package/lib/api/util/display.js +23 -15
- package/lib/cdk-toolkit.d.ts +44 -21
- package/lib/cdk-toolkit.js +68 -1
- package/lib/cli.js +47 -5
- package/lib/commands/doctor.js +2 -2
- package/lib/import.d.ts +151 -0
- package/lib/import.js +245 -0
- package/lib/index.js +10499 -6069
- package/lib/init-templates/v1/app/csharp/README.md +1 -1
- package/lib/init-templates/v1/app/fsharp/README.md +1 -1
- package/lib/init-templates/v1/app/go/README.md +1 -1
- package/lib/init-templates/v1/app/java/README.md +1 -1
- package/lib/init-templates/v1/app/javascript/README.md +1 -1
- package/lib/init-templates/v1/app/python/README.template.md +1 -1
- package/lib/init-templates/v1/app/typescript/README.md +1 -1
- package/lib/init-templates/v2/app/csharp/README.md +1 -1
- package/lib/init-templates/v2/app/fsharp/README.md +1 -1
- package/lib/init-templates/v2/app/go/README.md +1 -1
- package/lib/init-templates/v2/app/java/README.md +1 -1
- package/lib/init-templates/v2/app/javascript/README.md +1 -1
- package/lib/init-templates/v2/app/python/README.template.md +1 -1
- package/lib/init-templates/v2/app/typescript/README.md +1 -1
- package/lib/notices.d.ts +1 -0
- package/lib/notices.js +43 -21
- package/lib/settings.js +3 -2
- package/lib/util/asset-publishing.d.ts +7 -1
- package/lib/util/asset-publishing.js +13 -6
- package/lib/version.js +2 -2
- package/package.json +12 -12
- package/test/api/hotswap/state-machine-hotswap-deployments.test.js +75 -1
- package/test/api/util/display.test.d.ts +1 -0
- package/test/api/util/display.test.js +54 -0
- package/test/bockfs.js +2 -2
- package/test/cdk-toolkit.test.js +4 -2
- package/test/import.test.d.ts +1 -0
- package/test/import.test.js +189 -0
- package/test/integ/cli/app/app.js +25 -0
- package/test/integ/cli/app/docker/Dockerfile +1 -1
- package/test/integ/cli/app/docker/Dockerfile.Custom +1 -1
- package/test/integ/cli/cli.integtest.js +33 -1
- package/test/integ/cli-regression-patches/v1.64.0/cdk-helpers.js +1 -1
- package/test/integ/cli-regression-patches/v1.64.1/cdk-helpers.js +1 -1
- package/test/integ/cli-regression-patches/v1.67.0/cdk-helpers.js +1 -1
- package/test/integ/helpers/cdk.js +4 -5
- package/test/integ/helpers/test-helpers.js +1 -3
- package/test/notices.test.js +35 -21
- package/test/settings.test.js +10 -1
- package/test/util/mock-sdk.d.ts +2 -0
- package/test/util/mock-sdk.js +8 -2
package/lib/api/util/display.js
CHANGED
|
@@ -11,24 +11,34 @@ class RewritableBlock {
|
|
|
11
11
|
constructor(stream) {
|
|
12
12
|
this.stream = stream;
|
|
13
13
|
this.lastHeight = 0;
|
|
14
|
+
this.trailingEmptyLines = 0;
|
|
14
15
|
}
|
|
15
16
|
get width() {
|
|
16
17
|
// Might get changed if the user resizes the terminal
|
|
17
18
|
return this.stream.columns;
|
|
18
19
|
}
|
|
20
|
+
get height() {
|
|
21
|
+
// Might get changed if the user resizes the terminal
|
|
22
|
+
return this.stream.rows;
|
|
23
|
+
}
|
|
19
24
|
displayLines(lines) {
|
|
20
25
|
lines = terminalWrap(this.width, expandNewlines(lines));
|
|
26
|
+
lines = lines.slice(0, getMaxBlockHeight(this.height, this.lastHeight, lines));
|
|
21
27
|
this.stream.write(cursorUp(this.lastHeight));
|
|
22
28
|
for (const line of lines) {
|
|
23
29
|
this.stream.write(cll() + line + '\n');
|
|
24
30
|
}
|
|
31
|
+
this.trailingEmptyLines = Math.max(0, this.lastHeight - lines.length);
|
|
25
32
|
// Clear remainder of unwritten lines
|
|
26
|
-
for (let i = 0; i < this.
|
|
33
|
+
for (let i = 0; i < this.trailingEmptyLines; i++) {
|
|
27
34
|
this.stream.write(cll() + '\n');
|
|
28
35
|
}
|
|
29
36
|
// The block can only ever get bigger
|
|
30
37
|
this.lastHeight = Math.max(this.lastHeight, lines.length);
|
|
31
38
|
}
|
|
39
|
+
removeEmptyLines() {
|
|
40
|
+
this.stream.write(cursorUp(this.trailingEmptyLines));
|
|
41
|
+
}
|
|
32
42
|
}
|
|
33
43
|
exports.RewritableBlock = RewritableBlock;
|
|
34
44
|
const ESC = '\u001b';
|
|
@@ -49,24 +59,22 @@ function terminalWrap(width, lines) {
|
|
|
49
59
|
if (width === undefined) {
|
|
50
60
|
return lines;
|
|
51
61
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
wordWrap: false,
|
|
58
|
-
}).split('\n'));
|
|
59
|
-
}
|
|
60
|
-
return ret;
|
|
62
|
+
return lines.flatMap(line => wrapAnsi(line, width - 1, {
|
|
63
|
+
hard: true,
|
|
64
|
+
trim: true,
|
|
65
|
+
wordWrap: false,
|
|
66
|
+
}).split('\n'));
|
|
61
67
|
}
|
|
62
68
|
/**
|
|
63
69
|
* Make sure there are no hidden newlines in the gin strings
|
|
64
70
|
*/
|
|
65
71
|
function expandNewlines(lines) {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
72
|
+
return lines.flatMap(line => line.split('\n'));
|
|
73
|
+
}
|
|
74
|
+
function getMaxBlockHeight(windowHeight, lastHeight, lines) {
|
|
75
|
+
if (windowHeight === undefined) {
|
|
76
|
+
return Math.max(lines.length, lastHeight);
|
|
69
77
|
}
|
|
70
|
-
return
|
|
78
|
+
return lines.length < windowHeight ? lines.length : windowHeight - 1;
|
|
71
79
|
}
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImRpc3BsYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUVBQXlFO0FBQ3pFLGlFQUFpRTtBQUNqRSxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7QUFFdEM7O0dBRUc7QUFDSCxNQUFhLGVBQWU7SUFJMUIsWUFBNkIsTUFBMEI7UUFBMUIsV0FBTSxHQUFOLE1BQU0sQ0FBb0I7UUFIL0MsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLHVCQUFrQixHQUFHLENBQUMsQ0FBQztJQUcvQixDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QscURBQXFEO1FBQ3JELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQVcsTUFBTTtRQUNmLHFEQUFxRDtRQUNyRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQzFCLENBQUM7SUFFTSxZQUFZLENBQUMsS0FBZTtRQUNqQyxLQUFLLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDeEQsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLGlCQUFpQixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRS9FLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUM3QyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRTtZQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUM7U0FDeEM7UUFFRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFdEUscUNBQXFDO1FBQ3JDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7U0FDakM7UUFFRCxxQ0FBcUM7UUFDckMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7SUFDdkQsQ0FBQztDQUNGO0FBeENELDBDQXdDQztBQUVELE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQztBQUVyQjs7R0FFRztBQUNILFNBQVMsUUFBUSxDQUFDLENBQVM7SUFDekIsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUMxQyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLEdBQUc7SUFDVixPQUFPLEdBQUcsR0FBRyxJQUFJLENBQUM7QUFDcEIsQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLEtBQXlCLEVBQUUsS0FBZTtJQUM5RCxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUU7UUFBRSxPQUFPLEtBQUssQ0FBQztLQUFFO0lBRTFDLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsS0FBSyxHQUFHLENBQUMsRUFBRTtRQUNyRCxJQUFJLEVBQUUsSUFBSTtRQUNWLElBQUksRUFBRSxJQUFJO1FBQ1YsUUFBUSxFQUFFLEtBQUs7S0FDaEIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ2xCLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQVMsY0FBYyxDQUFDLEtBQWU7SUFDckMsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ2pELENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLFlBQWdDLEVBQUUsVUFBa0IsRUFBRSxLQUFlO0lBQzlGLElBQUksWUFBWSxLQUFLLFNBQVMsRUFBRTtRQUFFLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0tBQUU7SUFDOUUsT0FBTyxLQUFLLENBQUMsTUFBTSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQztBQUN2RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gbmFtZXNwYWNlIG9iamVjdCBpbXBvcnRzIHdvbid0IHdvcmsgaW4gdGhlIGJ1bmRsZSBmb3IgZnVuY3Rpb24gZXhwb3J0c1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbmNvbnN0IHdyYXBBbnNpID0gcmVxdWlyZSgnd3JhcC1hbnNpJyk7XG5cbi8qKlxuICogQSBjbGFzcyByZXByZXNlbnRpbmcgcmV3cml0YWJsZSBkaXNwbGF5IGxpbmVzXG4gKi9cbmV4cG9ydCBjbGFzcyBSZXdyaXRhYmxlQmxvY2sge1xuICBwcml2YXRlIGxhc3RIZWlnaHQgPSAwO1xuICBwcml2YXRlIHRyYWlsaW5nRW1wdHlMaW5lcyA9IDA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzdHJlYW06IE5vZGVKUy5Xcml0ZVN0cmVhbSkge1xuICB9XG5cbiAgcHVibGljIGdldCB3aWR0aCgpIHtcbiAgICAvLyBNaWdodCBnZXQgY2hhbmdlZCBpZiB0aGUgdXNlciByZXNpemVzIHRoZSB0ZXJtaW5hbFxuICAgIHJldHVybiB0aGlzLnN0cmVhbS5jb2x1bW5zO1xuICB9XG5cbiAgcHVibGljIGdldCBoZWlnaHQoKSB7XG4gICAgLy8gTWlnaHQgZ2V0IGNoYW5nZWQgaWYgdGhlIHVzZXIgcmVzaXplcyB0aGUgdGVybWluYWxcbiAgICByZXR1cm4gdGhpcy5zdHJlYW0ucm93cztcbiAgfVxuXG4gIHB1YmxpYyBkaXNwbGF5TGluZXMobGluZXM6IHN0cmluZ1tdKSB7XG4gICAgbGluZXMgPSB0ZXJtaW5hbFdyYXAodGhpcy53aWR0aCwgZXhwYW5kTmV3bGluZXMobGluZXMpKTtcbiAgICBsaW5lcyA9IGxpbmVzLnNsaWNlKDAsIGdldE1heEJsb2NrSGVpZ2h0KHRoaXMuaGVpZ2h0LCB0aGlzLmxhc3RIZWlnaHQsIGxpbmVzKSk7XG5cbiAgICB0aGlzLnN0cmVhbS53cml0ZShjdXJzb3JVcCh0aGlzLmxhc3RIZWlnaHQpKTtcbiAgICBmb3IgKGNvbnN0IGxpbmUgb2YgbGluZXMpIHtcbiAgICAgIHRoaXMuc3RyZWFtLndyaXRlKGNsbCgpICsgbGluZSArICdcXG4nKTtcbiAgICB9XG5cbiAgICB0aGlzLnRyYWlsaW5nRW1wdHlMaW5lcyA9IE1hdGgubWF4KDAsIHRoaXMubGFzdEhlaWdodCAtIGxpbmVzLmxlbmd0aCk7XG5cbiAgICAvLyBDbGVhciByZW1haW5kZXIgb2YgdW53cml0dGVuIGxpbmVzXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnRyYWlsaW5nRW1wdHlMaW5lczsgaSsrKSB7XG4gICAgICB0aGlzLnN0cmVhbS53cml0ZShjbGwoKSArICdcXG4nKTtcbiAgICB9XG5cbiAgICAvLyBUaGUgYmxvY2sgY2FuIG9ubHkgZXZlciBnZXQgYmlnZ2VyXG4gICAgdGhpcy5sYXN0SGVpZ2h0ID0gTWF0aC5tYXgodGhpcy5sYXN0SGVpZ2h0LCBsaW5lcy5sZW5ndGgpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUVtcHR5TGluZXMoKSB7XG4gICAgdGhpcy5zdHJlYW0ud3JpdGUoY3Vyc29yVXAodGhpcy50cmFpbGluZ0VtcHR5TGluZXMpKTtcbiAgfVxufVxuXG5jb25zdCBFU0MgPSAnXFx1MDAxYic7XG5cbi8qXG4gKiBNb3ZlIGN1cnNvciB1cCBgbmAgbGluZXMuIERlZmF1bHQgaXMgMVxuICovXG5mdW5jdGlvbiBjdXJzb3JVcChuOiBudW1iZXIpIHtcbiAgbiA9IHR5cGVvZiBuID09PSAnbnVtYmVyJyA/IG4gOiAxO1xuICByZXR1cm4gbiA+IDAgPyBFU0MgKyAnWycgKyBuICsgJ0EnIDogJyc7XG59XG5cbi8qKlxuICogQ2xlYXIgdG8gZW5kIG9mIGxpbmVcbiAqL1xuZnVuY3Rpb24gY2xsKCkge1xuICByZXR1cm4gRVNDICsgJ1tLJztcbn1cblxuZnVuY3Rpb24gdGVybWluYWxXcmFwKHdpZHRoOiBudW1iZXIgfCB1bmRlZmluZWQsIGxpbmVzOiBzdHJpbmdbXSkge1xuICBpZiAod2lkdGggPT09IHVuZGVmaW5lZCkgeyByZXR1cm4gbGluZXM7IH1cblxuICByZXR1cm4gbGluZXMuZmxhdE1hcChsaW5lID0+IHdyYXBBbnNpKGxpbmUsIHdpZHRoIC0gMSwge1xuICAgIGhhcmQ6IHRydWUsXG4gICAgdHJpbTogdHJ1ZSxcbiAgICB3b3JkV3JhcDogZmFsc2UsXG4gIH0pLnNwbGl0KCdcXG4nKSk7XG59XG5cbi8qKlxuICogTWFrZSBzdXJlIHRoZXJlIGFyZSBubyBoaWRkZW4gbmV3bGluZXMgaW4gdGhlIGdpbiBzdHJpbmdzXG4gKi9cbmZ1bmN0aW9uIGV4cGFuZE5ld2xpbmVzKGxpbmVzOiBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgcmV0dXJuIGxpbmVzLmZsYXRNYXAobGluZSA9PiBsaW5lLnNwbGl0KCdcXG4nKSk7XG59XG5cbmZ1bmN0aW9uIGdldE1heEJsb2NrSGVpZ2h0KHdpbmRvd0hlaWdodDogbnVtYmVyIHwgdW5kZWZpbmVkLCBsYXN0SGVpZ2h0OiBudW1iZXIsIGxpbmVzOiBzdHJpbmdbXSk6IG51bWJlciB7XG4gIGlmICh3aW5kb3dIZWlnaHQgPT09IHVuZGVmaW5lZCkgeyByZXR1cm4gTWF0aC5tYXgobGluZXMubGVuZ3RoLCBsYXN0SGVpZ2h0KTsgfVxuICByZXR1cm4gbGluZXMubGVuZ3RoIDwgd2luZG93SGVpZ2h0ID8gbGluZXMubGVuZ3RoIDogd2luZG93SGVpZ2h0IC0gMTtcbn0iXX0=
|
package/lib/cdk-toolkit.d.ts
CHANGED
|
@@ -58,6 +58,7 @@ export declare class CdkToolkit {
|
|
|
58
58
|
diff(options: DiffOptions): Promise<number>;
|
|
59
59
|
deploy(options: DeployOptions): Promise<void>;
|
|
60
60
|
watch(options: WatchOptions): Promise<void>;
|
|
61
|
+
import(options: ImportOptions): Promise<void>;
|
|
61
62
|
destroy(options: DestroyOptions): Promise<void>;
|
|
62
63
|
list(selectors: string[], options?: {
|
|
63
64
|
long?: boolean;
|
|
@@ -150,17 +151,11 @@ export interface DiffOptions {
|
|
|
150
151
|
*/
|
|
151
152
|
securityOnly?: boolean;
|
|
152
153
|
}
|
|
153
|
-
interface
|
|
154
|
+
interface CfnDeployOptions {
|
|
154
155
|
/**
|
|
155
156
|
* Criteria for selecting stacks to deploy
|
|
156
157
|
*/
|
|
157
158
|
selector: StackSelector;
|
|
158
|
-
/**
|
|
159
|
-
* Only select the given stack
|
|
160
|
-
*
|
|
161
|
-
* @default false
|
|
162
|
-
*/
|
|
163
|
-
exclusively?: boolean;
|
|
164
159
|
/**
|
|
165
160
|
* Name of the toolkit stack to use/deploy
|
|
166
161
|
*
|
|
@@ -171,20 +166,17 @@ interface WatchOptions {
|
|
|
171
166
|
* Role to pass to CloudFormation for deployment
|
|
172
167
|
*/
|
|
173
168
|
roleArn?: string;
|
|
174
|
-
/**
|
|
175
|
-
* Reuse the assets with the given asset IDs
|
|
176
|
-
*/
|
|
177
|
-
reuseAssets?: string[];
|
|
178
169
|
/**
|
|
179
170
|
* Optional name to use for the CloudFormation change set.
|
|
180
171
|
* If not provided, a name will be generated automatically.
|
|
181
172
|
*/
|
|
182
173
|
changeSetName?: string;
|
|
183
174
|
/**
|
|
184
|
-
*
|
|
185
|
-
*
|
|
175
|
+
* Whether to execute the ChangeSet
|
|
176
|
+
* Not providing `execute` parameter will result in execution of ChangeSet
|
|
177
|
+
* @default true
|
|
186
178
|
*/
|
|
187
|
-
|
|
179
|
+
execute?: boolean;
|
|
188
180
|
/**
|
|
189
181
|
* Display mode for stack deployment progress.
|
|
190
182
|
*
|
|
@@ -198,6 +190,23 @@ interface WatchOptions {
|
|
|
198
190
|
* @default true
|
|
199
191
|
*/
|
|
200
192
|
readonly rollback?: boolean;
|
|
193
|
+
}
|
|
194
|
+
interface WatchOptions extends Omit<CfnDeployOptions, 'execute'> {
|
|
195
|
+
/**
|
|
196
|
+
* Only select the given stack
|
|
197
|
+
*
|
|
198
|
+
* @default false
|
|
199
|
+
*/
|
|
200
|
+
exclusively?: boolean;
|
|
201
|
+
/**
|
|
202
|
+
* Reuse the assets with the given asset IDs
|
|
203
|
+
*/
|
|
204
|
+
reuseAssets?: string[];
|
|
205
|
+
/**
|
|
206
|
+
* Always deploy, even if templates are identical.
|
|
207
|
+
* @default false
|
|
208
|
+
*/
|
|
209
|
+
force?: boolean;
|
|
201
210
|
/**
|
|
202
211
|
* Whether to perform a 'hotswap' deployment.
|
|
203
212
|
* A 'hotswap' deployment will attempt to short-circuit CloudFormation
|
|
@@ -220,7 +229,7 @@ interface WatchOptions {
|
|
|
220
229
|
*/
|
|
221
230
|
readonly traceLogs?: boolean;
|
|
222
231
|
}
|
|
223
|
-
export interface DeployOptions extends WatchOptions {
|
|
232
|
+
export interface DeployOptions extends CfnDeployOptions, WatchOptions {
|
|
224
233
|
/**
|
|
225
234
|
* ARNs of SNS topics that CloudFormation will notify with stack related events
|
|
226
235
|
*/
|
|
@@ -235,12 +244,6 @@ export interface DeployOptions extends WatchOptions {
|
|
|
235
244
|
* Tags to pass to CloudFormation for deployment
|
|
236
245
|
*/
|
|
237
246
|
tags?: Tag[];
|
|
238
|
-
/**
|
|
239
|
-
* Whether to execute the ChangeSet
|
|
240
|
-
* Not providing `execute` parameter will result in execution of ChangeSet
|
|
241
|
-
* @default true
|
|
242
|
-
*/
|
|
243
|
-
execute?: boolean;
|
|
244
247
|
/**
|
|
245
248
|
* Additional parameters for CloudFormation at deploy time
|
|
246
249
|
* @default {}
|
|
@@ -289,6 +292,26 @@ export interface DeployOptions extends WatchOptions {
|
|
|
289
292
|
*/
|
|
290
293
|
readonly cloudWatchLogMonitor?: CloudWatchLogEventMonitor;
|
|
291
294
|
}
|
|
295
|
+
export interface ImportOptions extends CfnDeployOptions {
|
|
296
|
+
/**
|
|
297
|
+
* Build a physical resource mapping and write it to the given file, without performing the actual import operation
|
|
298
|
+
*
|
|
299
|
+
* @default - No file
|
|
300
|
+
*/
|
|
301
|
+
readonly recordResourceMapping?: string;
|
|
302
|
+
/**
|
|
303
|
+
* Path to a file with with the physical resource mapping to CDK constructs in JSON format
|
|
304
|
+
*
|
|
305
|
+
* @default - No mapping file
|
|
306
|
+
*/
|
|
307
|
+
readonly resourceMappingFile?: string;
|
|
308
|
+
/**
|
|
309
|
+
* Allow non-addition changes to the template
|
|
310
|
+
*
|
|
311
|
+
* @default false
|
|
312
|
+
*/
|
|
313
|
+
readonly force?: boolean;
|
|
314
|
+
}
|
|
292
315
|
export interface DestroyOptions {
|
|
293
316
|
/**
|
|
294
317
|
* Criteria for selecting stacks to deploy
|