@fjall/components-infrastructure 0.1.40 → 0.1.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,7 +6,7 @@ interface ProxyAgentProps extends StackProps {
6
6
  accountId?: string;
7
7
  vpcId?: string;
8
8
  publicKey: string;
9
- enableSsh?: boolean;
9
+ enableSSH?: boolean;
10
10
  instanceType: string;
11
11
  databaseConnection?: Connections;
12
12
  tags?: KeyValue;
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FivetranProxy = void 0;
4
4
  const aws_cdk_lib_1 = require("aws-cdk-lib");
5
- const ec2_1 = require("./ec2");
5
+ const ec2_1 = require("../../resources/aws/compute/ec2");
6
6
  const aws_ec2_1 = require("aws-cdk-lib/aws-ec2");
7
7
  class FivetranProxy extends aws_cdk_lib_1.Stack {
8
8
  constructor(scope, id, props) {
@@ -14,7 +14,7 @@ class FivetranProxy extends aws_cdk_lib_1.Stack {
14
14
  serviceName: "fivetranProxy",
15
15
  vpcId: props.vpcId,
16
16
  instanceType: props.instanceType || "t2.micro",
17
- enableSSH: props.enableSsh || true,
17
+ enableSSH: props.enableSSH || true,
18
18
  env: {
19
19
  account: props.env?.account,
20
20
  region: props.env?.region
@@ -30,4 +30,4 @@ class FivetranProxy extends aws_cdk_lib_1.Stack {
30
30
  }
31
31
  }
32
32
  exports.FivetranProxy = FivetranProxy;
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml2ZXRyYW5Qcm94eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9wYXR0ZXJucy9hd3MvZml2ZXRyYW5Qcm94eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBZ0Q7QUFDaEQsK0JBQW9DO0FBR3BDLGlEQUE0RDtBQVk1RCxNQUFhLGFBQWMsU0FBUSxtQkFBSztJQUN0QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXNCO1FBQzlELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXhCLE1BQU0sUUFBUSxHQUFHLGtCQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFckMsUUFBUSxDQUFDLFdBQVcsQ0FDbEIsbUJBQW1CLEVBQ25CLGlDQUFpQyxFQUNqQyw4QkFBOEIsRUFDOUIsNkNBQTZDLEVBQzdDLCtCQUErQixFQUMvQixTQUFTLEtBQUssQ0FBQyxTQUFTLHlDQUF5QyxFQUNqRSw2REFBNkQsRUFDN0QsK0NBQStDLENBQ2hELENBQUM7UUFFRixJQUFJLGlCQUFXLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRTtZQUNyQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7WUFDMUIsV0FBVyxFQUFFLGVBQWU7WUFDNUIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWSxJQUFJLFVBQVU7WUFDOUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLElBQUksSUFBSTtZQUNsQyxHQUFHLEVBQUU7Z0JBQ0gsT0FBTyxFQUFFLEtBQUssQ0FBQyxHQUFHLEVBQUUsT0FBTztnQkFDM0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxHQUFHLEVBQUUsTUFBTTthQUMxQjtZQUNELFFBQVEsRUFBRSxRQUFRO1lBQ2xCLElBQUksRUFBRTtnQkFDSixHQUFHLEtBQUssQ0FBQyxJQUFJO2dCQUNiLGtDQUFrQyxFQUFFLFlBQVk7Z0JBQ2hELDhCQUE4QixFQUFFLFVBQVU7Z0JBQzFDLDRCQUE0QixFQUFFLE1BQU07YUFDckM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFwQ0Qsc0NBb0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RhY2ssIFN0YWNrUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEVjMkluc3RhbmNlIH0gZnJvbSBcIi4vZWMyXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgS2V5VmFsdWUgfSBmcm9tIFwiLi4vLi4vdHlwZXNcIjtcbmltcG9ydCB7IENvbm5lY3Rpb25zLCBVc2VyRGF0YSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5cbmludGVyZmFjZSBQcm94eUFnZW50UHJvcHMgZXh0ZW5kcyBTdGFja1Byb3BzIHtcbiAgYWNjb3VudElkPzogc3RyaW5nO1xuICB2cGNJZD86IHN0cmluZztcbiAgcHVibGljS2V5OiBzdHJpbmc7XG4gIGVuYWJsZVNzaD86IGJvb2xlYW47XG4gIGluc3RhbmNlVHlwZTogc3RyaW5nO1xuICBkYXRhYmFzZUNvbm5lY3Rpb24/OiBDb25uZWN0aW9ucztcbiAgdGFncz86IEtleVZhbHVlO1xufVxuXG5leHBvcnQgY2xhc3MgRml2ZXRyYW5Qcm94eSBleHRlbmRzIFN0YWNrIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFByb3h5QWdlbnRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgY29uc3QgdXNlckRhdGEgPSBVc2VyRGF0YS5mb3JMaW51eCgpO1xuXG4gICAgdXNlckRhdGEuYWRkQ29tbWFuZHMoXG4gICAgICBcImdyb3VwYWRkIGZpdmV0cmFuXCIsXG4gICAgICBcInVzZXJhZGQgLW0gLWcgZml2ZXRyYW4gZml2ZXRyYW5cIixcbiAgICAgIFwibWtkaXIgLXAgL2hvbWUvZml2ZXRyYW4vLnNzaFwiLFxuICAgICAgXCJjaG93biBmaXZldHJhbjpmaXZldHJhbiAvaG9tZS9maXZldHJhbi8uc3NoXCIsXG4gICAgICBcImNobW9kIDcwMCAvaG9tZS9maXZldHJhbi8uc3NoXCIsXG4gICAgICBgZWNobyBcIiR7cHJvcHMucHVibGljS2V5fVwiID4gL2hvbWUvZml2ZXRyYW4vLnNzaC9hdXRob3JpemVkX2tleXNgLFxuICAgICAgXCJjaG93biBmaXZldHJhbjpmaXZldHJhbiAvaG9tZS9maXZldHJhbi8uc3NoL2F1dGhvcml6ZWRfa2V5c1wiLFxuICAgICAgXCJjaG1vZCA2MDAgL2hvbWUvZml2ZXRyYW4vLnNzaC9hdXRob3JpemVkX2tleXNcIlxuICAgICk7XG5cbiAgICBuZXcgRWMySW5zdGFuY2UodGhpcywgXCJGaXZldHJhblByb3h5XCIsIHtcbiAgICAgIGFjY291bnRJZDogcHJvcHMuYWNjb3VudElkLFxuICAgICAgc2VydmljZU5hbWU6IFwiZml2ZXRyYW5Qcm94eVwiLFxuICAgICAgdnBjSWQ6IHByb3BzLnZwY0lkLFxuICAgICAgaW5zdGFuY2VUeXBlOiBwcm9wcy5pbnN0YW5jZVR5cGUgfHwgXCJ0Mi5taWNyb1wiLFxuICAgICAgZW5hYmxlU1NIOiBwcm9wcy5lbmFibGVTc2ggfHwgdHJ1ZSxcbiAgICAgIGVudjoge1xuICAgICAgICBhY2NvdW50OiBwcm9wcy5lbnY/LmFjY291bnQsXG4gICAgICAgIHJlZ2lvbjogcHJvcHMuZW52Py5yZWdpb25cbiAgICAgIH0sXG4gICAgICB1c2VyRGF0YTogdXNlckRhdGEsXG4gICAgICB0YWdzOiB7XG4gICAgICAgIC4uLnByb3BzLnRhZ3MsXG4gICAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246ZW52aXJvbm1lbnRcIjogXCJwcm9kdWN0aW9uXCIsXG4gICAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246c2VydmljZVwiOiBcImZpdmV0cmFuXCIsXG4gICAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246b3duZXJcIjogXCJkYXRhXCJcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml2ZXRyYW5Qcm94eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9wYXR0ZXJucy9hd3MvZml2ZXRyYW5Qcm94eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBZ0Q7QUFDaEQseURBQThEO0FBRzlELGlEQUE0RDtBQVk1RCxNQUFhLGFBQWMsU0FBUSxtQkFBSztJQUN0QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXNCO1FBQzlELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXhCLE1BQU0sUUFBUSxHQUFHLGtCQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFckMsUUFBUSxDQUFDLFdBQVcsQ0FDbEIsbUJBQW1CLEVBQ25CLGlDQUFpQyxFQUNqQyw4QkFBOEIsRUFDOUIsNkNBQTZDLEVBQzdDLCtCQUErQixFQUMvQixTQUFTLEtBQUssQ0FBQyxTQUFTLHlDQUF5QyxFQUNqRSw2REFBNkQsRUFDN0QsK0NBQStDLENBQ2hELENBQUM7UUFFRixJQUFJLGlCQUFXLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRTtZQUNyQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7WUFDMUIsV0FBVyxFQUFFLGVBQWU7WUFDNUIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWSxJQUFJLFVBQVU7WUFDOUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLElBQUksSUFBSTtZQUNsQyxHQUFHLEVBQUU7Z0JBQ0gsT0FBTyxFQUFFLEtBQUssQ0FBQyxHQUFHLEVBQUUsT0FBTztnQkFDM0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxHQUFHLEVBQUUsTUFBTTthQUMxQjtZQUNELFFBQVEsRUFBRSxRQUFRO1lBQ2xCLElBQUksRUFBRTtnQkFDSixHQUFHLEtBQUssQ0FBQyxJQUFJO2dCQUNiLGtDQUFrQyxFQUFFLFlBQVk7Z0JBQ2hELDhCQUE4QixFQUFFLFVBQVU7Z0JBQzFDLDRCQUE0QixFQUFFLE1BQU07YUFDckM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFwQ0Qsc0NBb0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RhY2ssIFN0YWNrUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEVjMkluc3RhbmNlIH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3MvY29tcHV0ZS9lYzJcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBLZXlWYWx1ZSB9IGZyb20gXCIuLi8uLi90eXBlc1wiO1xuaW1wb3J0IHsgQ29ubmVjdGlvbnMsIFVzZXJEYXRhIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcblxuaW50ZXJmYWNlIFByb3h5QWdlbnRQcm9wcyBleHRlbmRzIFN0YWNrUHJvcHMge1xuICBhY2NvdW50SWQ/OiBzdHJpbmc7XG4gIHZwY0lkPzogc3RyaW5nO1xuICBwdWJsaWNLZXk6IHN0cmluZztcbiAgZW5hYmxlU1NIPzogYm9vbGVhbjtcbiAgaW5zdGFuY2VUeXBlOiBzdHJpbmc7XG4gIGRhdGFiYXNlQ29ubmVjdGlvbj86IENvbm5lY3Rpb25zO1xuICB0YWdzPzogS2V5VmFsdWU7XG59XG5cbmV4cG9ydCBjbGFzcyBGaXZldHJhblByb3h5IGV4dGVuZHMgU3RhY2sge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUHJveHlBZ2VudFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG5cbiAgICBjb25zdCB1c2VyRGF0YSA9IFVzZXJEYXRhLmZvckxpbnV4KCk7XG5cbiAgICB1c2VyRGF0YS5hZGRDb21tYW5kcyhcbiAgICAgIFwiZ3JvdXBhZGQgZml2ZXRyYW5cIixcbiAgICAgIFwidXNlcmFkZCAtbSAtZyBmaXZldHJhbiBmaXZldHJhblwiLFxuICAgICAgXCJta2RpciAtcCAvaG9tZS9maXZldHJhbi8uc3NoXCIsXG4gICAgICBcImNob3duIGZpdmV0cmFuOmZpdmV0cmFuIC9ob21lL2ZpdmV0cmFuLy5zc2hcIixcbiAgICAgIFwiY2htb2QgNzAwIC9ob21lL2ZpdmV0cmFuLy5zc2hcIixcbiAgICAgIGBlY2hvIFwiJHtwcm9wcy5wdWJsaWNLZXl9XCIgPiAvaG9tZS9maXZldHJhbi8uc3NoL2F1dGhvcml6ZWRfa2V5c2AsXG4gICAgICBcImNob3duIGZpdmV0cmFuOmZpdmV0cmFuIC9ob21lL2ZpdmV0cmFuLy5zc2gvYXV0aG9yaXplZF9rZXlzXCIsXG4gICAgICBcImNobW9kIDYwMCAvaG9tZS9maXZldHJhbi8uc3NoL2F1dGhvcml6ZWRfa2V5c1wiXG4gICAgKTtcblxuICAgIG5ldyBFYzJJbnN0YW5jZSh0aGlzLCBcIkZpdmV0cmFuUHJveHlcIiwge1xuICAgICAgYWNjb3VudElkOiBwcm9wcy5hY2NvdW50SWQsXG4gICAgICBzZXJ2aWNlTmFtZTogXCJmaXZldHJhblByb3h5XCIsXG4gICAgICB2cGNJZDogcHJvcHMudnBjSWQsXG4gICAgICBpbnN0YW5jZVR5cGU6IHByb3BzLmluc3RhbmNlVHlwZSB8fCBcInQyLm1pY3JvXCIsXG4gICAgICBlbmFibGVTU0g6IHByb3BzLmVuYWJsZVNTSCB8fCB0cnVlLFxuICAgICAgZW52OiB7XG4gICAgICAgIGFjY291bnQ6IHByb3BzLmVudj8uYWNjb3VudCxcbiAgICAgICAgcmVnaW9uOiBwcm9wcy5lbnY/LnJlZ2lvblxuICAgICAgfSxcbiAgICAgIHVzZXJEYXRhOiB1c2VyRGF0YSxcbiAgICAgIHRhZ3M6IHtcbiAgICAgICAgLi4ucHJvcHMudGFncyxcbiAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjplbnZpcm9ubWVudFwiOiBcInByb2R1Y3Rpb25cIixcbiAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpzZXJ2aWNlXCI6IFwiZml2ZXRyYW5cIixcbiAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpvd25lclwiOiBcImRhdGFcIlxuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -3,6 +3,6 @@ export * from "./managedPlatform";
3
3
  export * from "./managedAccount";
4
4
  export * from "./basicApp";
5
5
  export * from "./buildkite";
6
- export * from "./ec2";
6
+ export * from "../../resources/aws/compute/ec2";
7
7
  export * from "./fivetranProxy";
8
8
  export * from "./database";
@@ -19,7 +19,7 @@ __exportStar(require("./managedPlatform"), exports);
19
19
  __exportStar(require("./managedAccount"), exports);
20
20
  __exportStar(require("./basicApp"), exports);
21
21
  __exportStar(require("./buildkite"), exports);
22
- __exportStar(require("./ec2"), exports);
22
+ __exportStar(require("../../resources/aws/compute/ec2"), exports);
23
23
  __exportStar(require("./fivetranProxy"), exports);
24
24
  __exportStar(require("./database"), exports);
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvcGF0dGVybnMvYXdzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx3REFBc0M7QUFDdEMsb0RBQWtDO0FBQ2xDLG1EQUFpQztBQUNqQyw2Q0FBMkI7QUFDM0IsOENBQTRCO0FBQzVCLHdDQUFzQjtBQUN0QixrREFBZ0M7QUFDaEMsNkNBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vbWFuYWdlZE9yZ2FuaXNhdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbWFuYWdlZFBsYXRmb3JtXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9tYW5hZ2VkQWNjb3VudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vYmFzaWNBcHBcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2J1aWxka2l0ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZWMyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9maXZldHJhblByb3h5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9kYXRhYmFzZVwiO1xuIl19
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvcGF0dGVybnMvYXdzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx3REFBc0M7QUFDdEMsb0RBQWtDO0FBQ2xDLG1EQUFpQztBQUNqQyw2Q0FBMkI7QUFDM0IsOENBQTRCO0FBQzVCLGtFQUFnRDtBQUNoRCxrREFBZ0M7QUFDaEMsNkNBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vbWFuYWdlZE9yZ2FuaXNhdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbWFuYWdlZFBsYXRmb3JtXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9tYW5hZ2VkQWNjb3VudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vYmFzaWNBcHBcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2J1aWxka2l0ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3MvY29tcHV0ZS9lYzJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2ZpdmV0cmFuUHJveHlcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2RhdGFiYXNlXCI7XG4iXX0=
@@ -0,0 +1,39 @@
1
+ import { BlockDevice, IMachineImage, IVpc, UserData, SecurityGroup, IConnectable, Connections, SubnetConfiguration } from "aws-cdk-lib/aws-ec2";
2
+ import { Construct } from "constructs";
3
+ import { Stack, StackProps } from "aws-cdk-lib";
4
+ import { Role } from "aws-cdk-lib/aws-iam";
5
+ import { KeyValue } from "../../../types";
6
+ interface Ec2InstanceProps extends StackProps {
7
+ spotCapacityPercentage?: number;
8
+ blockDevices?: BlockDevice[];
9
+ accountId?: string;
10
+ serviceName: string;
11
+ vpcId?: string;
12
+ subnetConfiguration?: SubnetConfiguration[];
13
+ minCapcity?: number;
14
+ maxCapacity?: number;
15
+ instanceType: string;
16
+ machineImage?: IMachineImage;
17
+ userData?: UserData;
18
+ role?: Role;
19
+ enableSSH?: boolean;
20
+ tags: KeyValue;
21
+ }
22
+ export declare class Ec2Instance extends Construct implements IConnectable {
23
+ private launchTemplate;
24
+ vpc: IVpc;
25
+ asgSecurityGroup: SecurityGroup;
26
+ private autoScalingGroup;
27
+ private keyPair;
28
+ constructor(scope: Construct, id: string, props: Ec2InstanceProps);
29
+ connections: Connections;
30
+ addVpc(props: Ec2InstanceProps): void;
31
+ addKeyPair(props: Ec2InstanceProps): void;
32
+ addLaunchTemplate(props: Ec2InstanceProps): void;
33
+ addAutoScalingGroup(props: Ec2InstanceProps): void;
34
+ suspendAutoScaling(): void;
35
+ }
36
+ export declare class Ec2InstanceStack extends Stack {
37
+ constructor(scope: Construct, id: string, props: Ec2InstanceProps);
38
+ }
39
+ export {};
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Ec2InstanceStack = exports.Ec2Instance = void 0;
4
+ const aws_ec2_1 = require("aws-cdk-lib/aws-ec2");
5
+ const constructs_1 = require("constructs");
6
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
7
+ const tagResource_1 = require("../../../utils/tagResource");
8
+ const aws_autoscaling_1 = require("aws-cdk-lib/aws-autoscaling");
9
+ const awsCustomResource_1 = require("../utilities/awsCustomResource");
10
+ const custom_resources_1 = require("aws-cdk-lib/custom-resources");
11
+ const vpc_1 = require("../networking/vpc");
12
+ class Ec2Instance extends constructs_1.Construct {
13
+ constructor(scope, id, props) {
14
+ super(scope, id);
15
+ this.addVpc(props);
16
+ this.addKeyPair(props);
17
+ this.addLaunchTemplate(props);
18
+ this.addAutoScalingGroup(props);
19
+ this.suspendAutoScaling();
20
+ //TODO: Add load balancer as boolean prop, then configure load balancer
21
+ }
22
+ addVpc(props) {
23
+ if (props.vpcId) {
24
+ this.vpc = vpc_1.Vpc.fromLookup(this, `${props.serviceName}Vpc`, {
25
+ vpcId: props.vpcId
26
+ });
27
+ }
28
+ else {
29
+ this.vpc = new vpc_1.Vpc(this, `${props.serviceName}Vpc`, {
30
+ accountId: props.accountId,
31
+ tags: props.tags,
32
+ subnetConfiguration: props.subnetConfiguration
33
+ });
34
+ }
35
+ }
36
+ addKeyPair(props) {
37
+ if (!props.enableSSH) {
38
+ this.keyPair = undefined;
39
+ }
40
+ else {
41
+ // TODO: Breakout into a seperate construct for use with better prop handling
42
+ this.keyPair = new aws_ec2_1.KeyPair(this, "KeyPair", {
43
+ keyPairName: `${props.serviceName}KeyPair`
44
+ });
45
+ }
46
+ }
47
+ addLaunchTemplate(props) {
48
+ this.asgSecurityGroup = new aws_ec2_1.SecurityGroup(this, `AsgSecurityGroup`, {
49
+ vpc: this.vpc,
50
+ description: `Security group for the ${props.serviceName} auto scaling group`
51
+ });
52
+ if (props.enableSSH) {
53
+ this.asgSecurityGroup.addIngressRule(aws_ec2_1.Peer.anyIpv4(), aws_ec2_1.Port.tcp(22), "Allow SSH");
54
+ }
55
+ this.launchTemplate = new aws_ec2_1.LaunchTemplate(this, "LaunchTemplate", {
56
+ launchTemplateName: `${props.serviceName}LaunchTemplate`,
57
+ instanceType: new aws_ec2_1.InstanceType(`${props.instanceType}`),
58
+ machineImage: props.machineImage || aws_ec2_1.MachineImage.latestAmazonLinux2(),
59
+ userData: props.userData,
60
+ role: props.role,
61
+ blockDevices: props?.blockDevices,
62
+ securityGroup: this.asgSecurityGroup,
63
+ detailedMonitoring: true,
64
+ requireImdsv2: true,
65
+ httpPutResponseHopLimit: 2,
66
+ httpTokens: aws_ec2_1.LaunchTemplateHttpTokens.REQUIRED,
67
+ instanceMetadataTags: true,
68
+ keyPair: this.keyPair,
69
+ associatePublicIpAddress: this.keyPair ? true : false
70
+ });
71
+ }
72
+ addAutoScalingGroup(props) {
73
+ // TODO: Support spot instances
74
+ // TODO: Handle terminating EC2 instances when updating, currently hangs.
75
+ this.autoScalingGroup = new aws_autoscaling_1.AutoScalingGroup(this, "AutoScalingGroup", {
76
+ vpc: this.vpc,
77
+ vpcSubnets: {
78
+ subnetType: props.enableSSH ? aws_ec2_1.SubnetType.PUBLIC : undefined
79
+ },
80
+ minCapacity: props.minCapcity,
81
+ maxCapacity: props.maxCapacity,
82
+ launchTemplate: this.launchTemplate,
83
+ cooldown: aws_cdk_lib_1.Duration.seconds(60),
84
+ groupMetrics: [aws_autoscaling_1.GroupMetrics.all()],
85
+ updatePolicy: aws_autoscaling_1.UpdatePolicy.replacingUpdate(),
86
+ newInstancesProtectedFromScaleIn: true,
87
+ // securityGroup: this.asgSecurityGroup,
88
+ terminationPolicies: [
89
+ aws_autoscaling_1.TerminationPolicy.OLDEST_LAUNCH_CONFIGURATION,
90
+ aws_autoscaling_1.TerminationPolicy.CLOSEST_TO_NEXT_INSTANCE_HOUR
91
+ ],
92
+ ssmSessionPermissions: true
93
+ });
94
+ (0, tagResource_1.default)(this.autoScalingGroup, props.tags);
95
+ }
96
+ suspendAutoScaling() {
97
+ new awsCustomResource_1.AwsCustomResource(this, "SuspendAutoscaling", {
98
+ functionName: "suspendAutoScaling",
99
+ onCreate: {
100
+ service: "AutoScaling",
101
+ action: "suspendProcesses",
102
+ parameters: {
103
+ AutoScalingGroupName: this.autoScalingGroup.autoScalingGroupName,
104
+ ScalingProcesses: ["AZRebalance"]
105
+ },
106
+ physicalResourceId: custom_resources_1.PhysicalResourceId.of("suspendAutoScaling")
107
+ },
108
+ onUpdate: {
109
+ service: "AutoScaling",
110
+ action: "suspendProcesses",
111
+ parameters: {
112
+ AutoScalingGroupName: this.autoScalingGroup.autoScalingGroupName,
113
+ ScalingProcesses: ["AZRebalance"]
114
+ },
115
+ physicalResourceId: custom_resources_1.PhysicalResourceId.of("suspendAutoScaling")
116
+ },
117
+ resourceType: "Custom::suspendAutoscaling"
118
+ });
119
+ }
120
+ }
121
+ exports.Ec2Instance = Ec2Instance;
122
+ class Ec2InstanceStack extends aws_cdk_lib_1.Stack {
123
+ constructor(scope, id, props) {
124
+ super(scope, id);
125
+ new Ec2Instance(this, id, {
126
+ ...props
127
+ });
128
+ }
129
+ }
130
+ exports.Ec2InstanceStack = Ec2InstanceStack;
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWMyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL3Jlc291cmNlcy9hd3MvY29tcHV0ZS9lYzIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaURBa0I2QjtBQUM3QiwyQ0FBdUM7QUFDdkMsNkNBQTBEO0FBQzFELDREQUFxRDtBQUVyRCxpRUFLcUM7QUFFckMsc0VBQW1FO0FBQ25FLG1FQUFrRTtBQUNsRSwyQ0FBd0M7QUFtQnhDLE1BQWEsV0FBWSxTQUFRLHNCQUFTO0lBT3hDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBdUI7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUUxQix1RUFBdUU7SUFDekUsQ0FBQztJQUdELE1BQU0sQ0FBQyxLQUF1QjtRQUM1QixJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsR0FBRyxHQUFHLFNBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDLFdBQVcsS0FBSyxFQUFFO2dCQUN6RCxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7YUFDbkIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksU0FBRyxDQUFDLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQyxXQUFXLEtBQUssRUFBRTtnQkFDbEQsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO2dCQUMxQixJ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LEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksV0FBVyxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUU7WUFDeEIsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBUkQsNENBUUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCbG9ja0RldmljZSxcbiAgSU1hY2hpbmVJbWFnZSxcbiAgSW5zdGFuY2VUeXBlLFxuICBJVnBjLFxuICBMYXVuY2hUZW1wbGF0ZSxcbiAgU3VibmV0VHlwZSxcbiAgVXNlckRhdGEsXG4gIE1hY2hpbmVJbWFnZSxcbiAgTGF1bmNoVGVtcGxhdGVIdHRwVG9rZW5zLFxuICBLZXlQYWlyLFxuICBJS2V5UGFpcixcbiAgU2VjdXJpdHlHcm91cCxcbiAgUGVlcixcbiAgUG9ydCxcbiAgSUNvbm5lY3RhYmxlLFxuICBDb25uZWN0aW9ucyxcbiAgU3VibmV0Q29uZmlndXJhdGlvblxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IER1cmF0aW9uLCBTdGFjaywgU3RhY2tQcm9wcyB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHRhZ1Jlc291cmNlIGZyb20gXCIuLi8uLi8uLi91dGlscy90YWdSZXNvdXJjZVwiO1xuaW1wb3J0IHsgUm9sZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQge1xuICBBdXRvU2NhbGluZ0dyb3VwLFxuICBHcm91cE1ldHJpY3MsXG4gIFRlcm1pbmF0aW9uUG9saWN5LFxuICBVcGRhdGVQb2xpY3lcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1hdXRvc2NhbGluZ1wiO1xuaW1wb3J0IHsgS2V5VmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vdHlwZXNcIjtcbmltcG9ydCB7IEF3c0N1c3RvbVJlc291cmNlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hd3NDdXN0b21SZXNvdXJjZVwiO1xuaW1wb3J0IHsgUGh5c2ljYWxSZXNvdXJjZUlkIH0gZnJvbSBcImF3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXNcIjtcbmltcG9ydCB7IFZwYyB9IGZyb20gXCIuLi9uZXR3b3JraW5nL3ZwY1wiO1xuXG5pbnRlcmZhY2UgRWMySW5zdGFuY2VQcm9wcyBleHRlbmRzIFN0YWNrUHJvcHMge1xuICBzcG90Q2FwYWNpdHlQZXJjZW50YWdlPzogbnVtYmVyO1xuICBibG9ja0RldmljZXM/OiBCbG9ja0RldmljZVtdO1xuICBhY2NvdW50SWQ/OiBzdHJpbmc7XG4gIHNlcnZpY2VOYW1lOiBzdHJpbmc7XG4gIHZwY0lkPzogc3RyaW5nO1xuICBzdWJuZXRDb25maWd1cmF0aW9uPzogU3VibmV0Q29uZmlndXJhdGlvbltdO1xuICBtaW5DYXBjaXR5PzogbnVtYmVyO1xuICBtYXhDYXBhY2l0eT86IG51bWJlcjtcbiAgaW5zdGFuY2VUeXBlOiBzdHJpbmc7XG4gIG1hY2hpbmVJbWFnZT86IElNYWNoaW5lSW1hZ2U7XG4gIHVzZXJEYXRhPzogVXNlckRhdGE7XG4gIHJvbGU/OiBSb2xlO1xuICBlbmFibGVTU0g/OiBib29sZWFuO1xuICB0YWdzOiBLZXlWYWx1ZTtcbn1cblxuZXhwb3J0IGNsYXNzIEVjMkluc3RhbmNlIGV4dGVuZHMgQ29uc3RydWN0IGltcGxlbWVudHMgSUNvbm5lY3RhYmxlIHtcbiAgcHJpdmF0ZSBsYXVuY2hUZW1wbGF0ZTogTGF1bmNoVGVtcGxhdGU7XG4gIHB1YmxpYyB2cGM6IElWcGM7XG4gIHB1YmxpYyBhc2dTZWN1cml0eUdyb3VwOiBTZWN1cml0eUdyb3VwO1xuICBwcml2YXRlIGF1dG9TY2FsaW5nR3JvdXA6IEF1dG9TY2FsaW5nR3JvdXA7XG4gIHByaXZhdGUga2V5UGFpcjogSUtleVBhaXIgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEVjMkluc3RhbmNlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5hZGRWcGMocHJvcHMpO1xuICAgIHRoaXMuYWRkS2V5UGFpcihwcm9wcyk7XG4gICAgdGhpcy5hZGRMYXVuY2hUZW1wbGF0ZShwcm9wcyk7XG4gICAgdGhpcy5hZGRBdXRvU2NhbGluZ0dyb3VwKHByb3BzKTtcbiAgICB0aGlzLnN1c3BlbmRBdXRvU2NhbGluZygpO1xuXG4gICAgLy9UT0RPOiBBZGQgbG9hZCBiYWxhbmNlciBhcyBib29sZWFuIHByb3AsIHRoZW4gY29uZmlndXJlIGxvYWQgYmFsYW5jZXJcbiAgfVxuICBjb25uZWN0aW9uczogQ29ubmVjdGlvbnM7XG5cbiAgYWRkVnBjKHByb3BzOiBFYzJJbnN0YW5jZVByb3BzKSB7XG4gICAgaWYgKHByb3BzLnZwY0lkKSB7XG4gICAgICB0aGlzLnZwYyA9IFZwYy5mcm9tTG9va3VwKHRoaXMsIGAke3Byb3BzLnNlcnZpY2VOYW1lfVZwY2AsIHtcbiAgICAgICAgdnBjSWQ6IHByb3BzLnZwY0lkXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52cGMgPSBuZXcgVnBjKHRoaXMsIGAke3Byb3BzLnNlcnZpY2VOYW1lfVZwY2AsIHtcbiAgICAgICAgYWNjb3VudElkOiBwcm9wcy5hY2NvdW50SWQsXG4gICAgICAgIHRhZ3M6IHByb3BzLnRhZ3MsXG4gICAgICAgIHN1Ym5ldENvbmZpZ3VyYXRpb246IHByb3BzLnN1Ym5ldENvbmZpZ3VyYXRpb25cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGFkZEtleVBhaXIocHJvcHM6IEVjMkluc3RhbmNlUHJvcHMpIHtcbiAgICBpZiAoIXByb3BzLmVuYWJsZVNTSCkge1xuICAgICAgdGhpcy5rZXlQYWlyID0gdW5kZWZpbmVkO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBUT0RPOiBCcmVha291dCBpbnRvIGEgc2VwZXJhdGUgY29uc3RydWN0IGZvciB1c2Ugd2l0aCBiZXR0ZXIgcHJvcCBoYW5kbGluZ1xuICAgICAgdGhpcy5rZXlQYWlyID0gbmV3IEtleVBhaXIodGhpcywgXCJLZXlQYWlyXCIsIHtcbiAgICAgICAga2V5UGFpck5hbWU6IGAke3Byb3BzLnNlcnZpY2VOYW1lfUtleVBhaXJgXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBhZGRMYXVuY2hUZW1wbGF0ZShwcm9wczogRWMySW5zdGFuY2VQcm9wcykge1xuICAgIHRoaXMuYXNnU2VjdXJpdHlHcm91cCA9IG5ldyBTZWN1cml0eUdyb3VwKHRoaXMsIGBBc2dTZWN1cml0eUdyb3VwYCwge1xuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICAgIGRlc2NyaXB0aW9uOiBgU2VjdXJpdHkgZ3JvdXAgZm9yIHRoZSAke3Byb3BzLnNlcnZpY2VOYW1lfSBhdXRvIHNjYWxpbmcgZ3JvdXBgXG4gICAgfSk7XG5cbiAgICBpZiAocHJvcHMuZW5hYmxlU1NIKSB7XG4gICAgICB0aGlzLmFzZ1NlY3VyaXR5R3JvdXAuYWRkSW5ncmVzc1J1bGUoXG4gICAgICAgIFBlZXIuYW55SXB2NCgpLFxuICAgICAgICBQb3J0LnRjcCgyMiksXG4gICAgICAgIFwiQWxsb3cgU1NIXCJcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5sYXVuY2hUZW1wbGF0ZSA9IG5ldyBMYXVuY2hUZW1wbGF0ZSh0aGlzLCBcIkxhdW5jaFRlbXBsYXRlXCIsIHtcbiAgICAgIGxhdW5jaFRlbXBsYXRlTmFtZTogYCR7cHJvcHMuc2VydmljZU5hbWV9TGF1bmNoVGVtcGxhdGVgLFxuICAgICAgaW5zdGFuY2VUeXBlOiBuZXcgSW5zdGFuY2VUeXBlKGAke3Byb3BzLmluc3RhbmNlVHlwZX1gKSxcbiAgICAgIG1hY2hpbmVJbWFnZTogcHJvcHMubWFjaGluZUltYWdlIHx8IE1hY2hpbmVJbWFnZS5sYXRlc3RBbWF6b25MaW51eDIoKSxcbiAgICAgIHVzZXJEYXRhOiBwcm9wcy51c2VyRGF0YSxcbiAgICAgIHJvbGU6IHByb3BzLnJvbGUsXG4gICAgICBibG9ja0RldmljZXM6IHByb3BzPy5ibG9ja0RldmljZXMsXG4gICAgICBzZWN1cml0eUdyb3VwOiB0aGlzLmFzZ1NlY3VyaXR5R3JvdXAsXG4gICAgICBkZXRhaWxlZE1vbml0b3Jpbmc6IHRydWUsXG4gICAgICByZXF1aXJlSW1kc3YyOiB0cnVlLFxuICAgICAgaHR0cFB1dFJlc3BvbnNlSG9wTGltaXQ6IDIsXG4gICAgICBodHRwVG9rZW5zOiBMYXVuY2hUZW1wbGF0ZUh0dHBUb2tlbnMuUkVRVUlSRUQsXG4gICAgICBpbnN0YW5jZU1ldGFkYXRhVGFnczogdHJ1ZSxcbiAgICAgIGtleVBhaXI6IHRoaXMua2V5UGFpcixcbiAgICAgIGFzc29jaWF0ZVB1YmxpY0lwQWRkcmVzczogdGhpcy5rZXlQYWlyID8gdHJ1ZSA6IGZhbHNlXG4gICAgfSk7XG4gIH1cblxuICBhZGRBdXRvU2NhbGluZ0dyb3VwKHByb3BzOiBFYzJJbnN0YW5jZVByb3BzKSB7XG4gICAgLy8gVE9ETzogU3VwcG9ydCBzcG90IGluc3RhbmNlc1xuICAgIC8vIFRPRE86IEhhbmRsZSB0ZXJtaW5hdGluZyBFQzIgaW5zdGFuY2VzIHdoZW4gdXBkYXRpbmcsIGN1cnJlbnRseSBoYW5ncy5cbiAgICB0aGlzLmF1dG9TY2FsaW5nR3JvdXAgPSBuZXcgQXV0b1NjYWxpbmdHcm91cCh0aGlzLCBcIkF1dG9TY2FsaW5nR3JvdXBcIiwge1xuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICAgIHZwY1N1Ym5ldHM6IHtcbiAgICAgICAgc3VibmV0VHlwZTogcHJvcHMuZW5hYmxlU1NIID8gU3VibmV0VHlwZS5QVUJMSUMgOiB1bmRlZmluZWRcbiAgICAgIH0sXG4gICAgICBtaW5DYXBhY2l0eTogcHJvcHMubWluQ2FwY2l0eSxcbiAgICAgIG1heENhcGFjaXR5OiBwcm9wcy5tYXhDYXBhY2l0eSxcbiAgICAgIGxhdW5jaFRlbXBsYXRlOiB0aGlzLmxhdW5jaFRlbXBsYXRlLFxuICAgICAgY29vbGRvd246IER1cmF0aW9uLnNlY29uZHMoNjApLFxuICAgICAgZ3JvdXBNZXRyaWNzOiBbR3JvdXBNZXRyaWNzLmFsbCgpXSxcbiAgICAgIHVwZGF0ZVBvbGljeTogVXBkYXRlUG9saWN5LnJlcGxhY2luZ1VwZGF0ZSgpLFxuICAgICAgbmV3SW5zdGFuY2VzUHJvdGVjdGVkRnJvbVNjYWxlSW46IHRydWUsXG4gICAgICAvLyBzZWN1cml0eUdyb3VwOiB0aGlzLmFzZ1NlY3VyaXR5R3JvdXAsXG4gICAgICB0ZXJtaW5hdGlvblBvbGljaWVzOiBbXG4gICAgICAgIFRlcm1pbmF0aW9uUG9saWN5Lk9MREVTVF9MQVVOQ0hfQ09ORklHVVJBVElPTixcbiAgICAgICAgVGVybWluYXRpb25Qb2xpY3kuQ0xPU0VTVF9UT19ORVhUX0lOU1RBTkNFX0hPVVJcbiAgICAgIF0sXG4gICAgICBzc21TZXNzaW9uUGVybWlzc2lvbnM6IHRydWVcbiAgICB9KTtcbiAgICB0YWdSZXNvdXJjZSh0aGlzLmF1dG9TY2FsaW5nR3JvdXAsIHByb3BzLnRhZ3MpO1xuICB9XG5cbiAgc3VzcGVuZEF1dG9TY2FsaW5nKCkge1xuICAgIG5ldyBBd3NDdXN0b21SZXNvdXJjZSh0aGlzLCBcIlN1c3BlbmRBdXRvc2NhbGluZ1wiLCB7XG4gICAgICBmdW5jdGlvbk5hbWU6IFwic3VzcGVuZEF1dG9TY2FsaW5nXCIsXG4gICAgICBvbkNyZWF0ZToge1xuICAgICAgICBzZXJ2aWNlOiBcIkF1dG9TY2FsaW5nXCIsXG4gICAgICAgIGFjdGlvbjogXCJzdXNwZW5kUHJvY2Vzc2VzXCIsXG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBBdXRvU2NhbGluZ0dyb3VwTmFtZTogdGhpcy5hdXRvU2NhbGluZ0dyb3VwLmF1dG9TY2FsaW5nR3JvdXBOYW1lLFxuICAgICAgICAgIFNjYWxpbmdQcm9jZXNzZXM6IFtcIkFaUmViYWxhbmNlXCJdXG4gICAgICAgIH0sXG4gICAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZDogUGh5c2ljYWxSZXNvdXJjZUlkLm9mKFwic3VzcGVuZEF1dG9TY2FsaW5nXCIpXG4gICAgICB9LFxuICAgICAgb25VcGRhdGU6IHtcbiAgICAgICAgc2VydmljZTogXCJBdXRvU2NhbGluZ1wiLFxuICAgICAgICBhY3Rpb246IFwic3VzcGVuZFByb2Nlc3Nlc1wiLFxuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgQXV0b1NjYWxpbmdHcm91cE5hbWU6IHRoaXMuYXV0b1NjYWxpbmdHcm91cC5hdXRvU2NhbGluZ0dyb3VwTmFtZSxcbiAgICAgICAgICBTY2FsaW5nUHJvY2Vzc2VzOiBbXCJBWlJlYmFsYW5jZVwiXVxuICAgICAgICB9LFxuICAgICAgICBwaHlzaWNhbFJlc291cmNlSWQ6IFBoeXNpY2FsUmVzb3VyY2VJZC5vZihcInN1c3BlbmRBdXRvU2NhbGluZ1wiKVxuICAgICAgfSxcbiAgICAgIHJlc291cmNlVHlwZTogXCJDdXN0b206OnN1c3BlbmRBdXRvc2NhbGluZ1wiXG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEVjMkluc3RhbmNlU3RhY2sgZXh0ZW5kcyBTdGFjayB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBFYzJJbnN0YW5jZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIG5ldyBFYzJJbnN0YW5jZSh0aGlzLCBpZCwge1xuICAgICAgLi4ucHJvcHNcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -51,11 +51,9 @@ class VpcEndpointStack extends aws_cdk_lib_1.Stack {
51
51
  constructor(scope, id, props) {
52
52
  super(scope, id, props);
53
53
  new VpcEndpoint(this, "VpcEndpoint", {
54
- vpcId: props.vpcId,
55
- service: props.service,
56
- tags: props.tags
54
+ ...props
57
55
  });
58
56
  }
59
57
  }
60
58
  exports.VpcEndpointStack = VpcEndpointStack;
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnBjRW5kcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvcmVzb3VyY2VzL2F3cy9uZXR3b3JraW5nL3ZwY0VuZHBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJDQUF1QztBQUN2QyxpREFPNkI7QUFDN0Isd0RBQXFEO0FBQ3JELDZDQUFnRDtBQUVoRCwrQkFBNEI7QUFRNUIsTUFBYSxXQUFZLFNBQVEsc0JBQVM7SUFJeEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF1QjtRQUMvRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSFgsbUJBQWMsR0FBcUIsRUFBRSxDQUFDO1FBSzVDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWE7UUFDbEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxTQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUU7WUFDckMsS0FBSyxFQUFFLEtBQUs7U0FDYixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBZTtRQUM5QixNQUFNLGFBQWEsR0FBRyxJQUFJLDZCQUFhLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRTtZQUM3RCxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixXQUFXLEVBQUUsMEJBQTBCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxlQUFlO1NBQ3JFLENBQUMsQ0FBQztRQUVILElBQUksT0FBTyxLQUFLLGtDQUFrQyxFQUFFLENBQUM7WUFDbkQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFFOUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUNyQixJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO29CQUM3QixhQUFhLENBQUMsY0FBYyxDQUMxQixjQUFJLENBQUMsT0FBTyxFQUFFLEVBQ2QsY0FBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFDZCx5QkFBeUIsSUFBSSx3QkFBd0IsQ0FDdEQsQ0FBQztnQkFDSixDQUFDO3FCQUFNLENBQUM7b0JBQ04sYUFBYSxDQUFDLGNBQWMsQ0FDMUIsY0FBSSxDQUFDLE9BQU8sRUFBRSxFQUNkLGNBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ3pDLCtCQUErQixJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxNQUFNLHdCQUF3QixDQUNwRixDQUFDO2dCQUNKLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQXVCO1FBQ25DLElBQUksOEJBQW9CLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUM1QyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixPQUFPLEVBQUUsSUFBSSxxQ0FBMkIsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ3ZELGtCQUFrQixFQUFFLElBQUk7WUFDeEIsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1NBQ3BDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQXRERCxrQ0FzREM7QUFFRCxNQUFhLGdCQUFpQixTQUFRLG1CQUFLO0lBQ3pDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBdUI7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEIsSUFBSSxXQUFXLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUNuQyxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7WUFDbEIsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFWRCw0Q0FVQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1xuICBJbnRlcmZhY2VWcGNFbmRwb2ludCxcbiAgSW50ZXJmYWNlVnBjRW5kcG9pbnRTZXJ2aWNlLFxuICBJU2VjdXJpdHlHcm91cCxcbiAgSVZwYyxcbiAgUGVlcixcbiAgUG9ydFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0IHsgU2VjdXJpdHlHcm91cCB9IGZyb20gXCIuLi9pYW0vc2VjdXJpdHlHcm91cFwiO1xuaW1wb3J0IHsgU3RhY2ssIFN0YWNrUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3R5cGVzXCI7XG5pbXBvcnQgeyBWcGMgfSBmcm9tIFwiLi92cGNcIjtcblxuaW50ZXJmYWNlIFZwY0VuZHBvaW50UHJvcHMgZXh0ZW5kcyBTdGFja1Byb3BzIHtcbiAgdnBjSWQ6IHN0cmluZztcbiAgc2VydmljZTogc3RyaW5nO1xuICB0YWdzOiBLZXlWYWx1ZTtcbn1cblxuZXhwb3J0IGNsYXNzIFZwY0VuZHBvaW50IGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHJpdmF0ZSB2cGM6IElWcGM7XG4gIHByaXZhdGUgc2VjdXJpdHlHcm91cHM6IElTZWN1cml0eUdyb3VwW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogVnBjRW5kcG9pbnRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmFkZFZwYyhwcm9wcy52cGNJZCk7XG4gICAgdGhpcy5hZGRTZWN1cml0eUdyb3VwKHByb3BzLnNlcnZpY2UpO1xuICAgIHRoaXMuYWRkRW50cnlwb2ludChwcm9wcyk7XG4gIH1cblxuICBhZGRWcGModnBjSWQ6IHN0cmluZykge1xuICAgIHRoaXMudnBjID0gVnBjLmZyb21Mb29rdXAodGhpcywgYFZwY2AsIHtcbiAgICAgIHZwY0lkOiB2cGNJZFxuICAgIH0pO1xuICB9XG5cbiAgYWRkU2VjdXJpdHlHcm91cChzZXJ2aWNlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBzZWN1cml0eUdyb3VwID0gbmV3IFNlY3VyaXR5R3JvdXAodGhpcywgYHNlY3VyaXR5R3JvdXBgLCB7XG4gICAgICB2cGM6IHRoaXMudnBjLFxuICAgICAgZGVzY3JpcHRpb246IGBTZWN1cml0eSBncm91cCBmb3IgdGhlICR7dGhpcy52cGMudnBjSWR9IFZQQyBlbmRwb2ludGBcbiAgICB9KTtcblxuICAgIGlmIChzZXJ2aWNlID09PSBcImNvbS5hbWF6b25hd3MudXMtZWFzdC0xLmRhdGFzeW5jXCIpIHtcbiAgICAgIGNvbnN0IHBvcnRzID0gWzgwLCA0NDMsIDIyLCB7IGZyb21Qb3J0OiAxMDI0LCB0b1BvcnQ6IDEwNjQgfV07XG5cbiAgICAgIHBvcnRzLmZvckVhY2goKHBvcnQpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBwb3J0ID09PSBcIm51bWJlclwiKSB7XG4gICAgICAgICAgc2VjdXJpdHlHcm91cC5hZGRJbmdyZXNzUnVsZShcbiAgICAgICAgICAgIFBlZXIuYW55SXB2NCgpLFxuICAgICAgICAgICAgUG9ydC50Y3AocG9ydCksXG4gICAgICAgICAgICBgQWxsb3cgdHJhZmZpYyBvbiBwb3J0ICR7cG9ydH0gZnJvbSB0aGUgVlBDIGVuZHBvaW50YFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2VjdXJpdHlHcm91cC5hZGRJbmdyZXNzUnVsZShcbiAgICAgICAgICAgIFBlZXIuYW55SXB2NCgpLFxuICAgICAgICAgICAgUG9ydC50Y3BSYW5nZShwb3J0LmZyb21Qb3J0LCBwb3J0LnRvUG9ydCksXG4gICAgICAgICAgICBgQWxsb3cgdHJhZmZpYyBvbiBwb3J0IHJhbmdlICR7cG9ydC5mcm9tUG9ydH0tJHtwb3J0LnRvUG9ydH0gZnJvbSB0aGUgVlBDIGVuZHBvaW50YFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLnNlY3VyaXR5R3JvdXBzLnB1c2goc2VjdXJpdHlHcm91cCk7XG4gIH1cblxuICBhZGRFbnRyeXBvaW50KHByb3BzOiBWcGNFbmRwb2ludFByb3BzKSB7XG4gICAgbmV3IEludGVyZmFjZVZwY0VuZHBvaW50KHRoaXMsIFwiVnBjRW5kcG9pbnRcIiwge1xuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICAgIHNlcnZpY2U6IG5ldyBJbnRlcmZhY2VWcGNFbmRwb2ludFNlcnZpY2UocHJvcHMuc2VydmljZSksXG4gICAgICBsb29rdXBTdXBwb3J0ZWRBenM6IHRydWUsXG4gICAgICBzZWN1cml0eUdyb3VwczogdGhpcy5zZWN1cml0eUdyb3Vwc1xuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBWcGNFbmRwb2ludFN0YWNrIGV4dGVuZHMgU3RhY2sge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogVnBjRW5kcG9pbnRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgbmV3IFZwY0VuZHBvaW50KHRoaXMsIFwiVnBjRW5kcG9pbnRcIiwge1xuICAgICAgdnBjSWQ6IHByb3BzLnZwY0lkLFxuICAgICAgc2VydmljZTogcHJvcHMuc2VydmljZSxcbiAgICAgIHRhZ3M6IHByb3BzLnRhZ3NcbiAgICB9KTtcbiAgfVxufVxuIl19
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnBjRW5kcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvcmVzb3VyY2VzL2F3cy9uZXR3b3JraW5nL3ZwY0VuZHBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJDQUF1QztBQUN2QyxpREFPNkI7QUFDN0Isd0RBQXFEO0FBQ3JELDZDQUFnRDtBQUVoRCwrQkFBNEI7QUFRNUIsTUFBYSxXQUFZLFNBQVEsc0JBQVM7SUFJeEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF1QjtRQUMvRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSFgsbUJBQWMsR0FBcUIsRUFBRSxDQUFDO1FBSzVDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWE7UUFDbEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxTQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUU7WUFDckMsS0FBSyxFQUFFLEtBQUs7U0FDYixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBZTtRQUM5QixNQUFNLGFBQWEsR0FBRyxJQUFJLDZCQUFhLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRTtZQUM3RCxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixXQUFXLEVBQUUsMEJBQTBCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxlQUFlO1NBQ3JFLENBQUMsQ0FBQztRQUVILElBQUksT0FBTyxLQUFLLGtDQUFrQyxFQUFFLENBQUM7WUFDbkQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFFOUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUNyQixJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO29CQUM3QixhQUFhLENBQUMsY0FBYyxDQUMxQixjQUFJLENBQUMsT0FBTyxFQUFFLEVBQ2QsY0FBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFDZCx5QkFBeUIsSUFBSSx3QkFBd0IsQ0FDdEQsQ0FBQztnQkFDSixDQUFDO3FCQUFNLENBQUM7b0JBQ04sYUFBYSxDQUFDLGNBQWMsQ0FDMUIsY0FBSSxDQUFDLE9BQU8sRUFBRSxFQUNkLGNBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ3pDLCtCQUErQixJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxNQUFNLHdCQUF3QixDQUNwRixDQUFDO2dCQUNKLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQXVCO1FBQ25DLElBQUksOEJBQW9CLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUM1QyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixPQUFPLEVBQUUsSUFBSSxxQ0FBMkIsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ3ZELGtCQUFrQixFQUFFLElBQUk7WUFDeEIsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1NBQ3BDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQXRERCxrQ0FzREM7QUFFRCxNQUFhLGdCQUFpQixTQUFRLG1CQUFLO0lBQ3pDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBdUI7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEIsSUFBSSxXQUFXLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUNuQyxHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFSRCw0Q0FRQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1xuICBJbnRlcmZhY2VWcGNFbmRwb2ludCxcbiAgSW50ZXJmYWNlVnBjRW5kcG9pbnRTZXJ2aWNlLFxuICBJU2VjdXJpdHlHcm91cCxcbiAgSVZwYyxcbiAgUGVlcixcbiAgUG9ydFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0IHsgU2VjdXJpdHlHcm91cCB9IGZyb20gXCIuLi9pYW0vc2VjdXJpdHlHcm91cFwiO1xuaW1wb3J0IHsgU3RhY2ssIFN0YWNrUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3R5cGVzXCI7XG5pbXBvcnQgeyBWcGMgfSBmcm9tIFwiLi92cGNcIjtcblxuaW50ZXJmYWNlIFZwY0VuZHBvaW50UHJvcHMgZXh0ZW5kcyBTdGFja1Byb3BzIHtcbiAgdnBjSWQ6IHN0cmluZztcbiAgc2VydmljZTogc3RyaW5nO1xuICB0YWdzOiBLZXlWYWx1ZTtcbn1cblxuZXhwb3J0IGNsYXNzIFZwY0VuZHBvaW50IGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHJpdmF0ZSB2cGM6IElWcGM7XG4gIHByaXZhdGUgc2VjdXJpdHlHcm91cHM6IElTZWN1cml0eUdyb3VwW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogVnBjRW5kcG9pbnRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmFkZFZwYyhwcm9wcy52cGNJZCk7XG4gICAgdGhpcy5hZGRTZWN1cml0eUdyb3VwKHByb3BzLnNlcnZpY2UpO1xuICAgIHRoaXMuYWRkRW50cnlwb2ludChwcm9wcyk7XG4gIH1cblxuICBhZGRWcGModnBjSWQ6IHN0cmluZykge1xuICAgIHRoaXMudnBjID0gVnBjLmZyb21Mb29rdXAodGhpcywgYFZwY2AsIHtcbiAgICAgIHZwY0lkOiB2cGNJZFxuICAgIH0pO1xuICB9XG5cbiAgYWRkU2VjdXJpdHlHcm91cChzZXJ2aWNlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBzZWN1cml0eUdyb3VwID0gbmV3IFNlY3VyaXR5R3JvdXAodGhpcywgYHNlY3VyaXR5R3JvdXBgLCB7XG4gICAgICB2cGM6IHRoaXMudnBjLFxuICAgICAgZGVzY3JpcHRpb246IGBTZWN1cml0eSBncm91cCBmb3IgdGhlICR7dGhpcy52cGMudnBjSWR9IFZQQyBlbmRwb2ludGBcbiAgICB9KTtcblxuICAgIGlmIChzZXJ2aWNlID09PSBcImNvbS5hbWF6b25hd3MudXMtZWFzdC0xLmRhdGFzeW5jXCIpIHtcbiAgICAgIGNvbnN0IHBvcnRzID0gWzgwLCA0NDMsIDIyLCB7IGZyb21Qb3J0OiAxMDI0LCB0b1BvcnQ6IDEwNjQgfV07XG5cbiAgICAgIHBvcnRzLmZvckVhY2goKHBvcnQpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBwb3J0ID09PSBcIm51bWJlclwiKSB7XG4gICAgICAgICAgc2VjdXJpdHlHcm91cC5hZGRJbmdyZXNzUnVsZShcbiAgICAgICAgICAgIFBlZXIuYW55SXB2NCgpLFxuICAgICAgICAgICAgUG9ydC50Y3AocG9ydCksXG4gICAgICAgICAgICBgQWxsb3cgdHJhZmZpYyBvbiBwb3J0ICR7cG9ydH0gZnJvbSB0aGUgVlBDIGVuZHBvaW50YFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2VjdXJpdHlHcm91cC5hZGRJbmdyZXNzUnVsZShcbiAgICAgICAgICAgIFBlZXIuYW55SXB2NCgpLFxuICAgICAgICAgICAgUG9ydC50Y3BSYW5nZShwb3J0LmZyb21Qb3J0LCBwb3J0LnRvUG9ydCksXG4gICAgICAgICAgICBgQWxsb3cgdHJhZmZpYyBvbiBwb3J0IHJhbmdlICR7cG9ydC5mcm9tUG9ydH0tJHtwb3J0LnRvUG9ydH0gZnJvbSB0aGUgVlBDIGVuZHBvaW50YFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLnNlY3VyaXR5R3JvdXBzLnB1c2goc2VjdXJpdHlHcm91cCk7XG4gIH1cblxuICBhZGRFbnRyeXBvaW50KHByb3BzOiBWcGNFbmRwb2ludFByb3BzKSB7XG4gICAgbmV3IEludGVyZmFjZVZwY0VuZHBvaW50KHRoaXMsIFwiVnBjRW5kcG9pbnRcIiwge1xuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICAgIHNlcnZpY2U6IG5ldyBJbnRlcmZhY2VWcGNFbmRwb2ludFNlcnZpY2UocHJvcHMuc2VydmljZSksXG4gICAgICBsb29rdXBTdXBwb3J0ZWRBenM6IHRydWUsXG4gICAgICBzZWN1cml0eUdyb3VwczogdGhpcy5zZWN1cml0eUdyb3Vwc1xuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBWcGNFbmRwb2ludFN0YWNrIGV4dGVuZHMgU3RhY2sge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogVnBjRW5kcG9pbnRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgbmV3IFZwY0VuZHBvaW50KHRoaXMsIFwiVnBjRW5kcG9pbnRcIiwge1xuICAgICAgLi4ucHJvcHNcbiAgICB9KTtcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fjall/components-infrastructure",
3
- "version": "0.1.40",
3
+ "version": "0.1.41",
4
4
  "bin": {
5
5
  "infrastructure": "bin/infrastructure.js"
6
6
  },
@@ -68,5 +68,5 @@
68
68
  "overrides": {
69
69
  "@smithy/core": "2.5.5"
70
70
  },
71
- "gitHead": "bd298850bfce9837cf671a35efb6d023045a39f5"
71
+ "gitHead": "67dc119a1b15139484270bec15e53390150a1da4"
72
72
  }