UNPKG

@aws-community/ephemeral

Version:

Ephemeral Stacks! A CDK Stack and Construct that will self-destruct after a specified time period.

20 lines 2.58 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.DestroyMeConstruct = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const aws_cdk_lib_1 = require("aws-cdk-lib"); const self_destruct_aspect_1 = require("./self-destruct-aspect"); const constructs_1 = require("constructs"); class DestroyMeConstruct extends constructs_1.Construct { constructor(scope, id, props = {}) { super(scope, id); const { duration } = props; aws_cdk_lib_1.Tags.of(aws_cdk_lib_1.Stack.of(this)).add('STACK_LIFE', duration.toSeconds().toString()); aws_cdk_lib_1.Aspects.of(aws_cdk_lib_1.Stack.of(this)).add(new self_destruct_aspect_1.SelfDestructAspect()); } } _a = JSII_RTTI_SYMBOL_1; DestroyMeConstruct[_a] = { fqn: "@aws-community/ephemeral.DestroyMeConstruct", version: "2.1.0" }; exports.DestroyMeConstruct = DestroyMeConstruct; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzdHJveS1tZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXN0cm95LW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQTZEO0FBQzdELGlFQUE0RDtBQUM1RCwyQ0FBdUM7QUFNdkMsTUFBYSxrQkFBbUIsU0FBUSxzQkFBUztJQUMvQyxZQUFhLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQWlDLEVBQ2hEO1FBQzFCLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLEtBQUssQ0FBQztRQUMzQixrQkFBSSxDQUFDLEVBQUUsQ0FBQyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFFM0UscUJBQU8sQ0FBQyxFQUFFLENBQUMsbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSx5Q0FBa0IsRUFBRSxDQUFDLENBQUM7SUFDM0QsQ0FBQzs7OztBQVRVLGdEQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzcGVjdHMsIER1cmF0aW9uLCBTdGFjaywgVGFncyB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IFNlbGZEZXN0cnVjdEFzcGVjdCB9IGZyb20gJy4vc2VsZi1kZXN0cnVjdC1hc3BlY3QnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVzdHJveU1lQ29uc3RydWN0UHJvcHMge1xuICByZWFkb25seSBkdXJhdGlvbjogRHVyYXRpb25cbn1cblxuZXhwb3J0IGNsYXNzIERlc3Ryb3lNZUNvbnN0cnVjdCBleHRlbmRzIENvbnN0cnVjdCB7XG4gIGNvbnN0cnVjdG9yIChzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGVzdHJveU1lQ29uc3RydWN0UHJvcHMgPSB7XG4gIH0gYXMgRGVzdHJveU1lQ29uc3RydWN0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgeyBkdXJhdGlvbiB9ID0gcHJvcHM7XG4gICAgVGFncy5vZihTdGFjay5vZih0aGlzKSkuYWRkKCdTVEFDS19MSUZFJywgZHVyYXRpb24udG9TZWNvbmRzKCkudG9TdHJpbmcoKSk7XG5cbiAgICBBc3BlY3RzLm9mKFN0YWNrLm9mKHRoaXMpKS5hZGQobmV3IFNlbGZEZXN0cnVjdEFzcGVjdCgpKTtcbiAgfVxufVxuIl19