@aws-cdk-testing/cli-integ
Version:
Integration tests for the AWS CDK CLI
78 lines • 7.97 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.writeFileAsset = writeFileAsset;
exports.writeDockerAsset = writeDockerAsset;
const fs_1 = require("fs");
const path = __importStar(require("path"));
async function writeFileAsset(fixture) {
const account = await fixture.aws.account();
const region = fixture.aws.region;
const relativeAssetFile = 'testfile.txt';
for (const toCreate of [relativeAssetFile]) {
await fs_1.promises.writeFile(path.join(fixture.integTestDir, toCreate), 'some asset file');
}
const bucketName = `cdk-${fixture.qualifier}-assets-${account}-${region}`;
const assumeRoleArn = `arn:\${AWS::Partition}:iam::${account}:role/cdk-${fixture.qualifier}-file-publishing-role-${account}-${region}`;
return {
relativeAssetFile,
bucketName,
assumeRoleArn,
};
}
async function writeDockerAsset(fixture) {
const relativeImageDir = 'imagedir';
const absoluteImageDir = path.join(fixture.integTestDir, relativeImageDir);
await fs_1.promises.mkdir(absoluteImageDir, { recursive: true });
for (const toCreate of [`${absoluteImageDir}/datafile.txt`]) {
await fs_1.promises.writeFile(toCreate, 'some asset file');
}
await fs_1.promises.writeFile(path.join(absoluteImageDir, 'Dockerfile'), [
'FROM scratch',
'ADD datafile.txt datafile.txt',
].join('\n'));
const account = await fixture.aws.account();
const region = fixture.aws.region;
const repositoryName = `cdk-${fixture.qualifier}-container-assets-${account}-${region}`;
const assumeRoleArn = `arn:\${AWS::Partition}:iam::${account}:role/cdk-${fixture.qualifier}-image-publishing-role-${account}-${region}`;
const repositoryDomain = `${account}.dkr.ecr.${region}.amazonaws.com`;
return {
repositoryName,
assumeRoleArn,
relativeImageDir,
repositoryDomain,
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRfaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImFzc2V0X2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSx3Q0FnQkM7QUFFRCw0Q0EwQkM7QUFoREQsMkJBQW9DO0FBQ3BDLDJDQUE2QjtBQUd0QixLQUFLLFVBQVUsY0FBYyxDQUFDLE9BQW9CO0lBQ3ZELE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM1QyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztJQUVsQyxNQUFNLGlCQUFpQixHQUFHLGNBQWMsQ0FBQztJQUN6QyxLQUFLLE1BQU0sUUFBUSxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO1FBQzNDLE1BQU0sYUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBQ0QsTUFBTSxVQUFVLEdBQUcsT0FBTyxPQUFPLENBQUMsU0FBUyxXQUFXLE9BQU8sSUFBSSxNQUFNLEVBQUUsQ0FBQztJQUMxRSxNQUFNLGFBQWEsR0FBRywrQkFBK0IsT0FBTyxhQUFhLE9BQU8sQ0FBQyxTQUFTLHlCQUF5QixPQUFPLElBQUksTUFBTSxFQUFFLENBQUM7SUFFdkksT0FBTztRQUNMLGlCQUFpQjtRQUNqQixVQUFVO1FBQ1YsYUFBYTtLQUNkLENBQUM7QUFDSixDQUFDO0FBRU0sS0FBSyxVQUFVLGdCQUFnQixDQUFDLE9BQW9CO0lBQ3pELE1BQU0sZ0JBQWdCLEdBQUcsVUFBVSxDQUFDO0lBQ3BDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDM0UsTUFBTSxhQUFFLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFdEQsS0FBSyxNQUFNLFFBQVEsSUFBSSxDQUFDLEdBQUcsZ0JBQWdCLGVBQWUsQ0FBQyxFQUFFLENBQUM7UUFDNUQsTUFBTSxhQUFFLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxNQUFNLGFBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxZQUFZLENBQUMsRUFBRTtRQUM1RCxjQUFjO1FBQ2QsK0JBQStCO0tBQ2hDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFFZCxNQUFNLE9BQU8sR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDNUMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDbEMsTUFBTSxjQUFjLEdBQUcsT0FBTyxPQUFPLENBQUMsU0FBUyxxQkFBcUIsT0FBTyxJQUFJLE1BQU0sRUFBRSxDQUFDO0lBQ3hGLE1BQU0sYUFBYSxHQUFHLCtCQUErQixPQUFPLGFBQWEsT0FBTyxDQUFDLFNBQVMsMEJBQTBCLE9BQU8sSUFBSSxNQUFNLEVBQUUsQ0FBQztJQUN4SSxNQUFNLGdCQUFnQixHQUFHLEdBQUcsT0FBTyxZQUFZLE1BQU0sZ0JBQWdCLENBQUM7SUFFdEUsT0FBTztRQUNMLGNBQWM7UUFDZCxhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGdCQUFnQjtLQUNqQixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHByb21pc2VzIGFzIGZzIH0gZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB0eXBlIHsgVGVzdEZpeHR1cmUgfSBmcm9tICcuLi8uLi8uLi9saWIvd2l0aC1jZGstYXBwJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdyaXRlRmlsZUFzc2V0KGZpeHR1cmU6IFRlc3RGaXh0dXJlKSB7XG4gIGNvbnN0IGFjY291bnQgPSBhd2FpdCBmaXh0dXJlLmF3cy5hY2NvdW50KCk7XG4gIGNvbnN0IHJlZ2lvbiA9IGZpeHR1cmUuYXdzLnJlZ2lvbjtcblxuICBjb25zdCByZWxhdGl2ZUFzc2V0RmlsZSA9ICd0ZXN0ZmlsZS50eHQnO1xuICBmb3IgKGNvbnN0IHRvQ3JlYXRlIG9mIFtyZWxhdGl2ZUFzc2V0RmlsZV0pIHtcbiAgICBhd2FpdCBmcy53cml0ZUZpbGUocGF0aC5qb2luKGZpeHR1cmUuaW50ZWdUZXN0RGlyLCB0b0NyZWF0ZSksICdzb21lIGFzc2V0IGZpbGUnKTtcbiAgfVxuICBjb25zdCBidWNrZXROYW1lID0gYGNkay0ke2ZpeHR1cmUucXVhbGlmaWVyfS1hc3NldHMtJHthY2NvdW50fS0ke3JlZ2lvbn1gO1xuICBjb25zdCBhc3N1bWVSb2xlQXJuID0gYGFybjpcXCR7QVdTOjpQYXJ0aXRpb259OmlhbTo6JHthY2NvdW50fTpyb2xlL2Nkay0ke2ZpeHR1cmUucXVhbGlmaWVyfS1maWxlLXB1Ymxpc2hpbmctcm9sZS0ke2FjY291bnR9LSR7cmVnaW9ufWA7XG5cbiAgcmV0dXJuIHtcbiAgICByZWxhdGl2ZUFzc2V0RmlsZSxcbiAgICBidWNrZXROYW1lLFxuICAgIGFzc3VtZVJvbGVBcm4sXG4gIH07XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB3cml0ZURvY2tlckFzc2V0KGZpeHR1cmU6IFRlc3RGaXh0dXJlKSB7XG4gIGNvbnN0IHJlbGF0aXZlSW1hZ2VEaXIgPSAnaW1hZ2VkaXInO1xuICBjb25zdCBhYnNvbHV0ZUltYWdlRGlyID0gcGF0aC5qb2luKGZpeHR1cmUuaW50ZWdUZXN0RGlyLCByZWxhdGl2ZUltYWdlRGlyKTtcbiAgYXdhaXQgZnMubWtkaXIoYWJzb2x1dGVJbWFnZURpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cbiAgZm9yIChjb25zdCB0b0NyZWF0ZSBvZiBbYCR7YWJzb2x1dGVJbWFnZURpcn0vZGF0YWZpbGUudHh0YF0pIHtcbiAgICBhd2FpdCBmcy53cml0ZUZpbGUodG9DcmVhdGUsICdzb21lIGFzc2V0IGZpbGUnKTtcbiAgfVxuXG4gIGF3YWl0IGZzLndyaXRlRmlsZShwYXRoLmpvaW4oYWJzb2x1dGVJbWFnZURpciwgJ0RvY2tlcmZpbGUnKSwgW1xuICAgICdGUk9NIHNjcmF0Y2gnLFxuICAgICdBREQgZGF0YWZpbGUudHh0IGRhdGFmaWxlLnR4dCcsXG4gIF0uam9pbignXFxuJykpO1xuXG4gIGNvbnN0IGFjY291bnQgPSBhd2FpdCBmaXh0dXJlLmF3cy5hY2NvdW50KCk7XG4gIGNvbnN0IHJlZ2lvbiA9IGZpeHR1cmUuYXdzLnJlZ2lvbjtcbiAgY29uc3QgcmVwb3NpdG9yeU5hbWUgPSBgY2RrLSR7Zml4dHVyZS5xdWFsaWZpZXJ9LWNvbnRhaW5lci1hc3NldHMtJHthY2NvdW50fS0ke3JlZ2lvbn1gO1xuICBjb25zdCBhc3N1bWVSb2xlQXJuID0gYGFybjpcXCR7QVdTOjpQYXJ0aXRpb259OmlhbTo6JHthY2NvdW50fTpyb2xlL2Nkay0ke2ZpeHR1cmUucXVhbGlmaWVyfS1pbWFnZS1wdWJsaXNoaW5nLXJvbGUtJHthY2NvdW50fS0ke3JlZ2lvbn1gO1xuICBjb25zdCByZXBvc2l0b3J5RG9tYWluID0gYCR7YWNjb3VudH0uZGtyLmVjci4ke3JlZ2lvbn0uYW1hem9uYXdzLmNvbWA7XG5cbiAgcmV0dXJuIHtcbiAgICByZXBvc2l0b3J5TmFtZSxcbiAgICBhc3N1bWVSb2xlQXJuLFxuICAgIHJlbGF0aXZlSW1hZ2VEaXIsXG4gICAgcmVwb3NpdG9yeURvbWFpbixcbiAgfTtcbn1cbiJdfQ==