1 | ;
|
2 | var _a;
|
3 | Object.defineProperty(exports, "__esModule", { value: true });
|
4 | exports.ContainerImage = void 0;
|
5 | const jsiiDeprecationWarnings = require("../.warnings.jsii.js");
|
6 | const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
7 | const aws_ecr_assets_1 = require("@aws-cdk/aws-ecr-assets");
|
8 | /**
|
9 | * Constructs for types of container images
|
10 | */
|
11 | class ContainerImage {
|
12 | /**
|
13 | * Reference an image on DockerHub or another online registry
|
14 | */
|
15 | static fromRegistry(name, props = {}) {
|
16 | try {
|
17 | jsiiDeprecationWarnings._aws_cdk_aws_ecs_RepositoryImageProps(props);
|
18 | }
|
19 | catch (error) {
|
20 | if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
21 | Error.captureStackTrace(error, this.fromRegistry);
|
22 | }
|
23 | throw error;
|
24 | }
|
25 | return new repository_1.RepositoryImage(name, props);
|
26 | }
|
27 | /**
|
28 | * Reference an image in an ECR repository
|
29 | */
|
30 | static fromEcrRepository(repository, tag = 'latest') {
|
31 | return new ecr_1.EcrImage(repository, tag);
|
32 | }
|
33 | /**
|
34 | * Reference an image that's constructed directly from sources on disk.
|
35 | *
|
36 | * If you already have a `DockerImageAsset` instance, you can use the
|
37 | * `ContainerImage.fromDockerImageAsset` method instead.
|
38 | *
|
39 | * @param directory The directory containing the Dockerfile
|
40 | */
|
41 | static fromAsset(directory, props = {}) {
|
42 | try {
|
43 | jsiiDeprecationWarnings._aws_cdk_aws_ecs_AssetImageProps(props);
|
44 | }
|
45 | catch (error) {
|
46 | if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
47 | Error.captureStackTrace(error, this.fromAsset);
|
48 | }
|
49 | throw error;
|
50 | }
|
51 | return new asset_image_1.AssetImage(directory, props);
|
52 | }
|
53 | /**
|
54 | * Use an existing `DockerImageAsset` for this container image.
|
55 | *
|
56 | * @param asset The `DockerImageAsset` to use for this container definition.
|
57 | */
|
58 | static fromDockerImageAsset(asset) {
|
59 | return {
|
60 | bind(_scope, containerDefinition) {
|
61 | asset.repository.grantPull(containerDefinition.taskDefinition.obtainExecutionRole());
|
62 | return {
|
63 | imageName: asset.imageUri,
|
64 | };
|
65 | },
|
66 | };
|
67 | }
|
68 | /**
|
69 | * Use an existing tarball for this container image.
|
70 | *
|
71 | * Use this method if the container image has already been created by another process (e.g. jib)
|
72 | * and you want to add it as a container image asset.
|
73 | *
|
74 | * @param tarballFile Absolute path to the tarball. You can use language-specific idioms (such as `__dirname` in Node.js)
|
75 | * to create an absolute path based on the current script running directory.
|
76 | */
|
77 | static fromTarball(tarballFile) {
|
78 | return {
|
79 | bind(scope, containerDefinition) {
|
80 | const asset = new aws_ecr_assets_1.TarballImageAsset(scope, 'Tarball', { tarballFile });
|
81 | asset.repository.grantPull(containerDefinition.taskDefinition.obtainExecutionRole());
|
82 | return {
|
83 | imageName: asset.imageUri,
|
84 | };
|
85 | },
|
86 | };
|
87 | }
|
88 | }
|
89 | exports.ContainerImage = ContainerImage;
|
90 | _a = JSII_RTTI_SYMBOL_1;
|
91 | ContainerImage[_a] = { fqn: "@aws-cdk/aws-ecs.ContainerImage", version: "1.204.0" };
|
92 | const asset_image_1 = require("./images/asset-image");
|
93 | const ecr_1 = require("./images/ecr");
|
94 | const repository_1 = require("./images/repository");
|
95 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbmVyLWltYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY29udGFpbmVyLWltYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLDREQUE4RTtBQVE5RTs7R0FFRztBQUNILE1BQXNCLGNBQWM7SUFDbEM7O09BRUc7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLElBQVksRUFBRSxRQUE4QixFQUFFOzs7Ozs7Ozs7O1FBQ3ZFLE9BQU8sSUFBSSw0QkFBZSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztLQUN6QztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLGlCQUFpQixDQUFDLFVBQTJCLEVBQUUsTUFBYyxRQUFRO1FBQ2pGLE9BQU8sSUFBSSxjQUFRLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0tBQ3RDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLE1BQU0sQ0FBQyxTQUFTLENBQUMsU0FBaUIsRUFBRSxRQUF5QixFQUFFOzs7Ozs7Ozs7O1FBQ3BFLE9BQU8sSUFBSSx3QkFBVSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztLQUN6QztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsb0JBQW9CLENBQUMsS0FBdUI7UUFDeEQsT0FBTztZQUNMLElBQUksQ0FBQyxNQUFxQixFQUFFLG1CQUF3QztnQkFDbEUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsY0FBYyxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQztnQkFDckYsT0FBTztvQkFDTCxTQUFTLEVBQUUsS0FBSyxDQUFDLFFBQVE7aUJBQzFCLENBQUM7WUFDSixDQUFDO1NBQ0YsQ0FBQztLQUNIO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSSxNQUFNLENBQUMsV0FBVyxDQUFDLFdBQW1CO1FBQzNDLE9BQU87WUFDTCxJQUFJLENBQUMsS0FBb0IsRUFBRSxtQkFBd0M7Z0JBRWpFLE1BQU0sS0FBSyxHQUFHLElBQUksa0NBQWlCLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7Z0JBQ3ZFLEtBQUssQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7Z0JBRXJGLE9BQU87b0JBQ0wsU0FBUyxFQUFFLEtBQUssQ0FBQyxRQUFRO2lCQUMxQixDQUFDO1lBQ0osQ0FBQztTQUNGLENBQUM7S0FDSDs7QUFoRUgsd0NBc0VDOzs7QUFpQkQsc0RBQW1FO0FBQ25FLHNDQUF3QztBQUN4QyxvREFBNEUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBlY3IgZnJvbSAnQGF3cy1jZGsvYXdzLWVjcic7XG5pbXBvcnQgeyBEb2NrZXJJbWFnZUFzc2V0LCBUYXJiYWxsSW1hZ2VBc3NldCB9IGZyb20gJ0Bhd3MtY2RrL2F3cy1lY3ItYXNzZXRzJztcbmltcG9ydCB7IENvbnRhaW5lckRlZmluaXRpb24gfSBmcm9tICcuL2NvbnRhaW5lci1kZWZpbml0aW9uJztcbmltcG9ydCB7IENmblRhc2tEZWZpbml0aW9uIH0gZnJvbSAnLi9lY3MuZ2VuZXJhdGVkJztcblxuLy8gdjIgLSBrZWVwIHRoaXMgaW1wb3J0IGFzIGEgc2VwYXJhdGUgc2VjdGlvbiB0byByZWR1Y2UgbWVyZ2UgY29uZmxpY3Qgd2hlbiBmb3J3YXJkIG1lcmdpbmcgd2l0aCB0aGUgdjIgYnJhbmNoLlxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG5pbXBvcnQgeyBDb25zdHJ1Y3QgYXMgQ29yZUNvbnN0cnVjdCB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1xuXG4vKipcbiAqIENvbnN0cnVjdHMgZm9yIHR5cGVzIG9mIGNvbnRhaW5lciBpbWFnZXNcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvbnRhaW5lckltYWdlIHtcbiAgLyoqXG4gICAqIFJlZmVyZW5jZSBhbiBpbWFnZSBvbiBEb2NrZXJIdWIgb3IgYW5vdGhlciBvbmxpbmUgcmVnaXN0cnlcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVJlZ2lzdHJ5KG5hbWU6IHN0cmluZywgcHJvcHM6IFJlcG9zaXRvcnlJbWFnZVByb3BzID0ge30pIHtcbiAgICByZXR1cm4gbmV3IFJlcG9zaXRvcnlJbWFnZShuYW1lLCBwcm9wcyk7XG4gIH1cblxuICAvKipcbiAgICogUmVmZXJlbmNlIGFuIGltYWdlIGluIGFuIEVDUiByZXBvc2l0b3J5XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21FY3JSZXBvc2l0b3J5KHJlcG9zaXRvcnk6IGVjci5JUmVwb3NpdG9yeSwgdGFnOiBzdHJpbmcgPSAnbGF0ZXN0Jykge1xuICAgIHJldHVybiBuZXcgRWNySW1hZ2UocmVwb3NpdG9yeSwgdGFnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWZlcmVuY2UgYW4gaW1hZ2UgdGhhdCdzIGNvbnN0cnVjdGVkIGRpcmVjdGx5IGZyb20gc291cmNlcyBvbiBkaXNrLlxuICAgKlxuICAgKiBJZiB5b3UgYWxyZWFkeSBoYXZlIGEgYERvY2tlckltYWdlQXNzZXRgIGluc3RhbmNlLCB5b3UgY2FuIHVzZSB0aGVcbiAgICogYENvbnRhaW5lckltYWdlLmZyb21Eb2NrZXJJbWFnZUFzc2V0YCBtZXRob2QgaW5zdGVhZC5cbiAgICpcbiAgICogQHBhcmFtIGRpcmVjdG9yeSBUaGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIERvY2tlcmZpbGVcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUFzc2V0KGRpcmVjdG9yeTogc3RyaW5nLCBwcm9wczogQXNzZXRJbWFnZVByb3BzID0ge30pIHtcbiAgICByZXR1cm4gbmV3IEFzc2V0SW1hZ2UoZGlyZWN0b3J5LCBwcm9wcyk7XG4gIH1cblxuICAvKipcbiAgICogVXNlIGFuIGV4aXN0aW5nIGBEb2NrZXJJbWFnZUFzc2V0YCBmb3IgdGhpcyBjb250YWluZXIgaW1hZ2UuXG4gICAqXG4gICAqIEBwYXJhbSBhc3NldCBUaGUgYERvY2tlckltYWdlQXNzZXRgIHRvIHVzZSBmb3IgdGhpcyBjb250YWluZXIgZGVmaW5pdGlvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbURvY2tlckltYWdlQXNzZXQoYXNzZXQ6IERvY2tlckltYWdlQXNzZXQpOiBDb250YWluZXJJbWFnZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJpbmQoX3Njb3BlOiBDb3JlQ29uc3RydWN0LCBjb250YWluZXJEZWZpbml0aW9uOiBDb250YWluZXJEZWZpbml0aW9uKTogQ29udGFpbmVySW1hZ2VDb25maWcge1xuICAgICAgICBhc3NldC5yZXBvc2l0b3J5LmdyYW50UHVsbChjb250YWluZXJEZWZpbml0aW9uLnRhc2tEZWZpbml0aW9uLm9idGFpbkV4ZWN1dGlvblJvbGUoKSk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaW1hZ2VOYW1lOiBhc3NldC5pbWFnZVVyaSxcbiAgICAgICAgfTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2UgYW4gZXhpc3RpbmcgdGFyYmFsbCBmb3IgdGhpcyBjb250YWluZXIgaW1hZ2UuXG4gICAqXG4gICAqIFVzZSB0aGlzIG1ldGhvZCBpZiB0aGUgY29udGFpbmVyIGltYWdlIGhhcyBhbHJlYWR5IGJlZW4gY3JlYXRlZCBieSBhbm90aGVyIHByb2Nlc3MgKGUuZy4gamliKVxuICAgKiBhbmQgeW91IHdhbnQgdG8gYWRkIGl0IGFzIGEgY29udGFpbmVyIGltYWdlIGFzc2V0LlxuICAgKlxuICAgKiBAcGFyYW0gdGFyYmFsbEZpbGUgQWJzb2x1dGUgcGF0aCB0byB0aGUgdGFyYmFsbC4gWW91IGNhbiB1c2UgbGFuZ3VhZ2Utc3BlY2lmaWMgaWRpb21zIChzdWNoIGFzIGBfX2Rpcm5hbWVgIGluIE5vZGUuanMpXG4gICAqICAgICAgICAgICAgICAgICAgICB0byBjcmVhdGUgYW4gYWJzb2x1dGUgcGF0aCBiYXNlZCBvbiB0aGUgY3VycmVudCBzY3JpcHQgcnVubmluZyBkaXJlY3RvcnkuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21UYXJiYWxsKHRhcmJhbGxGaWxlOiBzdHJpbmcpOiBDb250YWluZXJJbWFnZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJpbmQoc2NvcGU6IENvcmVDb25zdHJ1Y3QsIGNvbnRhaW5lckRlZmluaXRpb246IENvbnRhaW5lckRlZmluaXRpb24pOiBDb250YWluZXJJbWFnZUNvbmZpZyB7XG5cbiAgICAgICAgY29uc3QgYXNzZXQgPSBuZXcgVGFyYmFsbEltYWdlQXNzZXQoc2NvcGUsICdUYXJiYWxsJywgeyB0YXJiYWxsRmlsZSB9KTtcbiAgICAgICAgYXNzZXQucmVwb3NpdG9yeS5ncmFudFB1bGwoY29udGFpbmVyRGVmaW5pdGlvbi50YXNrRGVmaW5pdGlvbi5vYnRhaW5FeGVjdXRpb25Sb2xlKCkpO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaW1hZ2VOYW1lOiBhc3NldC5pbWFnZVVyaSxcbiAgICAgICAgfTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgaW1hZ2UgaXMgdXNlZCBieSBhIENvbnRhaW5lckRlZmluaXRpb25cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBiaW5kKHNjb3BlOiBDb3JlQ29uc3RydWN0LCBjb250YWluZXJEZWZpbml0aW9uOiBDb250YWluZXJEZWZpbml0aW9uKTogQ29udGFpbmVySW1hZ2VDb25maWc7XG59XG5cbi8qKlxuICogVGhlIGNvbmZpZ3VyYXRpb24gZm9yIGNyZWF0aW5nIGEgY29udGFpbmVyIGltYWdlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhaW5lckltYWdlQ29uZmlnIHtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbmFtZSBvZiB0aGUgY29udGFpbmVyIGltYWdlLlxuICAgKi9cbiAgcmVhZG9ubHkgaW1hZ2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgY3JlZGVudGlhbHMgdXNlZCB0byBhY2Nlc3MgdGhlIGltYWdlIHJlcG9zaXRvcnkuXG4gICAqL1xuICByZWFkb25seSByZXBvc2l0b3J5Q3JlZGVudGlhbHM/OiBDZm5UYXNrRGVmaW5pdGlvbi5SZXBvc2l0b3J5Q3JlZGVudGlhbHNQcm9wZXJ0eTtcbn1cblxuaW1wb3J0IHsgQXNzZXRJbWFnZSwgQXNzZXRJbWFnZVByb3BzIH0gZnJvbSAnLi9pbWFnZXMvYXNzZXQtaW1hZ2UnO1xuaW1wb3J0IHsgRWNySW1hZ2UgfSBmcm9tICcuL2ltYWdlcy9lY3InO1xuaW1wb3J0IHsgUmVwb3NpdG9yeUltYWdlLCBSZXBvc2l0b3J5SW1hZ2VQcm9wcyB9IGZyb20gJy4vaW1hZ2VzL3JlcG9zaXRvcnknO1xuIl19 |
\ | No newline at end of file |