@cloudsnorkel/cdk-github-runners 0.12.2 → 0.12.4
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/.jsii +116 -20
- package/API.md +84 -1
- package/assets/delete-failed-runner.lambda/index.js +15 -6
- package/assets/idle-runner-repear.lambda/index.js +15 -6
- package/assets/image-builders/aws-image-builder/versioner.lambda/index.js +15 -6
- package/assets/setup.lambda/index.html +1 -1
- package/assets/status.lambda/index.js +15 -6
- package/assets/token-retriever.lambda/index.js +15 -6
- package/assets/webhook-handler.lambda/index.js +15 -6
- package/lib/access.js +1 -1
- package/lib/image-builders/api.js +1 -1
- package/lib/image-builders/aws-image-builder/builder.d.ts +39 -0
- package/lib/image-builders/aws-image-builder/builder.js +70 -8
- package/lib/image-builders/aws-image-builder/deprecated/ami.js +1 -1
- package/lib/image-builders/aws-image-builder/deprecated/container.js +1 -1
- package/lib/image-builders/aws-image-builder/deprecated/linux-components.js +1 -1
- package/lib/image-builders/aws-image-builder/deprecated/windows-components.js +1 -1
- package/lib/image-builders/codebuild-deprecated.js +1 -1
- package/lib/image-builders/codebuild.d.ts +1 -1
- package/lib/image-builders/codebuild.js +25 -3
- package/lib/image-builders/components.js +1 -1
- package/lib/image-builders/static.js +1 -1
- package/lib/providers/codebuild.js +2 -2
- package/lib/providers/common.js +3 -3
- package/lib/providers/ec2.js +2 -2
- package/lib/providers/ecs.js +1 -1
- package/lib/providers/fargate.js +2 -2
- package/lib/providers/lambda.js +2 -2
- package/lib/runner.js +1 -1
- package/lib/secrets.js +1 -1
- package/package.json +19 -19
|
@@ -5755,8 +5755,11 @@ var require_re = __commonJS({
|
|
|
5755
5755
|
createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`);
|
|
5756
5756
|
createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`);
|
|
5757
5757
|
createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`);
|
|
5758
|
-
createToken("
|
|
5758
|
+
createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`);
|
|
5759
|
+
createToken("COERCE", `${src[t.COERCEPLAIN]}(?:$|[^\\d])`);
|
|
5760
|
+
createToken("COERCEFULL", src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?(?:${src[t.BUILD]})?(?:$|[^\\d])`);
|
|
5759
5761
|
createToken("COERCERTL", src[t.COERCE], true);
|
|
5762
|
+
createToken("COERCERTLFULL", src[t.COERCEFULL], true);
|
|
5760
5763
|
createToken("LONETILDE", "(?:~>?)");
|
|
5761
5764
|
createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true);
|
|
5762
5765
|
exports2.tildeTrimReplace = "$1~";
|
|
@@ -6417,21 +6420,27 @@ var require_coerce = __commonJS({
|
|
|
6417
6420
|
options = options || {};
|
|
6418
6421
|
let match = null;
|
|
6419
6422
|
if (!options.rtl) {
|
|
6420
|
-
match = version.match(re[t.COERCE]);
|
|
6423
|
+
match = version.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
|
|
6421
6424
|
} else {
|
|
6425
|
+
const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL];
|
|
6422
6426
|
let next;
|
|
6423
|
-
while ((next =
|
|
6427
|
+
while ((next = coerceRtlRegex.exec(version)) && (!match || match.index + match[0].length !== version.length)) {
|
|
6424
6428
|
if (!match || next.index + next[0].length !== match.index + match[0].length) {
|
|
6425
6429
|
match = next;
|
|
6426
6430
|
}
|
|
6427
|
-
|
|
6431
|
+
coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
|
|
6428
6432
|
}
|
|
6429
|
-
|
|
6433
|
+
coerceRtlRegex.lastIndex = -1;
|
|
6430
6434
|
}
|
|
6431
6435
|
if (match === null) {
|
|
6432
6436
|
return null;
|
|
6433
6437
|
}
|
|
6434
|
-
|
|
6438
|
+
const major = match[2];
|
|
6439
|
+
const minor = match[3] || "0";
|
|
6440
|
+
const patch = match[4] || "0";
|
|
6441
|
+
const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "";
|
|
6442
|
+
const build = options.includePrerelease && match[6] ? `+${match[6]}` : "";
|
|
6443
|
+
return parse(`${major}.${minor}.${patch}${prerelease}${build}`, options);
|
|
6435
6444
|
};
|
|
6436
6445
|
module2.exports = coerce;
|
|
6437
6446
|
}
|
|
@@ -5755,8 +5755,11 @@ var require_re = __commonJS({
|
|
|
5755
5755
|
createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`);
|
|
5756
5756
|
createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`);
|
|
5757
5757
|
createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`);
|
|
5758
|
-
createToken("
|
|
5758
|
+
createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`);
|
|
5759
|
+
createToken("COERCE", `${src[t.COERCEPLAIN]}(?:$|[^\\d])`);
|
|
5760
|
+
createToken("COERCEFULL", src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?(?:${src[t.BUILD]})?(?:$|[^\\d])`);
|
|
5759
5761
|
createToken("COERCERTL", src[t.COERCE], true);
|
|
5762
|
+
createToken("COERCERTLFULL", src[t.COERCEFULL], true);
|
|
5760
5763
|
createToken("LONETILDE", "(?:~>?)");
|
|
5761
5764
|
createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true);
|
|
5762
5765
|
exports2.tildeTrimReplace = "$1~";
|
|
@@ -6417,21 +6420,27 @@ var require_coerce = __commonJS({
|
|
|
6417
6420
|
options = options || {};
|
|
6418
6421
|
let match = null;
|
|
6419
6422
|
if (!options.rtl) {
|
|
6420
|
-
match = version.match(re[t.COERCE]);
|
|
6423
|
+
match = version.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
|
|
6421
6424
|
} else {
|
|
6425
|
+
const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL];
|
|
6422
6426
|
let next;
|
|
6423
|
-
while ((next =
|
|
6427
|
+
while ((next = coerceRtlRegex.exec(version)) && (!match || match.index + match[0].length !== version.length)) {
|
|
6424
6428
|
if (!match || next.index + next[0].length !== match.index + match[0].length) {
|
|
6425
6429
|
match = next;
|
|
6426
6430
|
}
|
|
6427
|
-
|
|
6431
|
+
coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
|
|
6428
6432
|
}
|
|
6429
|
-
|
|
6433
|
+
coerceRtlRegex.lastIndex = -1;
|
|
6430
6434
|
}
|
|
6431
6435
|
if (match === null) {
|
|
6432
6436
|
return null;
|
|
6433
6437
|
}
|
|
6434
|
-
|
|
6438
|
+
const major = match[2];
|
|
6439
|
+
const minor = match[3] || "0";
|
|
6440
|
+
const patch = match[4] || "0";
|
|
6441
|
+
const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "";
|
|
6442
|
+
const build = options.includePrerelease && match[6] ? `+${match[6]}` : "";
|
|
6443
|
+
return parse(`${major}.${minor}.${patch}${prerelease}${build}`, options);
|
|
6435
6444
|
};
|
|
6436
6445
|
module2.exports = coerce;
|
|
6437
6446
|
}
|
|
@@ -5755,8 +5755,11 @@ var require_re = __commonJS({
|
|
|
5755
5755
|
createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`);
|
|
5756
5756
|
createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`);
|
|
5757
5757
|
createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`);
|
|
5758
|
-
createToken("
|
|
5758
|
+
createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`);
|
|
5759
|
+
createToken("COERCE", `${src[t.COERCEPLAIN]}(?:$|[^\\d])`);
|
|
5760
|
+
createToken("COERCEFULL", src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?(?:${src[t.BUILD]})?(?:$|[^\\d])`);
|
|
5759
5761
|
createToken("COERCERTL", src[t.COERCE], true);
|
|
5762
|
+
createToken("COERCERTLFULL", src[t.COERCEFULL], true);
|
|
5760
5763
|
createToken("LONETILDE", "(?:~>?)");
|
|
5761
5764
|
createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true);
|
|
5762
5765
|
exports2.tildeTrimReplace = "$1~";
|
|
@@ -6417,21 +6420,27 @@ var require_coerce = __commonJS({
|
|
|
6417
6420
|
options = options || {};
|
|
6418
6421
|
let match = null;
|
|
6419
6422
|
if (!options.rtl) {
|
|
6420
|
-
match = version.match(re[t.COERCE]);
|
|
6423
|
+
match = version.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
|
|
6421
6424
|
} else {
|
|
6425
|
+
const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL];
|
|
6422
6426
|
let next;
|
|
6423
|
-
while ((next =
|
|
6427
|
+
while ((next = coerceRtlRegex.exec(version)) && (!match || match.index + match[0].length !== version.length)) {
|
|
6424
6428
|
if (!match || next.index + next[0].length !== match.index + match[0].length) {
|
|
6425
6429
|
match = next;
|
|
6426
6430
|
}
|
|
6427
|
-
|
|
6431
|
+
coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
|
|
6428
6432
|
}
|
|
6429
|
-
|
|
6433
|
+
coerceRtlRegex.lastIndex = -1;
|
|
6430
6434
|
}
|
|
6431
6435
|
if (match === null) {
|
|
6432
6436
|
return null;
|
|
6433
6437
|
}
|
|
6434
|
-
|
|
6438
|
+
const major = match[2];
|
|
6439
|
+
const minor = match[3] || "0";
|
|
6440
|
+
const patch = match[4] || "0";
|
|
6441
|
+
const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "";
|
|
6442
|
+
const build = options.includePrerelease && match[6] ? `+${match[6]}` : "";
|
|
6443
|
+
return parse(`${major}.${minor}.${patch}${prerelease}${build}`, options);
|
|
6435
6444
|
};
|
|
6436
6445
|
module2.exports = coerce;
|
|
6437
6446
|
}
|
package/lib/access.js
CHANGED
|
@@ -59,7 +59,7 @@ class LambdaAccess {
|
|
|
59
59
|
}
|
|
60
60
|
exports.LambdaAccess = LambdaAccess;
|
|
61
61
|
_a = JSII_RTTI_SYMBOL_1;
|
|
62
|
-
LambdaAccess[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.LambdaAccess", version: "0.12.
|
|
62
|
+
LambdaAccess[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.LambdaAccess", version: "0.12.4" };
|
|
63
63
|
/**
|
|
64
64
|
* @internal
|
|
65
65
|
*/
|
|
@@ -43,5 +43,5 @@ class RunnerImageBuilder extends common_1.RunnerImageBuilderBase {
|
|
|
43
43
|
}
|
|
44
44
|
exports.RunnerImageBuilder = RunnerImageBuilder;
|
|
45
45
|
_a = JSII_RTTI_SYMBOL_1;
|
|
46
|
-
RunnerImageBuilder[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.RunnerImageBuilder", version: "0.12.
|
|
46
|
+
RunnerImageBuilder[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.RunnerImageBuilder", version: "0.12.4" };
|
|
47
47
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ltYWdlLWJ1aWxkZXJzL2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUEwQztBQUUxQywyREFBd0U7QUFDeEUsMkNBQTBEO0FBQzFELHFDQUFvSTtBQUNwSSw0Q0FBa0M7QUFFbEM7Ozs7OztHQU1HO0FBQ0gsTUFBc0Isa0JBQW1CLFNBQVEsK0JBQXNCO0lBQ3JFOztPQUVHO0lBQ0gsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUErQjtRQUN0RSxJQUFJLEtBQUssRUFBRSxVQUFVLElBQUksS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzdDLHlCQUFXLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFVBQVUsQ0FBQyxrSEFBa0gsQ0FBQyxDQUFDO1FBQ3ZKLENBQUM7UUFFRCxJQUFJLEtBQUssRUFBRSxXQUFXLEtBQUssK0JBQXNCLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDN0QsT0FBTyxJQUFJLHVDQUEyQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDM0QsQ0FBQzthQUFNLElBQUksS0FBSyxFQUFFLFdBQVcsS0FBSywrQkFBc0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzNFLE9BQU8sSUFBSSxxREFBaUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLENBQUM7UUFFRCxNQUFNLEVBQUUsR0FBRyxLQUFLLEVBQUUsRUFBRSxJQUFJLGNBQUUsQ0FBQyxZQUFZLENBQUM7UUFDeEMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7WUFDdEYsT0FBTyxJQUFJLHVDQUEyQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDM0QsQ0FBQzthQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUM3QixPQUFPLElBQUkscURBQWlDLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqRSxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMsMERBQTBELEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZGLENBQUM7SUFDSCxDQUFDOztBQXZCSCxnREF3QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbm5vdGF0aW9ucyB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQXdzSW1hZ2VCdWlsZGVyUnVubmVySW1hZ2VCdWlsZGVyIH0gZnJvbSAnLi9hd3MtaW1hZ2UtYnVpbGRlcic7XG5pbXBvcnQgeyBDb2RlQnVpbGRSdW5uZXJJbWFnZUJ1aWxkZXIgfSBmcm9tICcuL2NvZGVidWlsZCc7XG5pbXBvcnQgeyBJQ29uZmlndXJhYmxlUnVubmVySW1hZ2VCdWlsZGVyLCBSdW5uZXJJbWFnZUJ1aWxkZXJCYXNlLCBSdW5uZXJJbWFnZUJ1aWxkZXJQcm9wcywgUnVubmVySW1hZ2VCdWlsZGVyVHlwZSB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IE9zIH0gZnJvbSAnLi4vcHJvdmlkZXJzJztcblxuLyoqXG4gKiBHaXRIdWIgUnVubmVyIGltYWdlIGJ1aWxkZXIuIEJ1aWxkcyBhIERvY2tlciBpbWFnZSBvciBBTUkgd2l0aCBHaXRIdWIgUnVubmVyIGFuZCBvdGhlciByZXF1aXJlbWVudHMgaW5zdGFsbGVkLlxuICpcbiAqIEltYWdlcyBjYW4gYmUgY3VzdG9taXplZCBiZWZvcmUgcGFzc2VkIGludG8gdGhlIHByb3ZpZGVyIGJ5IGFkZGluZyBvciByZW1vdmluZyBjb21wb25lbnRzIHRvIGJlIGluc3RhbGxlZC5cbiAqXG4gKiBJbWFnZXMgYXJlIHJlYnVpbHQgZXZlcnkgd2VlayBieSBkZWZhdWx0IHRvIGVuc3VyZSB0aGF0IHRoZSBsYXRlc3Qgc2VjdXJpdHkgcGF0Y2hlcyBhcmUgYXBwbGllZC5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJ1bm5lckltYWdlQnVpbGRlciBleHRlbmRzIFJ1bm5lckltYWdlQnVpbGRlckJhc2Uge1xuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGltYWdlIGJ1aWxkZXIgYmFzZWQgb24gdGhlIHByb3ZpZGVkIHByb3BlcnRpZXMuIFRoZSBpbXBsZW1lbnRhdGlvbiB3aWxsIGRpZmZlciBiYXNlZCBvbiB0aGUgT1MsIGFyY2hpdGVjdHVyZSwgYW5kIHJlcXVlc3RlZCBidWlsZGVyIHR5cGUuXG4gICAqL1xuICBzdGF0aWMgbmV3KHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogUnVubmVySW1hZ2VCdWlsZGVyUHJvcHMpOiBJQ29uZmlndXJhYmxlUnVubmVySW1hZ2VCdWlsZGVyIHtcbiAgICBpZiAocHJvcHM/LmNvbXBvbmVudHMgJiYgcHJvcHMucnVubmVyVmVyc2lvbikge1xuICAgICAgQW5ub3RhdGlvbnMub2Yoc2NvcGUpLmFkZFdhcm5pbmcoJ3J1bm5lclZlcnNpb24gaXMgaWdub3JlZCB3aGVuIGNvbXBvbmVudHMgYXJlIHNwZWNpZmllZC4gVGhlIHJ1bm5lciB2ZXJzaW9uIHdpbGwgYmUgZGV0ZXJtaW5lZCBieSB0aGUgY29tcG9uZW50cy4nKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHM/LmJ1aWxkZXJUeXBlID09PSBSdW5uZXJJbWFnZUJ1aWxkZXJUeXBlLkNPREVfQlVJTEQpIHtcbiAgICAgIHJldHVybiBuZXcgQ29kZUJ1aWxkUnVubmVySW1hZ2VCdWlsZGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIH0gZWxzZSBpZiAocHJvcHM/LmJ1aWxkZXJUeXBlID09PSBSdW5uZXJJbWFnZUJ1aWxkZXJUeXBlLkFXU19JTUFHRV9CVUlMREVSKSB7XG4gICAgICByZXR1cm4gbmV3IEF3c0ltYWdlQnVpbGRlclJ1bm5lckltYWdlQnVpbGRlcihzY29wZSwgaWQsIHByb3BzKTtcbiAgICB9XG5cbiAgICBjb25zdCBvcyA9IHByb3BzPy5vcyA/PyBPcy5MSU5VWF9VQlVOVFU7XG4gICAgaWYgKG9zLmlzKE9zLkxJTlVYX1VCVU5UVSkgfHwgb3MuaXMoT3MuTElOVVhfQU1BWk9OXzIpIHx8IG9zLmlzKE9zLkxJTlVYX0FNQVpPTl8yMDIzKSkge1xuICAgICAgcmV0dXJuIG5ldyBDb2RlQnVpbGRSdW5uZXJJbWFnZUJ1aWxkZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG4gICAgfSBlbHNlIGlmIChvcy5pcyhPcy5XSU5ET1dTKSkge1xuICAgICAgcmV0dXJuIG5ldyBBd3NJbWFnZUJ1aWxkZXJSdW5uZXJJbWFnZUJ1aWxkZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5hYmxlIHRvIGZpbmQgcnVubmVyIGltYWdlIGJ1aWxkZXIgaW1wbGVtZW50YXRpb24gZm9yICR7b3MubmFtZX1gKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -11,6 +11,44 @@ export interface AwsImageBuilderRunnerImageBuilderProps {
|
|
|
11
11
|
* @default m5.large
|
|
12
12
|
*/
|
|
13
13
|
readonly instanceType?: ec2.InstanceType;
|
|
14
|
+
/**
|
|
15
|
+
* Options for fast launch.
|
|
16
|
+
*
|
|
17
|
+
* This is only supported for Windows AMIs.
|
|
18
|
+
*
|
|
19
|
+
* @default disabled
|
|
20
|
+
*/
|
|
21
|
+
readonly fastLaunchOptions?: FastLaunchOptions;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Options for fast launch.
|
|
25
|
+
*/
|
|
26
|
+
export interface FastLaunchOptions {
|
|
27
|
+
/**
|
|
28
|
+
* Enable fast launch for AMIs generated by this builder. It creates a snapshot of the root volume and uses it to launch new instances faster.
|
|
29
|
+
*
|
|
30
|
+
* This is only supported for Windows AMIs.
|
|
31
|
+
*
|
|
32
|
+
* @note this feature comes with additional resource costs. See the documentation for more details. https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/win-fast-launch-manage-costs.html
|
|
33
|
+
* @note enabling fast launch on an existing builder will not enable it for existing AMIs. It will only affect new AMIs. If you want immediate effect, trigger a new image build. Alternatively, you can create a new builder with fast launch enabled and use it for new AMIs.
|
|
34
|
+
*
|
|
35
|
+
* @default false
|
|
36
|
+
*/
|
|
37
|
+
readonly enabled?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* The maximum number of parallel instances that are launched for creating resources.
|
|
40
|
+
*
|
|
41
|
+
* Must be at least 6.
|
|
42
|
+
*
|
|
43
|
+
* @default 6
|
|
44
|
+
*/
|
|
45
|
+
readonly maxParallelLaunches?: number;
|
|
46
|
+
/**
|
|
47
|
+
* The number of pre-provisioned snapshots to keep on hand for a fast-launch enabled Windows AMI.
|
|
48
|
+
*
|
|
49
|
+
* @default 1
|
|
50
|
+
*/
|
|
51
|
+
readonly targetResourceCount?: number;
|
|
14
52
|
}
|
|
15
53
|
/**
|
|
16
54
|
* An asset including file or directory to place inside the built image.
|
|
@@ -116,6 +154,7 @@ export declare class AwsImageBuilderRunnerImageBuilder extends RunnerImageBuilde
|
|
|
116
154
|
private readonly instanceType;
|
|
117
155
|
private infrastructure;
|
|
118
156
|
private readonly role;
|
|
157
|
+
private readonly fastLaunchOptions?;
|
|
119
158
|
constructor(scope: Construct, id: string, props?: RunnerImageBuilderProps);
|
|
120
159
|
private platform;
|
|
121
160
|
/**
|