@aws-cdk-testing/cli-integ
Version:
Integration tests for the AWS CDK CLI
26 lines • 4.56 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const client_cloudformation_1 = require("@aws-sdk/client-cloudformation");
const client_ecr_1 = require("@aws-sdk/client-ecr");
const lib_1 = require("../../../lib");
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
(0, lib_1.integTest)('create ECR with tag IMMUTABILITY to set on', (0, lib_1.withoutBootstrap)(async (fixture) => {
const bootstrapStackName = fixture.bootstrapStackName;
await fixture.cdkBootstrapModern({
verbose: true,
toolkitStackName: bootstrapStackName,
});
const response = await fixture.aws.cloudFormation.send(new client_cloudformation_1.DescribeStackResourcesCommand({
StackName: bootstrapStackName,
}));
const ecrResource = response.StackResources?.find(resource => resource.LogicalResourceId === 'ContainerAssetsRepository');
expect(ecrResource).toBeDefined();
const ecrResponse = await fixture.aws.ecr.send(new client_ecr_1.DescribeRepositoriesCommand({
repositoryNames: [
// This is set, as otherwise we don't end up here
ecrResource?.PhysicalResourceId ?? '',
],
}));
expect(ecrResponse.repositories?.[0].imageTagMutability).toEqual('IMMUTABLE');
}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLWJvb3RzdHJhcC1jcmVhdGUtZWNyLXdpdGgtdGFnLWltbXV0YWJpbGl0eS10by1zZXQtb24uaW50ZWd0ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2RrLWJvb3RzdHJhcC1jcmVhdGUtZWNyLXdpdGgtdGFnLWltbXV0YWJpbGl0eS10by1zZXQtb24uaW50ZWd0ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMEVBQStFO0FBQy9FLG9EQUFrRTtBQUNsRSxzQ0FBMkQ7QUFFM0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMseUVBQXlFO0FBRTNHLElBQUEsZUFBUyxFQUFDLDRDQUE0QyxFQUFFLElBQUEsc0JBQWdCLEVBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO0lBQ3pGLE1BQU0sa0JBQWtCLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDO0lBRXRELE1BQU0sT0FBTyxDQUFDLGtCQUFrQixDQUFDO1FBQy9CLE9BQU8sRUFBRSxJQUFJO1FBQ2IsZ0JBQWdCLEVBQUUsa0JBQWtCO0tBQ3JDLENBQUMsQ0FBQztJQUVILE1BQU0sUUFBUSxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUNwRCxJQUFJLHFEQUE2QixDQUFDO1FBQ2hDLFNBQVMsRUFBRSxrQkFBa0I7S0FDOUIsQ0FBQyxDQUNILENBQUM7SUFDRixNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsS0FBSywyQkFBMkIsQ0FBQyxDQUFDO0lBQzFILE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUVsQyxNQUFNLFdBQVcsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FDNUMsSUFBSSx3Q0FBMkIsQ0FBQztRQUM5QixlQUFlLEVBQUU7WUFDZixpREFBaUQ7WUFDakQsV0FBVyxFQUFFLGtCQUFrQixJQUFJLEVBQUU7U0FDdEM7S0FDRixDQUFDLENBQ0gsQ0FBQztJQUVGLE1BQU0sQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDaEYsQ0FBQyxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlc2NyaWJlU3RhY2tSZXNvdXJjZXNDb21tYW5kIH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWNsb3VkZm9ybWF0aW9uJztcbmltcG9ydCB7IERlc2NyaWJlUmVwb3NpdG9yaWVzQ29tbWFuZCB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1lY3InO1xuaW1wb3J0IHsgaW50ZWdUZXN0LCB3aXRob3V0Qm9vdHN0cmFwIH0gZnJvbSAnLi4vLi4vLi4vbGliJztcblxuamVzdC5zZXRUaW1lb3V0KDIgKiA2MCAqIDYwXzAwMCk7IC8vIEluY2x1ZGVzIHRoZSB0aW1lIHRvIGFjcXVpcmUgbG9ja3MsIHdvcnN0LWNhc2Ugc2luZ2xlLXRocmVhZGVkIHJ1bnRpbWVcblxuaW50ZWdUZXN0KCdjcmVhdGUgRUNSIHdpdGggdGFnIElNTVVUQUJJTElUWSB0byBzZXQgb24nLCB3aXRob3V0Qm9vdHN0cmFwKGFzeW5jIChmaXh0dXJlKSA9PiB7XG4gIGNvbnN0IGJvb3RzdHJhcFN0YWNrTmFtZSA9IGZpeHR1cmUuYm9vdHN0cmFwU3RhY2tOYW1lO1xuXG4gIGF3YWl0IGZpeHR1cmUuY2RrQm9vdHN0cmFwTW9kZXJuKHtcbiAgICB2ZXJib3NlOiB0cnVlLFxuICAgIHRvb2xraXRTdGFja05hbWU6IGJvb3RzdHJhcFN0YWNrTmFtZSxcbiAgfSk7XG5cbiAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmaXh0dXJlLmF3cy5jbG91ZEZvcm1hdGlvbi5zZW5kKFxuICAgIG5ldyBEZXNjcmliZVN0YWNrUmVzb3VyY2VzQ29tbWFuZCh7XG4gICAgICBTdGFja05hbWU6IGJvb3RzdHJhcFN0YWNrTmFtZSxcbiAgICB9KSxcbiAgKTtcbiAgY29uc3QgZWNyUmVzb3VyY2UgPSByZXNwb25zZS5TdGFja1Jlc291cmNlcz8uZmluZChyZXNvdXJjZSA9PiByZXNvdXJjZS5Mb2dpY2FsUmVzb3VyY2VJZCA9PT0gJ0NvbnRhaW5lckFzc2V0c1JlcG9zaXRvcnknKTtcbiAgZXhwZWN0KGVjclJlc291cmNlKS50b0JlRGVmaW5lZCgpO1xuXG4gIGNvbnN0IGVjclJlc3BvbnNlID0gYXdhaXQgZml4dHVyZS5hd3MuZWNyLnNlbmQoXG4gICAgbmV3IERlc2NyaWJlUmVwb3NpdG9yaWVzQ29tbWFuZCh7XG4gICAgICByZXBvc2l0b3J5TmFtZXM6IFtcbiAgICAgICAgLy8gVGhpcyBpcyBzZXQsIGFzIG90aGVyd2lzZSB3ZSBkb24ndCBlbmQgdXAgaGVyZVxuICAgICAgICBlY3JSZXNvdXJjZT8uUGh5c2ljYWxSZXNvdXJjZUlkID8/ICcnLFxuICAgICAgXSxcbiAgICB9KSxcbiAgKTtcblxuICBleHBlY3QoZWNyUmVzcG9uc2UucmVwb3NpdG9yaWVzPy5bMF0uaW1hZ2VUYWdNdXRhYmlsaXR5KS50b0VxdWFsKCdJTU1VVEFCTEUnKTtcbn0pKTtcblxuIl19