UNPKG

@aws-cdk-testing/cli-integ

Version:

Integration tests for the AWS CDK CLI

38 lines 5.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const client_s3_1 = require("@aws-sdk/client-s3"); const lib_1 = require("../../../lib"); (0, lib_1.integTest)('deploy stack with Lambda Asset to Object Lock-enabled asset bucket', (0, lib_1.withoutBootstrap)(async (fixture) => { // Bootstrapping with custom toolkit stack name and qualifier const qualifier = fixture.qualifier; const toolkitStackName = fixture.bootstrapStackName; await fixture.cdkBootstrapModern({ verbose: true, toolkitStackName: toolkitStackName, qualifier: qualifier, }); const bucketName = `cdk-${qualifier}-assets-${await fixture.aws.account()}-${fixture.aws.region}`; await fixture.aws.s3.send(new client_s3_1.PutObjectLockConfigurationCommand({ Bucket: bucketName, ObjectLockConfiguration: { ObjectLockEnabled: 'Enabled', Rule: { DefaultRetention: { Days: 1, Mode: 'GOVERNANCE', }, }, }, })); // Deploy a stack that definitely contains a file asset await fixture.cdkDeploy('lambda', { options: [ '--toolkit-stack-name', toolkitStackName, '--context', `@aws-cdk/core:bootstrapQualifier=${qualifier}`, ], }); // THEN - should not fail. Now clean the bucket with governance bypass: a regular delete // operation will fail. await fixture.aws.emptyBucket(bucketName, { bypassGovernance: true }); })); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLWRlcGxveS1zdGFjay13aXRoLWxhbWJkYS1hc3NldC10by1vYmplY3QtbG9jay1lbmFibGVkLWFzc2V0LWJ1Y2tldC5pbnRlZ3Rlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjZGstZGVwbG95LXN0YWNrLXdpdGgtbGFtYmRhLWFzc2V0LXRvLW9iamVjdC1sb2NrLWVuYWJsZWQtYXNzZXQtYnVja2V0LmludGVndGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGtEQUF1RTtBQUN2RSxzQ0FBMkQ7QUFFM0QsSUFBQSxlQUFTLEVBQUMsb0VBQW9FLEVBQUUsSUFBQSxzQkFBZ0IsRUFBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7SUFDakgsNkRBQTZEO0lBQzdELE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7SUFDcEMsTUFBTSxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUM7SUFDcEQsTUFBTSxPQUFPLENBQUMsa0JBQWtCLENBQUM7UUFDL0IsT0FBTyxFQUFFLElBQUk7UUFDYixnQkFBZ0IsRUFBRSxnQkFBZ0I7UUFDbEMsU0FBUyxFQUFFLFNBQVM7S0FDckIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxVQUFVLEdBQUcsT0FBTyxTQUFTLFdBQVcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDbEcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSw2Q0FBaUMsQ0FBQztRQUM5RCxNQUFNLEVBQUUsVUFBVTtRQUNsQix1QkFBdUIsRUFBRTtZQUN2QixpQkFBaUIsRUFBRSxTQUFTO1lBQzVCLElBQUksRUFBRTtnQkFDSixnQkFBZ0IsRUFBRTtvQkFDaEIsSUFBSSxFQUFFLENBQUM7b0JBQ1AsSUFBSSxFQUFFLFlBQVk7aUJBQ25CO2FBQ0Y7U0FDRjtLQUNGLENBQUMsQ0FBQyxDQUFDO0lBRUosdURBQXVEO0lBQ3ZELE1BQU0sT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUU7UUFDaEMsT0FBTyxFQUFFO1lBQ1Asc0JBQXNCLEVBQUUsZ0JBQWdCO1lBQ3hDLFdBQVcsRUFBRSxvQ0FBb0MsU0FBUyxFQUFFO1NBQzdEO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsd0ZBQXdGO0lBQ3hGLHVCQUF1QjtJQUN2QixNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7QUFDeEUsQ0FBQyxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFB1dE9iamVjdExvY2tDb25maWd1cmF0aW9uQ29tbWFuZCB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1zMyc7XG5pbXBvcnQgeyBpbnRlZ1Rlc3QsIHdpdGhvdXRCb290c3RyYXAgfSBmcm9tICcuLi8uLi8uLi9saWInO1xuXG5pbnRlZ1Rlc3QoJ2RlcGxveSBzdGFjayB3aXRoIExhbWJkYSBBc3NldCB0byBPYmplY3QgTG9jay1lbmFibGVkIGFzc2V0IGJ1Y2tldCcsIHdpdGhvdXRCb290c3RyYXAoYXN5bmMgKGZpeHR1cmUpID0+IHtcbiAgLy8gQm9vdHN0cmFwcGluZyB3aXRoIGN1c3RvbSB0b29sa2l0IHN0YWNrIG5hbWUgYW5kIHF1YWxpZmllclxuICBjb25zdCBxdWFsaWZpZXIgPSBmaXh0dXJlLnF1YWxpZmllcjtcbiAgY29uc3QgdG9vbGtpdFN0YWNrTmFtZSA9IGZpeHR1cmUuYm9vdHN0cmFwU3RhY2tOYW1lO1xuICBhd2FpdCBmaXh0dXJlLmNka0Jvb3RzdHJhcE1vZGVybih7XG4gICAgdmVyYm9zZTogdHJ1ZSxcbiAgICB0b29sa2l0U3RhY2tOYW1lOiB0b29sa2l0U3RhY2tOYW1lLFxuICAgIHF1YWxpZmllcjogcXVhbGlmaWVyLFxuICB9KTtcblxuICBjb25zdCBidWNrZXROYW1lID0gYGNkay0ke3F1YWxpZmllcn0tYXNzZXRzLSR7YXdhaXQgZml4dHVyZS5hd3MuYWNjb3VudCgpfS0ke2ZpeHR1cmUuYXdzLnJlZ2lvbn1gO1xuICBhd2FpdCBmaXh0dXJlLmF3cy5zMy5zZW5kKG5ldyBQdXRPYmplY3RMb2NrQ29uZmlndXJhdGlvbkNvbW1hbmQoe1xuICAgIEJ1Y2tldDogYnVja2V0TmFtZSxcbiAgICBPYmplY3RMb2NrQ29uZmlndXJhdGlvbjoge1xuICAgICAgT2JqZWN0TG9ja0VuYWJsZWQ6ICdFbmFibGVkJyxcbiAgICAgIFJ1bGU6IHtcbiAgICAgICAgRGVmYXVsdFJldGVudGlvbjoge1xuICAgICAgICAgIERheXM6IDEsXG4gICAgICAgICAgTW9kZTogJ0dPVkVSTkFOQ0UnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9KSk7XG5cbiAgLy8gRGVwbG95IGEgc3RhY2sgdGhhdCBkZWZpbml0ZWx5IGNvbnRhaW5zIGEgZmlsZSBhc3NldFxuICBhd2FpdCBmaXh0dXJlLmNka0RlcGxveSgnbGFtYmRhJywge1xuICAgIG9wdGlvbnM6IFtcbiAgICAgICctLXRvb2xraXQtc3RhY2stbmFtZScsIHRvb2xraXRTdGFja05hbWUsXG4gICAgICAnLS1jb250ZXh0JywgYEBhd3MtY2RrL2NvcmU6Ym9vdHN0cmFwUXVhbGlmaWVyPSR7cXVhbGlmaWVyfWAsXG4gICAgXSxcbiAgfSk7XG5cbiAgLy8gVEhFTiAtIHNob3VsZCBub3QgZmFpbC4gTm93IGNsZWFuIHRoZSBidWNrZXQgd2l0aCBnb3Zlcm5hbmNlIGJ5cGFzczogYSByZWd1bGFyIGRlbGV0ZVxuICAvLyBvcGVyYXRpb24gd2lsbCBmYWlsLlxuICBhd2FpdCBmaXh0dXJlLmF3cy5lbXB0eUJ1Y2tldChidWNrZXROYW1lLCB7IGJ5cGFzc0dvdmVybmFuY2U6IHRydWUgfSk7XG59KSk7XG5cbiJdfQ==