@aws-community/ephemeral
Version:
Ephemeral Stacks! A CDK Stack and Construct that will self-destruct after a specified time period.
25 lines • 2.83 kB
JavaScript
;
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DestroyMeStack = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const aws_cdk_lib_1 = require("aws-cdk-lib");
const destroy_me_1 = require("./destroy-me");
class DestroyMeStack extends aws_cdk_lib_1.Stack {
constructor(scope, id, props = {}) {
super(scope, id, props);
const { destroyMeEnable: enable, destroyMeDuration: duration, } = props;
if (enable) {
new destroy_me_1.DestroyMeConstruct(this, 'DestroyMeConstruct', {
duration: duration ?? aws_cdk_lib_1.Duration.days(7),
});
}
else {
console.log('DestroyMe: disabled');
}
}
}
_a = JSII_RTTI_SYMBOL_1;
DestroyMeStack[_a] = { fqn: "@aws-community/ephemeral.DestroyMeStack", version: "2.1.0" };
exports.DestroyMeStack = DestroyMeStack;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzdHJveS1tZS1zdGFjay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXN0cm95LW1lLXN0YWNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQTBEO0FBQzFELDZDQUFrRDtBQU9sRCxNQUFhLGNBQWUsU0FBUSxtQkFBSztJQUN2QyxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixRQUE2QixFQUNMO1FBRXhCLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLE1BQU0sRUFDSixlQUFlLEVBQUUsTUFBTSxFQUN2QixpQkFBaUIsRUFBRSxRQUFRLEdBQzVCLEdBQUcsS0FBSyxDQUFDO1FBRVYsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLCtCQUFrQixDQUFDLElBQUksRUFBRSxvQkFBb0IsRUFBRTtnQkFDakQsUUFBUSxFQUFFLFFBQVEsSUFBSSxzQkFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDdkMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztTQUNwQztJQUNILENBQUM7Ozs7QUFwQlUsd0NBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGFja1Byb3BzLCBEdXJhdGlvbiwgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBEZXN0cm95TWVDb25zdHJ1Y3QgfSBmcm9tICcuL2Rlc3Ryb3ktbWUnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVzdHJveU1lU3RhY2tQcm9wcyBleHRlbmRzIFN0YWNrUHJvcHMge1xuICByZWFkb25seSBkZXN0cm95TWVEdXJhdGlvbj86IER1cmF0aW9uXG4gIHJlYWRvbmx5IGRlc3Ryb3lNZUVuYWJsZT86IGJvb2xlYW5cbn1cbmV4cG9ydCBjbGFzcyBEZXN0cm95TWVTdGFjayBleHRlbmRzIFN0YWNrIHtcbiAgY29uc3RydWN0b3IgKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogRGVzdHJveU1lU3RhY2tQcm9wcyA9IHtcbiAgICB9IGFzIERlc3Ryb3lNZVN0YWNrUHJvcHMsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIGNvbnN0IHtcbiAgICAgIGRlc3Ryb3lNZUVuYWJsZTogZW5hYmxlLFxuICAgICAgZGVzdHJveU1lRHVyYXRpb246IGR1cmF0aW9uLFxuICAgIH0gPSBwcm9wcztcblxuICAgIGlmIChlbmFibGUpIHtcbiAgICAgIG5ldyBEZXN0cm95TWVDb25zdHJ1Y3QodGhpcywgJ0Rlc3Ryb3lNZUNvbnN0cnVjdCcsIHtcbiAgICAgICAgZHVyYXRpb246IGR1cmF0aW9uID8/IER1cmF0aW9uLmRheXMoNyksXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5sb2coJ0Rlc3Ryb3lNZTogZGlzYWJsZWQnKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==