@cloudsnorkel/cdk-github-runners 0.11.6 → 0.12.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/.gitattributes +1 -2
- package/.jsii +485 -260
- package/API.md +182 -29
- package/README.md +10 -20
- package/assets/delete-failed-runner.lambda/index.js +171 -3879
- package/assets/docker-images/lambda/linux-x64/runner.sh +6 -0
- package/assets/idle-runner-repear.lambda/index.js +171 -3879
- package/assets/image-builders/aws-image-builder/delete-ami.lambda/index.js +3 -22
- package/assets/image-builders/aws-image-builder/versioner.lambda/index.js +56 -56
- package/assets/{providers → image-builders}/build-image.lambda/index.js +2 -14
- package/assets/setup.lambda/index.js +60 -3768
- package/assets/status.lambda/index.js +165 -3873
- package/assets/token-retriever.lambda/index.js +171 -3879
- package/assets/webhook-handler.lambda/index.js +171 -3879
- package/lib/access.js +1 -1
- package/lib/image-builders/api.d.ts +2 -2
- package/lib/image-builders/api.js +6 -6
- package/lib/image-builders/aws-image-builder/ami.d.ts +1 -0
- package/lib/image-builders/aws-image-builder/ami.js +9 -9
- package/lib/image-builders/aws-image-builder/builder.d.ts +1 -2
- package/lib/image-builders/aws-image-builder/builder.js +128 -74
- package/lib/image-builders/aws-image-builder/common.d.ts +1 -1
- package/lib/image-builders/aws-image-builder/common.js +2 -2
- package/lib/image-builders/aws-image-builder/container.d.ts +2 -1
- package/lib/image-builders/aws-image-builder/container.js +14 -14
- package/lib/image-builders/aws-image-builder/delete-ami.lambda.d.ts +1 -8
- package/lib/image-builders/aws-image-builder/delete-ami.lambda.js +5 -27
- package/lib/image-builders/aws-image-builder/deprecated/ami.js +1 -1
- package/lib/image-builders/aws-image-builder/deprecated/container.js +4 -3
- 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/{providers → image-builders}/build-image-function.d.ts +1 -1
- package/lib/image-builders/build-image-function.js +23 -0
- package/lib/image-builders/build-image.lambda.js +80 -0
- package/lib/image-builders/codebuild-deprecated.js +4 -3
- package/lib/image-builders/codebuild.js +5 -8
- package/lib/image-builders/common.d.ts +18 -9
- package/lib/image-builders/common.js +1 -11
- package/lib/image-builders/components.d.ts +2 -2
- package/lib/image-builders/components.js +34 -9
- package/lib/image-builders/static.js +1 -1
- package/lib/providers/codebuild.d.ts +9 -3
- package/lib/providers/codebuild.js +10 -4
- package/lib/providers/common.d.ts +4 -0
- package/lib/providers/common.js +8 -4
- package/lib/providers/ec2.d.ts +9 -3
- package/lib/providers/ec2.js +10 -4
- package/lib/providers/ecs.d.ts +9 -3
- package/lib/providers/ecs.js +10 -4
- package/lib/providers/fargate.d.ts +9 -3
- package/lib/providers/fargate.js +10 -4
- package/lib/providers/lambda.d.ts +10 -4
- package/lib/providers/lambda.js +15 -9
- package/lib/runner.js +3 -3
- package/lib/secrets.js +1 -1
- package/package.json +24 -28
- package/assets/image-builders/aws-image-builder/reaper.lambda/index.js +0 -165
- package/lib/image-builders/aws-image-builder/reaper-function.d.ts +0 -13
- package/lib/image-builders/aws-image-builder/reaper-function.js +0 -23
- package/lib/image-builders/aws-image-builder/reaper.lambda.d.ts +0 -9
- package/lib/image-builders/aws-image-builder/reaper.lambda.js +0 -151
- package/lib/providers/build-image-function.js +0 -23
- package/lib/providers/build-image.lambda.js +0 -92
- /package/lib/{providers → image-builders}/build-image.lambda.d.ts +0 -0
package/lib/access.js
CHANGED
|
@@ -58,7 +58,7 @@ class LambdaAccess {
|
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
60
|
_a = JSII_RTTI_SYMBOL_1;
|
|
61
|
-
LambdaAccess[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.LambdaAccess", version: "0.
|
|
61
|
+
LambdaAccess[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.LambdaAccess", version: "0.12.1" };
|
|
62
62
|
exports.LambdaAccess = LambdaAccess;
|
|
63
63
|
/**
|
|
64
64
|
* @internal
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Construct } from 'constructs';
|
|
2
|
-
import { RunnerImageBuilderBase, RunnerImageBuilderProps } from './common';
|
|
2
|
+
import { IConfigurableRunnerImageBuilder, RunnerImageBuilderBase, RunnerImageBuilderProps } from './common';
|
|
3
3
|
/**
|
|
4
4
|
* GitHub Runner image builder. Builds a Docker image or AMI with GitHub Runner and other requirements installed.
|
|
5
5
|
*
|
|
@@ -11,5 +11,5 @@ export declare abstract class RunnerImageBuilder extends RunnerImageBuilderBase
|
|
|
11
11
|
/**
|
|
12
12
|
* Create a new image builder based on the provided properties. The implementation will differ based on the OS, architecture, and requested builder type.
|
|
13
13
|
*/
|
|
14
|
-
static new(scope: Construct, id: string, props?: RunnerImageBuilderProps):
|
|
14
|
+
static new(scope: Construct, id: string, props?: RunnerImageBuilderProps): IConfigurableRunnerImageBuilder;
|
|
15
15
|
}
|
|
@@ -7,7 +7,7 @@ const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
|
7
7
|
const aws_image_builder_1 = require("./aws-image-builder");
|
|
8
8
|
const codebuild_1 = require("./codebuild");
|
|
9
9
|
const common_1 = require("./common");
|
|
10
|
-
const
|
|
10
|
+
const providers_1 = require("../providers");
|
|
11
11
|
/**
|
|
12
12
|
* GitHub Runner image builder. Builds a Docker image or AMI with GitHub Runner and other requirements installed.
|
|
13
13
|
*
|
|
@@ -29,11 +29,11 @@ class RunnerImageBuilder extends common_1.RunnerImageBuilderBase {
|
|
|
29
29
|
else if (props?.builderType === common_1.RunnerImageBuilderType.AWS_IMAGE_BUILDER) {
|
|
30
30
|
return new aws_image_builder_1.AwsImageBuilderRunnerImageBuilder(scope, id, props);
|
|
31
31
|
}
|
|
32
|
-
const os = props?.os ??
|
|
33
|
-
if (os.is(
|
|
32
|
+
const os = props?.os ?? providers_1.Os.LINUX_UBUNTU;
|
|
33
|
+
if (os.is(providers_1.Os.LINUX_UBUNTU) || os.is(providers_1.Os.LINUX_AMAZON_2) || os.is(providers_1.Os.LINUX_AMAZON_2023)) {
|
|
34
34
|
return new codebuild_1.CodeBuildRunnerImageBuilder(scope, id, props);
|
|
35
35
|
}
|
|
36
|
-
else if (os.is(
|
|
36
|
+
else if (os.is(providers_1.Os.WINDOWS)) {
|
|
37
37
|
return new aws_image_builder_1.AwsImageBuilderRunnerImageBuilder(scope, id, props);
|
|
38
38
|
}
|
|
39
39
|
else {
|
|
@@ -42,6 +42,6 @@ class RunnerImageBuilder extends common_1.RunnerImageBuilderBase {
|
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
_a = JSII_RTTI_SYMBOL_1;
|
|
45
|
-
RunnerImageBuilder[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.RunnerImageBuilder", version: "0.
|
|
45
|
+
RunnerImageBuilder[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.RunnerImageBuilder", version: "0.12.1" };
|
|
46
46
|
exports.RunnerImageBuilder = RunnerImageBuilder;
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ltYWdlLWJ1aWxkZXJzL2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUEwQztBQUUxQywyREFBd0U7QUFDeEUsMkNBQTBEO0FBQzFELHFDQUFvSTtBQUNwSSw0Q0FBa0M7QUFFbEM7Ozs7OztHQU1HO0FBQ0gsTUFBc0Isa0JBQW1CLFNBQVEsK0JBQXNCO0lBQ3JFOztPQUVHO0lBQ0gsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUErQjtRQUN0RSxJQUFJLEtBQUssRUFBRSxVQUFVLElBQUksS0FBSyxDQUFDLGFBQWEsRUFBRTtZQUM1Qyx5QkFBVyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxVQUFVLENBQUMsa0hBQWtILENBQUMsQ0FBQztTQUN0SjtRQUVELElBQUksS0FBSyxFQUFFLFdBQVcsS0FBSywrQkFBc0IsQ0FBQyxVQUFVLEVBQUU7WUFDNUQsT0FBTyxJQUFJLHVDQUEyQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDMUQ7YUFBTSxJQUFJLEtBQUssRUFBRSxXQUFXLEtBQUssK0JBQXNCLENBQUMsaUJBQWlCLEVBQUU7WUFDMUUsT0FBTyxJQUFJLHFEQUFpQyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDaEU7UUFFRCxNQUFNLEVBQUUsR0FBRyxLQUFLLEVBQUUsRUFBRSxJQUFJLGNBQUUsQ0FBQyxZQUFZLENBQUM7UUFDeEMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFO1lBQ3JGLE9BQU8sSUFBSSx1Q0FBMkIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQzFEO2FBQU0sSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM1QixPQUFPLElBQUkscURBQWlDLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNoRTthQUFNO1lBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7U0FDdEY7SUFDSCxDQUFDOzs7O0FBdkJtQixnREFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbm5vdGF0aW9ucyB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQXdzSW1hZ2VCdWlsZGVyUnVubmVySW1hZ2VCdWlsZGVyIH0gZnJvbSAnLi9hd3MtaW1hZ2UtYnVpbGRlcic7XG5pbXBvcnQgeyBDb2RlQnVpbGRSdW5uZXJJbWFnZUJ1aWxkZXIgfSBmcm9tICcuL2NvZGVidWlsZCc7XG5pbXBvcnQgeyBJQ29uZmlndXJhYmxlUnVubmVySW1hZ2VCdWlsZGVyLCBSdW5uZXJJbWFnZUJ1aWxkZXJCYXNlLCBSdW5uZXJJbWFnZUJ1aWxkZXJQcm9wcywgUnVubmVySW1hZ2VCdWlsZGVyVHlwZSB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IE9zIH0gZnJvbSAnLi4vcHJvdmlkZXJzJztcblxuLyoqXG4gKiBHaXRIdWIgUnVubmVyIGltYWdlIGJ1aWxkZXIuIEJ1aWxkcyBhIERvY2tlciBpbWFnZSBvciBBTUkgd2l0aCBHaXRIdWIgUnVubmVyIGFuZCBvdGhlciByZXF1aXJlbWVudHMgaW5zdGFsbGVkLlxuICpcbiAqIEltYWdlcyBjYW4gYmUgY3VzdG9taXplZCBiZWZvcmUgcGFzc2VkIGludG8gdGhlIHByb3ZpZGVyIGJ5IGFkZGluZyBvciByZW1vdmluZyBjb21wb25lbnRzIHRvIGJlIGluc3RhbGxlZC5cbiAqXG4gKiBJbWFnZXMgYXJlIHJlYnVpbHQgZXZlcnkgd2VlayBieSBkZWZhdWx0IHRvIGVuc3VyZSB0aGF0IHRoZSBsYXRlc3Qgc2VjdXJpdHkgcGF0Y2hlcyBhcmUgYXBwbGllZC5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJ1bm5lckltYWdlQnVpbGRlciBleHRlbmRzIFJ1bm5lckltYWdlQnVpbGRlckJhc2Uge1xuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGltYWdlIGJ1aWxkZXIgYmFzZWQgb24gdGhlIHByb3ZpZGVkIHByb3BlcnRpZXMuIFRoZSBpbXBsZW1lbnRhdGlvbiB3aWxsIGRpZmZlciBiYXNlZCBvbiB0aGUgT1MsIGFyY2hpdGVjdHVyZSwgYW5kIHJlcXVlc3RlZCBidWlsZGVyIHR5cGUuXG4gICAqL1xuICBzdGF0aWMgbmV3KHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogUnVubmVySW1hZ2VCdWlsZGVyUHJvcHMpOiBJQ29uZmlndXJhYmxlUnVubmVySW1hZ2VCdWlsZGVyIHtcbiAgICBpZiAocHJvcHM/LmNvbXBvbmVudHMgJiYgcHJvcHMucnVubmVyVmVyc2lvbikge1xuICAgICAgQW5ub3RhdGlvbnMub2Yoc2NvcGUpLmFkZFdhcm5pbmcoJ3J1bm5lclZlcnNpb24gaXMgaWdub3JlZCB3aGVuIGNvbXBvbmVudHMgYXJlIHNwZWNpZmllZC4gVGhlIHJ1bm5lciB2ZXJzaW9uIHdpbGwgYmUgZGV0ZXJtaW5lZCBieSB0aGUgY29tcG9uZW50cy4nKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHM/LmJ1aWxkZXJUeXBlID09PSBSdW5uZXJJbWFnZUJ1aWxkZXJUeXBlLkNPREVfQlVJTEQpIHtcbiAgICAgIHJldHVybiBuZXcgQ29kZUJ1aWxkUnVubmVySW1hZ2VCdWlsZGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIH0gZWxzZSBpZiAocHJvcHM/LmJ1aWxkZXJUeXBlID09PSBSdW5uZXJJbWFnZUJ1aWxkZXJUeXBlLkFXU19JTUFHRV9CVUlMREVSKSB7XG4gICAgICByZXR1cm4gbmV3IEF3c0ltYWdlQnVpbGRlclJ1bm5lckltYWdlQnVpbGRlcihzY29wZSwgaWQsIHByb3BzKTtcbiAgICB9XG5cbiAgICBjb25zdCBvcyA9IHByb3BzPy5vcyA/PyBPcy5MSU5VWF9VQlVOVFU7XG4gICAgaWYgKG9zLmlzKE9zLkxJTlVYX1VCVU5UVSkgfHwgb3MuaXMoT3MuTElOVVhfQU1BWk9OXzIpIHx8IG9zLmlzKE9zLkxJTlVYX0FNQVpPTl8yMDIzKSkge1xuICAgICAgcmV0dXJuIG5ldyBDb2RlQnVpbGRSdW5uZXJJbWFnZUJ1aWxkZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG4gICAgfSBlbHNlIGlmIChvcy5pcyhPcy5XSU5ET1dTKSkge1xuICAgICAgcmV0dXJuIG5ldyBBd3NJbWFnZUJ1aWxkZXJSdW5uZXJJbWFnZUJ1aWxkZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5hYmxlIHRvIGZpbmQgcnVubmVyIGltYWdlIGJ1aWxkZXIgaW1wbGVtZW50YXRpb24gZm9yICR7b3MubmFtZX1gKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -31,6 +31,7 @@ interface AmiRecipeProperties {
|
|
|
31
31
|
export declare class AmiRecipe extends ImageBuilderObjectBase {
|
|
32
32
|
readonly arn: string;
|
|
33
33
|
readonly name: string;
|
|
34
|
+
readonly version: string;
|
|
34
35
|
constructor(scope: Construct, id: string, props: AmiRecipeProperties);
|
|
35
36
|
}
|
|
36
37
|
/**
|
|
@@ -14,12 +14,17 @@ const common_2 = require("../common");
|
|
|
14
14
|
class AmiRecipe extends common_1.ImageBuilderObjectBase {
|
|
15
15
|
constructor(scope, id, props) {
|
|
16
16
|
super(scope, id);
|
|
17
|
-
const name = (0, common_2.uniqueImageBuilderName)(this);
|
|
18
17
|
let components = props.components.map(component => {
|
|
19
18
|
return {
|
|
20
19
|
componentArn: component.arn,
|
|
21
20
|
};
|
|
22
21
|
});
|
|
22
|
+
this.name = (0, common_2.uniqueImageBuilderName)(this);
|
|
23
|
+
this.version = this.generateVersion('ImageRecipe', this.name, {
|
|
24
|
+
platform: props.platform,
|
|
25
|
+
components,
|
|
26
|
+
parentAmi: props.baseAmi,
|
|
27
|
+
});
|
|
23
28
|
let workingDirectory;
|
|
24
29
|
if (props.platform == 'Linux') {
|
|
25
30
|
workingDirectory = '/home/runner';
|
|
@@ -31,18 +36,13 @@ class AmiRecipe extends common_1.ImageBuilderObjectBase {
|
|
|
31
36
|
throw new Error(`Unsupported AMI recipe platform: ${props.platform}`);
|
|
32
37
|
}
|
|
33
38
|
const recipe = new aws_cdk_lib_1.aws_imagebuilder.CfnImageRecipe(this, 'Recipe', {
|
|
34
|
-
name: name,
|
|
35
|
-
version: this.version
|
|
36
|
-
platform: props.platform,
|
|
37
|
-
components,
|
|
38
|
-
parentAmi: props.baseAmi,
|
|
39
|
-
}),
|
|
39
|
+
name: this.name,
|
|
40
|
+
version: this.version,
|
|
40
41
|
parentImage: props.baseAmi,
|
|
41
42
|
components,
|
|
42
43
|
workingDirectory,
|
|
43
44
|
});
|
|
44
45
|
this.arn = recipe.attrArn;
|
|
45
|
-
this.name = name;
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
exports.AmiRecipe = AmiRecipe;
|
|
@@ -90,4 +90,4 @@ function defaultBaseAmi(scope, os, architecture) {
|
|
|
90
90
|
throw new Error(`OS ${os.name} not supported for AMI runner image`);
|
|
91
91
|
}
|
|
92
92
|
exports.defaultBaseAmi = defaultBaseAmi;
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1pLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ltYWdlLWJ1aWxkZXJzL2F3cy1pbWFnZS1idWlsZGVyL2FtaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBbUM7QUFDbkMsNkNBQStEO0FBRy9ELHFDQUFrRDtBQUNsRCwrQ0FBbUQ7QUFDbkQsc0NBQW1EO0FBMkJuRDs7OztHQUlHO0FBQ0gsTUFBYSxTQUFVLFNBQVEsK0JBQXNCO0lBS25ELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMEI7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNoRCxPQUFPO2dCQUNMLFlBQVksRUFBRSxTQUFTLENBQUMsR0FBRzthQUM1QixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUEsK0JBQXNCLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQzVELFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixVQUFVO1lBQ1YsU0FBUyxFQUFFLEtBQUssQ0FBQyxPQUFPO1NBQ3pCLENBQUMsQ0FBQztRQUVILElBQUksZ0JBQWdCLENBQUM7UUFDckIsSUFBSSxLQUFLLENBQUMsUUFBUSxJQUFJLE9BQU8sRUFBRTtZQUM3QixnQkFBZ0IsR0FBRyxjQUFjLENBQUM7U0FDbkM7YUFBTSxJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksU0FBUyxFQUFFO1lBQ3RDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxDQUFDLHlIQUF5SDtTQUNwSjthQUFNO1lBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDdkU7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLDhCQUFZLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUU7WUFDN0QsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLFdBQVcsRUFBRSxLQUFLLENBQUMsT0FBTztZQUMxQixVQUFVO1lBQ1YsZ0JBQWdCO1NBQ2pCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztJQUM1QixDQUFDO0NBQ0Y7QUF4Q0QsOEJBd0NDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQWdCLGNBQWMsQ0FBQyxLQUFnQixFQUFFLEVBQU0sRUFBRSxZQUEwQjtJQUNqRixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVsQyxJQUFJLElBQUksQ0FBQztJQUNULElBQUksWUFBWSxDQUFDLEVBQUUsQ0FBQyx3QkFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3hDLElBQUksR0FBRyxLQUFLLENBQUM7S0FDZDtTQUFNLElBQUksWUFBWSxDQUFDLEVBQUUsQ0FBQyx3QkFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQzlDLElBQUksR0FBRyxPQUFPLENBQUM7S0FDaEI7U0FBTTtRQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0tBQ2hGO0lBRUQsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUM3QyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUM7WUFDckIsT0FBTyxFQUFFLGNBQWM7WUFDdkIsUUFBUSxFQUFFLE9BQU87WUFDakIsT0FBTyxFQUFFLEtBQUs7WUFDZCxZQUFZLEVBQUUsd0JBQXdCLElBQUksUUFBUTtTQUNuRCxDQUFDLENBQUM7S0FDSjtJQUVELElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsY0FBYyxDQUFDLEVBQUU7UUFDNUIsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDO1lBQ3JCLE9BQU8sRUFBRSxjQUFjO1lBQ3ZCLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsWUFBWSxFQUFFLGtCQUFrQixJQUFJLFFBQVE7U0FDN0MsQ0FBQyxDQUFDO0tBQ0o7SUFFRCxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsY0FBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ3JCLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQztZQUNyQixPQUFPLEVBQUUsY0FBYztZQUN2QixRQUFRLEVBQUUsT0FBTztZQUNqQixPQUFPLEVBQUUsS0FBSztZQUNkLFlBQVksRUFBRSx5Q0FBeUMsSUFBSSxRQUFRO1NBQ3BFLENBQUMsQ0FBQztLQUNKO0lBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLHFDQUFxQyxDQUFDLENBQUM7QUFDdEUsQ0FBQztBQXhDRCx3Q0F3Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgYXdzX2ltYWdlYnVpbGRlciBhcyBpbWFnZWJ1aWxkZXIgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IEltYWdlQnVpbGRlckNvbXBvbmVudCB9IGZyb20gJy4vYnVpbGRlcic7XG5pbXBvcnQgeyBJbWFnZUJ1aWxkZXJPYmplY3RCYXNlIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgQXJjaGl0ZWN0dXJlLCBPcyB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycyc7XG5pbXBvcnQgeyB1bmlxdWVJbWFnZUJ1aWxkZXJOYW1lIH0gZnJvbSAnLi4vY29tbW9uJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBBbWlSZWNpcGUgY29uc3RydWN0LlxuICovXG5pbnRlcmZhY2UgQW1pUmVjaXBlUHJvcGVydGllcyB7XG4gIC8qKlxuICAgKiBUYXJnZXQgcGxhdGZvcm0uIE11c3QgbWF0Y2ggYnVpbGRlciBwbGF0Zm9ybS5cbiAgICovXG4gIHJlYWRvbmx5IHBsYXRmb3JtOiAnTGludXgnIHwgJ1dpbmRvd3MnO1xuXG4gIC8qKlxuICAgKiBUYXJnZXQgYXJjaGl0ZWN0dXJlLiBNdXN0IG1hdGNoIGJ1aWxkZXIgcGxhdGZvcm0uXG4gICAqL1xuICByZWFkb25seSBhcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZTtcblxuICAvKipcbiAgICogQmFzZSBBTUkgdG8gdXNlIGZvciB0aGUgbmV3IHJ1bm5lciBBTUkuXG4gICAqL1xuICByZWFkb25seSBiYXNlQW1pOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENvbXBvbmVudHMgdG8gYWRkIHRvIHRhcmdldCBjb250YWluZXIgaW1hZ2UuXG4gICAqL1xuICByZWFkb25seSBjb21wb25lbnRzOiBJbWFnZUJ1aWxkZXJDb21wb25lbnRbXTtcbn1cblxuLyoqXG4gKiBJbWFnZSBidWlsZGVyIHJlY2lwZSBmb3IgQW1hem9uIE1hY2hpbmUgSW1hZ2UgKEFNSSkuXG4gKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBBbWlSZWNpcGUgZXh0ZW5kcyBJbWFnZUJ1aWxkZXJPYmplY3RCYXNlIHtcbiAgcHVibGljIHJlYWRvbmx5IGFybjogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgdmVyc2lvbjogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBBbWlSZWNpcGVQcm9wZXJ0aWVzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGxldCBjb21wb25lbnRzID0gcHJvcHMuY29tcG9uZW50cy5tYXAoY29tcG9uZW50ID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGNvbXBvbmVudEFybjogY29tcG9uZW50LmFybixcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICB0aGlzLm5hbWUgPSB1bmlxdWVJbWFnZUJ1aWxkZXJOYW1lKHRoaXMpO1xuICAgIHRoaXMudmVyc2lvbiA9IHRoaXMuZ2VuZXJhdGVWZXJzaW9uKCdJbWFnZVJlY2lwZScsIHRoaXMubmFtZSwge1xuICAgICAgcGxhdGZvcm06IHByb3BzLnBsYXRmb3JtLFxuICAgICAgY29tcG9uZW50cyxcbiAgICAgIHBhcmVudEFtaTogcHJvcHMuYmFzZUFtaSxcbiAgICB9KTtcblxuICAgIGxldCB3b3JraW5nRGlyZWN0b3J5O1xuICAgIGlmIChwcm9wcy5wbGF0Zm9ybSA9PSAnTGludXgnKSB7XG4gICAgICB3b3JraW5nRGlyZWN0b3J5ID0gJy9ob21lL3J1bm5lcic7XG4gICAgfSBlbHNlIGlmIChwcm9wcy5wbGF0Zm9ybSA9PSAnV2luZG93cycpIHtcbiAgICAgIHdvcmtpbmdEaXJlY3RvcnkgPSAnQzovJzsgLy8gbXVzdCBleGlzdCBvciBJbWFnZSBCdWlsZGVyIGZhaWxzIGFuZCBtdXN0IG5vdCBiZSBlbXB0eSBvciBnaXQgd2lsbCBzdGFsbCBpbnN0YWxsaW5nIGZyb20gdGhlIGRlZmF1bHQgd2luZG93c1xcc3lzdGVtMzJcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBBTUkgcmVjaXBlIHBsYXRmb3JtOiAke3Byb3BzLnBsYXRmb3JtfWApO1xuICAgIH1cblxuICAgIGNvbnN0IHJlY2lwZSA9IG5ldyBpbWFnZWJ1aWxkZXIuQ2ZuSW1hZ2VSZWNpcGUodGhpcywgJ1JlY2lwZScsIHtcbiAgICAgIG5hbWU6IHRoaXMubmFtZSxcbiAgICAgIHZlcnNpb246IHRoaXMudmVyc2lvbixcbiAgICAgIHBhcmVudEltYWdlOiBwcm9wcy5iYXNlQW1pLFxuICAgICAgY29tcG9uZW50cyxcbiAgICAgIHdvcmtpbmdEaXJlY3RvcnksXG4gICAgfSk7XG5cbiAgICB0aGlzLmFybiA9IHJlY2lwZS5hdHRyQXJuO1xuICB9XG59XG5cbi8qKlxuICogRGVmYXVsdCBiYXNlIEFNSSBmb3IgZ2l2ZW4gT1MgYW5kIGFyY2hpdGVjdHVyZS5cbiAqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlZmF1bHRCYXNlQW1pKHNjb3BlOiBDb25zdHJ1Y3QsIG9zOiBPcywgYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUpIHtcbiAgY29uc3Qgc3RhY2sgPSBjZGsuU3RhY2sub2Yoc2NvcGUpO1xuXG4gIGxldCBhcmNoO1xuICBpZiAoYXJjaGl0ZWN0dXJlLmlzKEFyY2hpdGVjdHVyZS5YODZfNjQpKSB7XG4gICAgYXJjaCA9ICd4ODYnO1xuICB9IGVsc2UgaWYgKGFyY2hpdGVjdHVyZS5pcyhBcmNoaXRlY3R1cmUuQVJNNjQpKSB7XG4gICAgYXJjaCA9ICdhcm02NCc7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBhcmNoaXRlY3R1cmUgZm9yIGJhc2UgQU1JOiAke2FyY2hpdGVjdHVyZS5uYW1lfWApO1xuICB9XG5cbiAgaWYgKG9zLmlzKE9zLkxJTlVYX1VCVU5UVSkgfHwgb3MuaXMoT3MuTElOVVgpKSB7XG4gICAgcmV0dXJuIHN0YWNrLmZvcm1hdEFybih7XG4gICAgICBzZXJ2aWNlOiAnaW1hZ2VidWlsZGVyJyxcbiAgICAgIHJlc291cmNlOiAnaW1hZ2UnLFxuICAgICAgYWNjb3VudDogJ2F3cycsXG4gICAgICByZXNvdXJjZU5hbWU6IGB1YnVudHUtc2VydmVyLTIyLWx0cy0ke2FyY2h9L3gueC54YCxcbiAgICB9KTtcbiAgfVxuXG4gIGlmIChvcy5pcyhPcy5MSU5VWF9BTUFaT05fMikpIHtcbiAgICByZXR1cm4gc3RhY2suZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdpbWFnZWJ1aWxkZXInLFxuICAgICAgcmVzb3VyY2U6ICdpbWFnZScsXG4gICAgICBhY2NvdW50OiAnYXdzJyxcbiAgICAgIHJlc291cmNlTmFtZTogYGFtYXpvbi1saW51eC0yLSR7YXJjaH0veC54LnhgLFxuICAgIH0pO1xuICB9XG5cbiAgaWYgKG9zLmlzKE9zLldJTkRPV1MpKSB7XG4gICAgcmV0dXJuIHN0YWNrLmZvcm1hdEFybih7XG4gICAgICBzZXJ2aWNlOiAnaW1hZ2VidWlsZGVyJyxcbiAgICAgIHJlc291cmNlOiAnaW1hZ2UnLFxuICAgICAgYWNjb3VudDogJ2F3cycsXG4gICAgICByZXNvdXJjZU5hbWU6IGB3aW5kb3dzLXNlcnZlci0yMDIyLWVuZ2xpc2gtZnVsbC1iYXNlLSR7YXJjaH0veC54LnhgLFxuICAgIH0pO1xuICB9XG5cbiAgdGhyb3cgbmV3IEVycm9yKGBPUyAke29zLm5hbWV9IG5vdCBzdXBwb3J0ZWQgZm9yIEFNSSBydW5uZXIgaW1hZ2VgKTtcbn1cblxuIl19
|
|
@@ -122,7 +122,7 @@ export declare class AwsImageBuilderRunnerImageBuilder extends RunnerImageBuilde
|
|
|
122
122
|
* Called by IRunnerProvider to finalize settings and create the image builder.
|
|
123
123
|
*/
|
|
124
124
|
bindDockerImage(): RunnerImage;
|
|
125
|
-
private
|
|
125
|
+
private dockerImageCleaner;
|
|
126
126
|
protected createLog(id: string, recipeName: string): logs.LogGroup;
|
|
127
127
|
protected createInfrastructure(managedPolicies: iam.IManagedPolicy[]): imagebuilder.CfnInfrastructureConfiguration;
|
|
128
128
|
protected createImage(infra: imagebuilder.CfnInfrastructureConfiguration, dist: imagebuilder.CfnDistributionConfiguration, log: logs.LogGroup, imageRecipeArn?: string, containerRecipeArn?: string): imagebuilder.CfnImage;
|
|
@@ -136,7 +136,6 @@ export declare class AwsImageBuilderRunnerImageBuilder extends RunnerImageBuilde
|
|
|
136
136
|
bindAmi(): RunnerAmi;
|
|
137
137
|
private amiCleaner;
|
|
138
138
|
private bindComponents;
|
|
139
|
-
private reaper;
|
|
140
139
|
}
|
|
141
140
|
/**
|
|
142
141
|
* @internal
|