UNPKG

@aws-cdk-testing/cli-integ

Version:

Integration tests for the AWS CDK CLI

49 lines (39 loc) 1.43 kB
import { ListImagesCommand } from '@aws-sdk/client-ecr'; import { integTest, withoutBootstrap } from '../../lib'; jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime integTest( 'Garbage Collection keeps in use ecr images', withoutBootstrap(async (fixture) => { const toolkitStackName = fixture.bootstrapStackName; await fixture.cdkBootstrapModern({ toolkitStackName, }); const repoName = await fixture.bootstrapRepoName(); await fixture.cdkDeploy('docker-in-use', { options: [ '--context', `@aws-cdk/core:bootstrapQualifier=${fixture.qualifier}`, '--toolkit-stack-name', toolkitStackName, '--force', ], }); fixture.log('Setup complete!'); await fixture.cdkGarbageCollect({ rollbackBufferDays: 0, type: 'ecr', bootstrapStackName: toolkitStackName, }); fixture.log('Garbage collection complete!'); // assert that the bootstrap repository is empty await fixture.aws.ecr.send(new ListImagesCommand({ repositoryName: repoName })) .then((result) => { expect(result.imageIds).toHaveLength(1); }); await fixture.cdkDestroy('docker-in-use', { options: [ '--context', `@aws-cdk/core:bootstrapQualifier=${fixture.qualifier}`, '--toolkit-stack-name', toolkitStackName, '--force', ], }); }), );