@aws-cdk-testing/cli-integ
Version:
Integration tests for the AWS CDK CLI
25 lines • 4.2 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");
(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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLWJvb3RzdHJhcC1jcmVhdGUtZWNyLXdpdGgtdGFnLWltbXV0YWJpbGl0eS10by1zZXQtb24uaW50ZWd0ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2RrLWJvb3RzdHJhcC1jcmVhdGUtZWNyLXdpdGgtdGFnLWltbXV0YWJpbGl0eS10by1zZXQtb24uaW50ZWd0ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMEVBQStFO0FBQy9FLG9EQUFrRTtBQUNsRSxzQ0FBMkQ7QUFFM0QsSUFBQSxlQUFTLEVBQUMsNENBQTRDLEVBQUUsSUFBQSxzQkFBZ0IsRUFBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7SUFDekYsTUFBTSxrQkFBa0IsR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUM7SUFFdEQsTUFBTSxPQUFPLENBQUMsa0JBQWtCLENBQUM7UUFDL0IsT0FBTyxFQUFFLElBQUk7UUFDYixnQkFBZ0IsRUFBRSxrQkFBa0I7S0FDckMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxRQUFRLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQ3BELElBQUkscURBQTZCLENBQUM7UUFDaEMsU0FBUyxFQUFFLGtCQUFrQjtLQUM5QixDQUFDLENBQ0gsQ0FBQztJQUNGLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLGlCQUFpQixLQUFLLDJCQUEyQixDQUFDLENBQUM7SUFDMUgsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBRWxDLE1BQU0sV0FBVyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUM1QyxJQUFJLHdDQUEyQixDQUFDO1FBQzlCLGVBQWUsRUFBRTtZQUNmLGlEQUFpRDtZQUNqRCxXQUFXLEVBQUUsa0JBQWtCLElBQUksRUFBRTtTQUN0QztLQUNGLENBQUMsQ0FDSCxDQUFDO0lBRUYsTUFBTSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUNoRixDQUFDLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzY3JpYmVTdGFja1Jlc291cmNlc0NvbW1hbmQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtY2xvdWRmb3JtYXRpb24nO1xuaW1wb3J0IHsgRGVzY3JpYmVSZXBvc2l0b3JpZXNDb21tYW5kIH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWVjcic7XG5pbXBvcnQgeyBpbnRlZ1Rlc3QsIHdpdGhvdXRCb290c3RyYXAgfSBmcm9tICcuLi8uLi8uLi9saWInO1xuXG5pbnRlZ1Rlc3QoJ2NyZWF0ZSBFQ1Igd2l0aCB0YWcgSU1NVVRBQklMSVRZIHRvIHNldCBvbicsIHdpdGhvdXRCb290c3RyYXAoYXN5bmMgKGZpeHR1cmUpID0+IHtcbiAgY29uc3QgYm9vdHN0cmFwU3RhY2tOYW1lID0gZml4dHVyZS5ib290c3RyYXBTdGFja05hbWU7XG5cbiAgYXdhaXQgZml4dHVyZS5jZGtCb290c3RyYXBNb2Rlcm4oe1xuICAgIHZlcmJvc2U6IHRydWUsXG4gICAgdG9vbGtpdFN0YWNrTmFtZTogYm9vdHN0cmFwU3RhY2tOYW1lLFxuICB9KTtcblxuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZpeHR1cmUuYXdzLmNsb3VkRm9ybWF0aW9uLnNlbmQoXG4gICAgbmV3IERlc2NyaWJlU3RhY2tSZXNvdXJjZXNDb21tYW5kKHtcbiAgICAgIFN0YWNrTmFtZTogYm9vdHN0cmFwU3RhY2tOYW1lLFxuICAgIH0pLFxuICApO1xuICBjb25zdCBlY3JSZXNvdXJjZSA9IHJlc3BvbnNlLlN0YWNrUmVzb3VyY2VzPy5maW5kKHJlc291cmNlID0+IHJlc291cmNlLkxvZ2ljYWxSZXNvdXJjZUlkID09PSAnQ29udGFpbmVyQXNzZXRzUmVwb3NpdG9yeScpO1xuICBleHBlY3QoZWNyUmVzb3VyY2UpLnRvQmVEZWZpbmVkKCk7XG5cbiAgY29uc3QgZWNyUmVzcG9uc2UgPSBhd2FpdCBmaXh0dXJlLmF3cy5lY3Iuc2VuZChcbiAgICBuZXcgRGVzY3JpYmVSZXBvc2l0b3JpZXNDb21tYW5kKHtcbiAgICAgIHJlcG9zaXRvcnlOYW1lczogW1xuICAgICAgICAvLyBUaGlzIGlzIHNldCwgYXMgb3RoZXJ3aXNlIHdlIGRvbid0IGVuZCB1cCBoZXJlXG4gICAgICAgIGVjclJlc291cmNlPy5QaHlzaWNhbFJlc291cmNlSWQgPz8gJycsXG4gICAgICBdLFxuICAgIH0pLFxuICApO1xuXG4gIGV4cGVjdChlY3JSZXNwb25zZS5yZXBvc2l0b3JpZXM/LlswXS5pbWFnZVRhZ011dGFiaWxpdHkpLnRvRXF1YWwoJ0lNTVVUQUJMRScpO1xufSkpO1xuXG4iXX0=