@fjall/components-infrastructure 0.1.11 → 0.1.17

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.
Files changed (75) hide show
  1. package/dist/lib/config/aws/identityCenter.d.ts +3 -4
  2. package/dist/lib/config/aws/identityCenter.js +7 -2
  3. package/dist/lib/config/aws/identityCenterGroupMembership.d.ts +10 -0
  4. package/dist/lib/config/aws/identityCenterGroupMembership.js +96 -0
  5. package/dist/lib/config/aws/identityCenterUser.js +3 -3
  6. package/dist/lib/config/aws/index.d.ts +0 -1
  7. package/dist/lib/config/aws/index.js +1 -2
  8. package/dist/lib/config/aws/ipamPoolId.d.ts +1 -0
  9. package/dist/lib/config/aws/ipamPoolId.js +5 -3
  10. package/dist/lib/config/aws/organisation.d.ts +9 -9
  11. package/dist/lib/config/aws/organisation.js +31 -61
  12. package/dist/lib/config/aws/organisationsAccess.d.ts +10 -0
  13. package/dist/lib/config/aws/organisationsAccess.js +40 -0
  14. package/dist/lib/patterns/aws/basicApp.d.ts +3 -2
  15. package/dist/lib/patterns/aws/basicApp.js +5 -5
  16. package/dist/lib/patterns/aws/buildkite.d.ts +37 -28
  17. package/dist/lib/patterns/aws/buildkite.js +66 -40
  18. package/dist/lib/patterns/aws/freeTierApp.d.ts +2 -1
  19. package/dist/lib/patterns/aws/freeTierApp.js +5 -5
  20. package/dist/lib/patterns/aws/managedAccount.js +5 -4
  21. package/dist/lib/patterns/aws/managedIdentityCenter.d.ts +4 -0
  22. package/dist/lib/patterns/aws/managedIdentityCenter.js +24 -0
  23. package/dist/lib/patterns/aws/managedOrganisation.d.ts +8 -7
  24. package/dist/lib/patterns/aws/managedOrganisation.js +22 -16
  25. package/dist/lib/patterns/aws/spotInstanceApp.d.ts +1 -0
  26. package/dist/lib/patterns/aws/spotInstanceApp.js +4 -4
  27. package/dist/lib/resources/aws/awsStack.d.ts +2 -2
  28. package/dist/lib/resources/aws/awsStack.js +3 -3
  29. package/dist/lib/resources/aws/database/rdsFreeTier.js +2 -2
  30. package/dist/lib/resources/aws/networking/ipamPool.js +21 -18
  31. package/dist/lib/resources/aws/networking/vpc.d.ts +1 -1
  32. package/dist/lib/resources/aws/networking/vpc.js +5 -3
  33. package/dist/lib/resources/aws/secrets/kms.js +2 -2
  34. package/dist/lib/utils/getAccountId.js +5 -4
  35. package/dist/lib/utils/getAsync.d.ts +10 -0
  36. package/dist/lib/utils/getAsync.js +37 -0
  37. package/dist/lib/utils/getCidr.js +4 -4
  38. package/dist/lib/utils/getConfig.d.ts +4 -2
  39. package/dist/lib/utils/getConfig.js +20 -16
  40. package/dist/lib/utils/usersConfig.js +2 -2
  41. package/package.json +28 -24
  42. package/dist/lib/config/aws/delegateHostedZoneRole.d.ts +0 -5
  43. package/dist/lib/config/aws/delegateHostedZoneRole.js +0 -77
  44. package/dist/lib/config/aws/ipamPool.d.ts +0 -5
  45. package/dist/lib/config/aws/ipamPool.js +0 -56
  46. package/dist/lib/config/aws/ipamPoolResourceShare.d.ts +0 -5
  47. package/dist/lib/config/aws/ipamPoolResourceShare.js +0 -42
  48. package/dist/lib/config/aws/ramEnableSharing.d.ts +0 -5
  49. package/dist/lib/config/aws/ramEnableSharing.js +0 -35
  50. package/dist/lib/config/aws/users.d.ts +0 -5
  51. package/dist/lib/config/aws/users.js +0 -126
  52. package/dist/lib/config/fjall/hostedZones/fjall.io.d.ts +0 -10
  53. package/dist/lib/config/fjall/hostedZones/fjall.io.js +0 -25
  54. package/dist/lib/resources/aws/constant/ecr.d.ts +0 -12
  55. package/dist/lib/resources/aws/constant/ecr.js +0 -30
  56. package/dist/lib/resources/aws/constant/vpc.d.ts +0 -26
  57. package/dist/lib/resources/aws/constant/vpc.js +0 -63
  58. package/dist/lib/resources/aws/networking/hostedZone.d.ts +0 -21
  59. package/dist/lib/resources/aws/networking/hostedZone.js +0 -68
  60. package/dist/lib/resources/aws/store/alias.d.ts +0 -5
  61. package/dist/lib/resources/aws/store/alias.js +0 -13
  62. package/dist/lib/resources/aws/store/database.d.ts +0 -18
  63. package/dist/lib/resources/aws/store/database.js +0 -33
  64. package/dist/lib/resources/aws/store/index.d.ts +0 -7
  65. package/dist/lib/resources/aws/store/index.js +0 -24
  66. package/dist/lib/resources/aws/store/kms.d.ts +0 -14
  67. package/dist/lib/resources/aws/store/kms.js +0 -34
  68. package/dist/lib/resources/aws/store/parameter.d.ts +0 -26
  69. package/dist/lib/resources/aws/store/parameter.js +0 -100
  70. package/dist/lib/resources/aws/store/rds.d.ts +0 -25
  71. package/dist/lib/resources/aws/store/rds.js +0 -132
  72. package/dist/lib/resources/aws/store/s3.d.ts +0 -11
  73. package/dist/lib/resources/aws/store/s3.js +0 -43
  74. package/dist/lib/resources/aws/store/secret.d.ts +0 -26
  75. package/dist/lib/resources/aws/store/secret.js +0 -55
@@ -3,7 +3,7 @@ import * as ec2 from "aws-cdk-lib/aws-ec2";
3
3
  import { StackBuilder } from "../awsStack";
4
4
  import { KeyValue } from "../../../types";
5
5
  interface VpcProps extends ec2.VpcProps {
6
- environment?: string;
6
+ accountName?: string;
7
7
  region?: string;
8
8
  availabilityZones?: string[];
9
9
  ipv4IpamPoolId?: string;
@@ -4,6 +4,7 @@ exports.Vpc = void 0;
4
4
  const aws_cdk_lib_1 = require("aws-cdk-lib");
5
5
  const ec2 = require("aws-cdk-lib/aws-ec2");
6
6
  const logGroup_1 = require("../logging/logGroup");
7
+ const stripAndCamelCase_1 = require("../../../utils/stripAndCamelCase");
7
8
  class Vpc extends ec2.Vpc {
8
9
  constructor(scope, id, props) {
9
10
  super(scope, `vpc-${id}`, {
@@ -21,13 +22,14 @@ class Vpc extends ec2.Vpc {
21
22
  ipAddresses: Vpc.ipAddresses(scope, props)
22
23
  });
23
24
  // Required for the VPC to use the IPAM Pool to provsion IP addresses
24
- aws_cdk_lib_1.Tags.of(this).add("fjall:operations:pool", `${props?.environment}`);
25
+ aws_cdk_lib_1.Tags.of(this).add("fjall:operations:pool", `${props?.accountName || "noPool"}`);
25
26
  }
26
27
  static availabilityZones(scope) {
27
28
  return aws_cdk_lib_1.Stack.of(scope).availabilityZones.slice(0, 3);
28
29
  }
29
30
  static ipAddresses(scope, props) {
30
- const ipv4IpamPoolId = props?.ipv4IpamPoolId || aws_cdk_lib_1.Fn.importValue("ManagedIpamPoolId");
31
+ const ipv4IpamPoolId = props?.ipv4IpamPoolId ||
32
+ aws_cdk_lib_1.Fn.importValue(`${(0, stripAndCamelCase_1.stripAndCamelCase)(props?.accountName || "noPool")}IpamPoolId`);
31
33
  // Default to unspecified ipAddresses if unable to read from stack output
32
34
  if (!ipv4IpamPoolId)
33
35
  return undefined;
@@ -61,4 +63,4 @@ class Vpc extends ec2.Vpc {
61
63
  }
62
64
  }
63
65
  exports.Vpc = Vpc;
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnBjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL3Jlc291cmNlcy9hd3MvbmV0d29ya2luZy92cGMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQTZEO0FBQzdELDJDQUEyQztBQUczQyxrREFBK0M7QUFXL0MsTUFBYSxHQUFJLFNBQVEsR0FBRyxDQUFDLEdBQUc7SUFDOUIsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFnQjtRQUN4RCxLQUFLLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUU7WUFDeEIsR0FBRyxLQUFLO1lBQ1IsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBQ3BCLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7WUFDL0MsUUFBUSxFQUFFO2dCQUNSLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxFQUFFO29CQUNwQixXQUFXLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDLGdCQUFnQixDQUNsRCxJQUFJLG1CQUFRLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxjQUFjLEVBQUU7d0JBQ3ZDLFlBQVksRUFBRSxxQkFBcUIsRUFBRSxHQUFHO3dCQUN4QyxhQUFhLEVBQUUsMkJBQWEsQ0FBQyxPQUFPO3FCQUNyQyxDQUFDLENBQ0g7aUJBQ0Y7YUFDRjtZQUNELFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUM7U0FDM0MsQ0FBQyxDQUFDO1FBRUgscUVBQXFFO1FBQ3JFLGtCQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsRUFBRSxHQUFHLEtBQUssRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxNQUFNLENBQUMsaUJBQWlCLENBQUMsS0FBZ0I7UUFDdkMsT0FBTyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQWdCLEVBQUUsS0FBZ0I7UUFDbkQsTUFBTSxjQUFjLEdBQ2xCLEtBQUssRUFBRSxjQUFjLElBQUksZ0JBQUUsQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUUvRCx5RUFBeUU7UUFDekUsSUFBSSxDQUFDLGNBQWM7WUFBRSxPQUFPLFNBQVMsQ0FBQztRQUV0QyxPQUFPLEdBQUcsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQUM7WUFDdkMsY0FBYyxFQUFFLGNBQWM7WUFDOUIsaUJBQWlCLEVBQUUsRUFBRTtZQUNyQiw4QkFBOEIsRUFBRSxFQUFFO1NBQ25DLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQVUsRUFBRSxLQUFnQjtRQUN2QyxPQUFPLENBQUMsRUFBZ0IsRUFBRSxFQUFFO1lBQzFCLE9BQU8sSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUM7SUFDSixDQUFDO0lBQ0Q7Ozs7Ozs7OztPQVNHO0lBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FDWCxFQUFVLEVBQ1YsWUFBb0I7UUFFcEIsT0FBTyxDQUFDLEVBQWdCLEVBQUUsRUFBRTtZQUMxQixPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLEVBQUU7Z0JBQzNDLE9BQU8sRUFBRSxHQUFHLFlBQVksSUFBSSxFQUFFLEVBQUU7YUFDakMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBbEVELGtCQWtFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBUYWdzLCBSZW1vdmFsUG9saWN5LCBTdGFjaywgRm4gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGVjMiBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuXG5pbXBvcnQgeyBTdGFja0J1aWxkZXIgfSBmcm9tIFwiLi4vYXdzU3RhY2tcIjtcbmltcG9ydCB7IExvZ0dyb3VwIH0gZnJvbSBcIi4uL2xvZ2dpbmcvbG9nR3JvdXBcIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3R5cGVzXCI7XG5cbmludGVyZmFjZSBWcGNQcm9wcyBleHRlbmRzIGVjMi5WcGNQcm9wcyB7XG4gIGVudmlyb25tZW50Pzogc3RyaW5nO1xuICByZWdpb24/OiBzdHJpbmc7XG4gIGF2YWlsYWJpbGl0eVpvbmVzPzogc3RyaW5nW107XG4gIGlwdjRJcGFtUG9vbElkPzogc3RyaW5nO1xuICB0YWdzOiBLZXlWYWx1ZTtcbn1cblxuZXhwb3J0IGNsYXNzIFZwYyBleHRlbmRzIGVjMi5WcGMge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wcz86IFZwY1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGB2cGMtJHtpZH1gLCB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIHZwY05hbWU6IGB2cGMtJHtpZH1gLFxuICAgICAgYXZhaWxhYmlsaXR5Wm9uZXM6IFZwYy5hdmFpbGFiaWxpdHlab25lcyhzY29wZSksXG4gICAgICBmbG93TG9nczoge1xuICAgICAgICBbYCR7aWR9VnBjRmxvd0xvZ3NgXToge1xuICAgICAgICAgIGRlc3RpbmF0aW9uOiBlYzIuRmxvd0xvZ0Rlc3RpbmF0aW9uLnRvQ2xvdWRXYXRjaExvZ3MoXG4gICAgICAgICAgICBuZXcgTG9nR3JvdXAoc2NvcGUsIGAke2lkfUZsb3dMb2dHcm91cGAsIHtcbiAgICAgICAgICAgICAgbG9nR3JvdXBOYW1lOiBgL3ZwYy9mbG93bG9ncy92cGMtJHtpZH0vYCxcbiAgICAgICAgICAgICAgcmVtb3ZhbFBvbGljeTogUmVtb3ZhbFBvbGljeS5ERVNUUk9ZXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGlwQWRkcmVzc2VzOiBWcGMuaXBBZGRyZXNzZXMoc2NvcGUsIHByb3BzKVxuICAgIH0pO1xuXG4gICAgLy8gUmVxdWlyZWQgZm9yIHRoZSBWUEMgdG8gdXNlIHRoZSBJUEFNIFBvb2wgdG8gcHJvdnNpb24gSVAgYWRkcmVzc2VzXG4gICAgVGFncy5vZih0aGlzKS5hZGQoXCJmamFsbDpvcGVyYXRpb25zOnBvb2xcIiwgYCR7cHJvcHM/LmVudmlyb25tZW50fWApO1xuICB9XG5cbiAgc3RhdGljIGF2YWlsYWJpbGl0eVpvbmVzKHNjb3BlOiBDb25zdHJ1Y3QpIHtcbiAgICByZXR1cm4gU3RhY2sub2Yoc2NvcGUpLmF2YWlsYWJpbGl0eVpvbmVzLnNsaWNlKDAsIDMpO1xuICB9XG5cbiAgc3RhdGljIGlwQWRkcmVzc2VzKHNjb3BlOiBDb25zdHJ1Y3QsIHByb3BzPzogVnBjUHJvcHMpIHtcbiAgICBjb25zdCBpcHY0SXBhbVBvb2xJZCA9XG4gICAgICBwcm9wcz8uaXB2NElwYW1Qb29sSWQgfHwgRm4uaW1wb3J0VmFsdWUoXCJNYW5hZ2VkSXBhbVBvb2xJZFwiKTtcblxuICAgIC8vIERlZmF1bHQgdG8gdW5zcGVjaWZpZWQgaXBBZGRyZXNzZXMgaWYgdW5hYmxlIHRvIHJlYWQgZnJvbSBzdGFjayBvdXRwdXRcbiAgICBpZiAoIWlwdjRJcGFtUG9vbElkKSByZXR1cm4gdW5kZWZpbmVkO1xuXG4gICAgcmV0dXJuIGVjMi5JcEFkZHJlc3Nlcy5hd3NJcGFtQWxsb2NhdGlvbih7XG4gICAgICBpcHY0SXBhbVBvb2xJZDogaXB2NElwYW1Qb29sSWQsXG4gICAgICBpcHY0TmV0bWFza0xlbmd0aDogMjAsXG4gICAgICBkZWZhdWx0U3VibmV0SXB2NE5ldG1hc2tMZW5ndGg6IDIzXG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgYnVpbGQoaWQ6IHN0cmluZywgcHJvcHM/OiBWcGNQcm9wcyk6IChzYjogU3RhY2tCdWlsZGVyKSA9PiBDb25zdHJ1Y3Qge1xuICAgIHJldHVybiAoc2I6IFN0YWNrQnVpbGRlcikgPT4ge1xuICAgICAgcmV0dXJuIG5ldyB0aGlzKHNiLmdldFN0YWNrKCksIGlkLCBwcm9wcyk7XG4gICAgfTtcbiAgfVxuICAvKipcbiAgICogSW1wb3J0cyBhIHByZS1leGlzdGluZyBWUEMgUmVzb3VyY2UgaW50byB5b3VyIFN0YWNrXG4gICAqXG4gICAqIEJlZm9yZSB1c2luZyBhbiBpbXBvcnQgbWV0aG9kIGVuc3VyZSB5b3UgaGF2ZSBzZXQgdGhlIGFjY291bnQgYW5kIHJlZ2lvbiBwcm9wc1xuICAgKiAgd2hlbiBjcmVhdGluZyB5b3VyIEF3c1N0YWNrLlxuICAgKlxuICAgKiBAcGFyYW0gaWRcbiAgICogQHBhcmFtIHZwY1N0YWNrTmFtZVxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgc3RhdGljIGltcG9ydChcbiAgICBpZDogc3RyaW5nLFxuICAgIHZwY1N0YWNrTmFtZTogc3RyaW5nXG4gICk6IChzYjogU3RhY2tCdWlsZGVyKSA9PiBDb25zdHJ1Y3Qge1xuICAgIHJldHVybiAoc2I6IFN0YWNrQnVpbGRlcikgPT4ge1xuICAgICAgcmV0dXJuIGVjMi5WcGMuZnJvbUxvb2t1cChzYi5nZXRTdGFjaygpLCBpZCwge1xuICAgICAgICB2cGNOYW1lOiBgJHt2cGNTdGFja05hbWV9LyR7aWR9YFxuICAgICAgfSk7XG4gICAgfTtcbiAgfVxufVxuIl19
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnBjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL3Jlc291cmNlcy9hd3MvbmV0d29ya2luZy92cGMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQTZEO0FBQzdELDJDQUEyQztBQUczQyxrREFBK0M7QUFFL0Msd0VBQXFFO0FBVXJFLE1BQWEsR0FBSSxTQUFRLEdBQUcsQ0FBQyxHQUFHO0lBQzlCLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBZ0I7UUFDeEQsS0FBSyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFO1lBQ3hCLEdBQUcsS0FBSztZQUNSLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUNwQixpQkFBaUIsRUFBRSxHQUFHLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDO1lBQy9DLFFBQVEsRUFBRTtnQkFDUixDQUFDLEdBQUcsRUFBRSxhQUFhLENBQUMsRUFBRTtvQkFDcEIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FDbEQsSUFBSSxtQkFBUSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsY0FBYyxFQUFFO3dCQUN2QyxZQUFZLEVBQUUscUJBQXFCLEVBQUUsR0FBRzt3QkFDeEMsYUFBYSxFQUFFLDJCQUFhLENBQUMsT0FBTztxQkFDckMsQ0FBQyxDQUNIO2lCQUNGO2FBQ0Y7WUFDRCxXQUFXLEVBQUUsR0FBRyxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDO1NBQzNDLENBQUMsQ0FBQztRQUVILHFFQUFxRTtRQUNyRSxrQkFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQ2YsdUJBQXVCLEVBQ3ZCLEdBQUcsS0FBSyxFQUFFLFdBQVcsSUFBSSxRQUFRLEVBQUUsQ0FDcEMsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsaUJBQWlCLENBQUMsS0FBZ0I7UUFDdkMsT0FBTyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQWdCLEVBQUUsS0FBZ0I7UUFDbkQsTUFBTSxjQUFjLEdBQ2xCLEtBQUssRUFBRSxjQUFjO1lBQ3JCLGdCQUFFLENBQUMsV0FBVyxDQUNaLEdBQUcsSUFBQSxxQ0FBaUIsRUFBQyxLQUFLLEVBQUUsV0FBVyxJQUFJLFFBQVEsQ0FBQyxZQUFZLENBQ2pFLENBQUM7UUFFSix5RUFBeUU7UUFDekUsSUFBSSxDQUFDLGNBQWM7WUFBRSxPQUFPLFNBQVMsQ0FBQztRQUV0QyxPQUFPLEdBQUcsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQUM7WUFDdkMsY0FBYyxFQUFFLGNBQWM7WUFDOUIsaUJBQWlCLEVBQUUsRUFBRTtZQUNyQiw4QkFBOEIsRUFBRSxFQUFFO1NBQ25DLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQVUsRUFBRSxLQUFnQjtRQUN2QyxPQUFPLENBQUMsRUFBZ0IsRUFBRSxFQUFFO1lBQzFCLE9BQU8sSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUM7SUFDSixDQUFDO0lBQ0Q7Ozs7Ozs7OztPQVNHO0lBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FDWCxFQUFVLEVBQ1YsWUFBb0I7UUFFcEIsT0FBTyxDQUFDLEVBQWdCLEVBQUUsRUFBRTtZQUMxQixPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLEVBQUU7Z0JBQzNDLE9BQU8sRUFBRSxHQUFHLFlBQVksSUFBSSxFQUFFLEVBQUU7YUFDakMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBeEVELGtCQXdFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBUYWdzLCBSZW1vdmFsUG9saWN5LCBTdGFjaywgRm4gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGVjMiBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuXG5pbXBvcnQgeyBTdGFja0J1aWxkZXIgfSBmcm9tIFwiLi4vYXdzU3RhY2tcIjtcbmltcG9ydCB7IExvZ0dyb3VwIH0gZnJvbSBcIi4uL2xvZ2dpbmcvbG9nR3JvdXBcIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3R5cGVzXCI7XG5pbXBvcnQgeyBzdHJpcEFuZENhbWVsQ2FzZSB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9zdHJpcEFuZENhbWVsQ2FzZVwiO1xuXG5pbnRlcmZhY2UgVnBjUHJvcHMgZXh0ZW5kcyBlYzIuVnBjUHJvcHMge1xuICBhY2NvdW50TmFtZT86IHN0cmluZztcbiAgcmVnaW9uPzogc3RyaW5nO1xuICBhdmFpbGFiaWxpdHlab25lcz86IHN0cmluZ1tdO1xuICBpcHY0SXBhbVBvb2xJZD86IHN0cmluZztcbiAgdGFnczogS2V5VmFsdWU7XG59XG5cbmV4cG9ydCBjbGFzcyBWcGMgZXh0ZW5kcyBlYzIuVnBjIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM/OiBWcGNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBgdnBjLSR7aWR9YCwge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICB2cGNOYW1lOiBgdnBjLSR7aWR9YCxcbiAgICAgIGF2YWlsYWJpbGl0eVpvbmVzOiBWcGMuYXZhaWxhYmlsaXR5Wm9uZXMoc2NvcGUpLFxuICAgICAgZmxvd0xvZ3M6IHtcbiAgICAgICAgW2Ake2lkfVZwY0Zsb3dMb2dzYF06IHtcbiAgICAgICAgICBkZXN0aW5hdGlvbjogZWMyLkZsb3dMb2dEZXN0aW5hdGlvbi50b0Nsb3VkV2F0Y2hMb2dzKFxuICAgICAgICAgICAgbmV3IExvZ0dyb3VwKHNjb3BlLCBgJHtpZH1GbG93TG9nR3JvdXBgLCB7XG4gICAgICAgICAgICAgIGxvZ0dyb3VwTmFtZTogYC92cGMvZmxvd2xvZ3MvdnBjLSR7aWR9L2AsXG4gICAgICAgICAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuREVTVFJPWVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBpcEFkZHJlc3NlczogVnBjLmlwQWRkcmVzc2VzKHNjb3BlLCBwcm9wcylcbiAgICB9KTtcblxuICAgIC8vIFJlcXVpcmVkIGZvciB0aGUgVlBDIHRvIHVzZSB0aGUgSVBBTSBQb29sIHRvIHByb3ZzaW9uIElQIGFkZHJlc3Nlc1xuICAgIFRhZ3Mub2YodGhpcykuYWRkKFxuICAgICAgXCJmamFsbDpvcGVyYXRpb25zOnBvb2xcIixcbiAgICAgIGAke3Byb3BzPy5hY2NvdW50TmFtZSB8fCBcIm5vUG9vbFwifWBcbiAgICApO1xuICB9XG5cbiAgc3RhdGljIGF2YWlsYWJpbGl0eVpvbmVzKHNjb3BlOiBDb25zdHJ1Y3QpIHtcbiAgICByZXR1cm4gU3RhY2sub2Yoc2NvcGUpLmF2YWlsYWJpbGl0eVpvbmVzLnNsaWNlKDAsIDMpO1xuICB9XG5cbiAgc3RhdGljIGlwQWRkcmVzc2VzKHNjb3BlOiBDb25zdHJ1Y3QsIHByb3BzPzogVnBjUHJvcHMpIHtcbiAgICBjb25zdCBpcHY0SXBhbVBvb2xJZCA9XG4gICAgICBwcm9wcz8uaXB2NElwYW1Qb29sSWQgfHxcbiAgICAgIEZuLmltcG9ydFZhbHVlKFxuICAgICAgICBgJHtzdHJpcEFuZENhbWVsQ2FzZShwcm9wcz8uYWNjb3VudE5hbWUgfHwgXCJub1Bvb2xcIil9SXBhbVBvb2xJZGBcbiAgICAgICk7XG5cbiAgICAvLyBEZWZhdWx0IHRvIHVuc3BlY2lmaWVkIGlwQWRkcmVzc2VzIGlmIHVuYWJsZSB0byByZWFkIGZyb20gc3RhY2sgb3V0cHV0XG4gICAgaWYgKCFpcHY0SXBhbVBvb2xJZCkgcmV0dXJuIHVuZGVmaW5lZDtcblxuICAgIHJldHVybiBlYzIuSXBBZGRyZXNzZXMuYXdzSXBhbUFsbG9jYXRpb24oe1xuICAgICAgaXB2NElwYW1Qb29sSWQ6IGlwdjRJcGFtUG9vbElkLFxuICAgICAgaXB2NE5ldG1hc2tMZW5ndGg6IDIwLFxuICAgICAgZGVmYXVsdFN1Ym5ldElwdjROZXRtYXNrTGVuZ3RoOiAyM1xuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIGJ1aWxkKGlkOiBzdHJpbmcsIHByb3BzPzogVnBjUHJvcHMpOiAoc2I6IFN0YWNrQnVpbGRlcikgPT4gQ29uc3RydWN0IHtcbiAgICByZXR1cm4gKHNiOiBTdGFja0J1aWxkZXIpID0+IHtcbiAgICAgIHJldHVybiBuZXcgdGhpcyhzYi5nZXRTdGFjaygpLCBpZCwgcHJvcHMpO1xuICAgIH07XG4gIH1cbiAgLyoqXG4gICAqIEltcG9ydHMgYSBwcmUtZXhpc3RpbmcgVlBDIFJlc291cmNlIGludG8geW91ciBTdGFja1xuICAgKlxuICAgKiBCZWZvcmUgdXNpbmcgYW4gaW1wb3J0IG1ldGhvZCBlbnN1cmUgeW91IGhhdmUgc2V0IHRoZSBhY2NvdW50IGFuZCByZWdpb24gcHJvcHNcbiAgICogIHdoZW4gY3JlYXRpbmcgeW91ciBBd3NTdGFjay5cbiAgICpcbiAgICogQHBhcmFtIGlkXG4gICAqIEBwYXJhbSB2cGNTdGFja05hbWVcbiAgICogQHJldHVybnNcbiAgICovXG4gIHN0YXRpYyBpbXBvcnQoXG4gICAgaWQ6IHN0cmluZyxcbiAgICB2cGNTdGFja05hbWU6IHN0cmluZ1xuICApOiAoc2I6IFN0YWNrQnVpbGRlcikgPT4gQ29uc3RydWN0IHtcbiAgICByZXR1cm4gKHNiOiBTdGFja0J1aWxkZXIpID0+IHtcbiAgICAgIHJldHVybiBlYzIuVnBjLmZyb21Mb29rdXAoc2IuZ2V0U3RhY2soKSwgaWQsIHtcbiAgICAgICAgdnBjTmFtZTogYCR7dnBjU3RhY2tOYW1lfS8ke2lkfWBcbiAgICAgIH0pO1xuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -10,7 +10,7 @@ class CustomerManagedKey extends constructs_1.Construct {
10
10
  super(scope, id);
11
11
  this.key = new aws_kms_1.Key(this, `${id}Key`, {
12
12
  description: props.description || `${id} KMS Key`,
13
- removalPolicy: aws_cdk_lib_1.RemovalPolicy.DESTROY
13
+ removalPolicy: aws_cdk_lib_1.RemovalPolicy.RETAIN
14
14
  });
15
15
  new aws_cdk_lib_1.CfnOutput(this, `${id}KeyArn`, {
16
16
  key: `${id}Arn`,
@@ -31,4 +31,4 @@ class CustomerManagedKey extends constructs_1.Construct {
31
31
  }
32
32
  }
33
33
  exports.CustomerManagedKey = CustomerManagedKey;
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia21zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL3Jlc291cmNlcy9hd3Mvc2VjcmV0cy9rbXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQXVEO0FBQ3ZELGlEQUFpRDtBQUNqRCwyQ0FBdUM7QUFDdkMsNERBQXFEO0FBU3JELE1BQWEsa0JBQW1CLFNBQVEsc0JBQVM7SUFJL0MsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxhQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUU7WUFDbkMsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXLElBQUksR0FBRyxFQUFFLFVBQVU7WUFDakQsYUFBYSxFQUFFLDJCQUFhLENBQUMsT0FBTztTQUNyQyxDQUFDLENBQUM7UUFDSCxJQUFJLHVCQUFTLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUU7WUFDakMsR0FBRyxFQUFFLEdBQUcsRUFBRSxLQUFLO1lBQ2YsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTTtZQUN0QixVQUFVLEVBQUUsR0FBRyxFQUFFLFFBQVE7U0FDMUIsQ0FBQyxDQUFDO1FBQ0gsSUFBQSxxQkFBVyxFQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWxDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxlQUFLLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUU7WUFDNUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLElBQUksT0FBTyxFQUFFLEVBQUU7WUFDekMsU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHO1NBQ3BCLENBQUMsQ0FBQztRQUNILElBQUksdUJBQVMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRTtZQUN0QyxHQUFHLEVBQUUsR0FBRyxFQUFFLFVBQVU7WUFDcEIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUTtZQUMxQixVQUFVLEVBQUUsR0FBRyxFQUFFLGFBQWE7U0FDL0IsQ0FBQyxDQUFDO1FBQ0gsSUFBQSxxQkFBVyxFQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Q0FDRjtBQTdCRCxnREE2QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZm5PdXRwdXQsIFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEFsaWFzLCBLZXkgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWttc1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB0YWdSZXNvdXJjZSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvdGFnUmVzb3VyY2VcIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3R5cGVzXCI7XG5cbmludGVyZmFjZSBDdXN0b21lck1hbmFnZWRLZXlQcm9wcyB7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBhbGlhc05hbWU/OiBzdHJpbmc7XG4gIHRhZ3M6IEtleVZhbHVlO1xufVxuXG5leHBvcnQgY2xhc3MgQ3VzdG9tZXJNYW5hZ2VkS2V5IGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGtleTogS2V5O1xuICBwdWJsaWMgcmVhZG9ubHkgYWxpYXM6IEFsaWFzO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDdXN0b21lck1hbmFnZWRLZXlQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmtleSA9IG5ldyBLZXkodGhpcywgYCR7aWR9S2V5YCwge1xuICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uIHx8IGAke2lkfSBLTVMgS2V5YCxcbiAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuREVTVFJPWVxuICAgIH0pO1xuICAgIG5ldyBDZm5PdXRwdXQodGhpcywgYCR7aWR9S2V5QXJuYCwge1xuICAgICAga2V5OiBgJHtpZH1Bcm5gLFxuICAgICAgdmFsdWU6IHRoaXMua2V5LmtleUFybixcbiAgICAgIGV4cG9ydE5hbWU6IGAke2lkfUtleUFybmBcbiAgICB9KTtcbiAgICB0YWdSZXNvdXJjZSh0aGlzLmtleSwgcHJvcHMudGFncyk7XG5cbiAgICB0aGlzLmFsaWFzID0gbmV3IEFsaWFzKHRoaXMsIGAke2lkfUtleUFsaWFzYCwge1xuICAgICAgYWxpYXNOYW1lOiBwcm9wcy5hbGlhc05hbWUgfHwgYGNtay8ke2lkfWAsXG4gICAgICB0YXJnZXRLZXk6IHRoaXMua2V5XG4gICAgfSk7XG4gICAgbmV3IENmbk91dHB1dCh0aGlzLCBgJHtpZH1LZXlBbGlhc0FybmAsIHtcbiAgICAgIGtleTogYCR7aWR9QWxpYXNBcm5gLFxuICAgICAgdmFsdWU6IHRoaXMuYWxpYXMuYWxpYXNBcm4sXG4gICAgICBleHBvcnROYW1lOiBgJHtpZH1LZXlBbGlhc0FybmBcbiAgICB9KTtcbiAgICB0YWdSZXNvdXJjZSh0aGlzLmFsaWFzLCBwcm9wcy50YWdzKTtcbiAgfVxufVxuIl19
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia21zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL3Jlc291cmNlcy9hd3Mvc2VjcmV0cy9rbXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQXVEO0FBQ3ZELGlEQUFpRDtBQUNqRCwyQ0FBdUM7QUFDdkMsNERBQXFEO0FBU3JELE1BQWEsa0JBQW1CLFNBQVEsc0JBQVM7SUFJL0MsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxhQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUU7WUFDbkMsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXLElBQUksR0FBRyxFQUFFLFVBQVU7WUFDakQsYUFBYSxFQUFFLDJCQUFhLENBQUMsTUFBTTtTQUNwQyxDQUFDLENBQUM7UUFDSCxJQUFJLHVCQUFTLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUU7WUFDakMsR0FBRyxFQUFFLEdBQUcsRUFBRSxLQUFLO1lBQ2YsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTTtZQUN0QixVQUFVLEVBQUUsR0FBRyxFQUFFLFFBQVE7U0FDMUIsQ0FBQyxDQUFDO1FBQ0gsSUFBQSxxQkFBVyxFQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWxDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxlQUFLLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUU7WUFDNUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLElBQUksT0FBTyxFQUFFLEVBQUU7WUFDekMsU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHO1NBQ3BCLENBQUMsQ0FBQztRQUNILElBQUksdUJBQVMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRTtZQUN0QyxHQUFHLEVBQUUsR0FBRyxFQUFFLFVBQVU7WUFDcEIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUTtZQUMxQixVQUFVLEVBQUUsR0FBRyxFQUFFLGFBQWE7U0FDL0IsQ0FBQyxDQUFDO1FBQ0gsSUFBQSxxQkFBVyxFQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Q0FDRjtBQTdCRCxnREE2QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZm5PdXRwdXQsIFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEFsaWFzLCBLZXkgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWttc1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB0YWdSZXNvdXJjZSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvdGFnUmVzb3VyY2VcIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uL3R5cGVzXCI7XG5cbmludGVyZmFjZSBDdXN0b21lck1hbmFnZWRLZXlQcm9wcyB7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBhbGlhc05hbWU/OiBzdHJpbmc7XG4gIHRhZ3M6IEtleVZhbHVlO1xufVxuXG5leHBvcnQgY2xhc3MgQ3VzdG9tZXJNYW5hZ2VkS2V5IGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGtleTogS2V5O1xuICBwdWJsaWMgcmVhZG9ubHkgYWxpYXM6IEFsaWFzO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDdXN0b21lck1hbmFnZWRLZXlQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmtleSA9IG5ldyBLZXkodGhpcywgYCR7aWR9S2V5YCwge1xuICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uIHx8IGAke2lkfSBLTVMgS2V5YCxcbiAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuUkVUQUlOXG4gICAgfSk7XG4gICAgbmV3IENmbk91dHB1dCh0aGlzLCBgJHtpZH1LZXlBcm5gLCB7XG4gICAgICBrZXk6IGAke2lkfUFybmAsXG4gICAgICB2YWx1ZTogdGhpcy5rZXkua2V5QXJuLFxuICAgICAgZXhwb3J0TmFtZTogYCR7aWR9S2V5QXJuYFxuICAgIH0pO1xuICAgIHRhZ1Jlc291cmNlKHRoaXMua2V5LCBwcm9wcy50YWdzKTtcblxuICAgIHRoaXMuYWxpYXMgPSBuZXcgQWxpYXModGhpcywgYCR7aWR9S2V5QWxpYXNgLCB7XG4gICAgICBhbGlhc05hbWU6IHByb3BzLmFsaWFzTmFtZSB8fCBgY21rLyR7aWR9YCxcbiAgICAgIHRhcmdldEtleTogdGhpcy5rZXlcbiAgICB9KTtcbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIGAke2lkfUtleUFsaWFzQXJuYCwge1xuICAgICAga2V5OiBgJHtpZH1BbGlhc0FybmAsXG4gICAgICB2YWx1ZTogdGhpcy5hbGlhcy5hbGlhc0FybixcbiAgICAgIGV4cG9ydE5hbWU6IGAke2lkfUtleUFsaWFzQXJuYFxuICAgIH0pO1xuICAgIHRhZ1Jlc291cmNlKHRoaXMuYWxpYXMsIHByb3BzLnRhZ3MpO1xuICB9XG59XG4iXX0=
@@ -2,11 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const getConfig_1 = require("./getConfig");
4
4
  function getAccountId(environment) {
5
- const config = (0, getConfig_1.getEnviornmentConfig)(environment);
5
+ //TODO: in the use cases of getAccountId, we are currently passing in accountName
6
+ const config = (0, getConfig_1.getEnvironmentConfig)(environment);
6
7
  // TODO: need to fix how we handle this in the VPC module
7
- if (!config || !config.account)
8
+ if (!config || !config.accountId)
8
9
  return "error";
9
- return config.account;
10
+ return config.accountId;
10
11
  }
11
12
  exports.default = getAccountId;
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0QWNjb3VudElkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3V0aWxzL2dldEFjY291bnRJZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDJDQUFtRDtBQUVuRCxTQUF3QixZQUFZLENBQUMsV0FBbUI7SUFDdEQsTUFBTSxNQUFNLEdBQUcsSUFBQSxnQ0FBb0IsRUFBQyxXQUFXLENBQUMsQ0FBQztJQUNqRCx5REFBeUQ7SUFDekQsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPO1FBQUUsT0FBTyxPQUFPLENBQUM7SUFFL0MsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDO0FBQ3hCLENBQUM7QUFORCwrQkFNQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldEVudmlvcm5tZW50Q29uZmlnIH0gZnJvbSBcIi4vZ2V0Q29uZmlnXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldEFjY291bnRJZChlbnZpcm9ubWVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgY29uZmlnID0gZ2V0RW52aW9ybm1lbnRDb25maWcoZW52aXJvbm1lbnQpO1xuICAvLyBUT0RPOiBuZWVkIHRvIGZpeCBob3cgd2UgaGFuZGxlIHRoaXMgaW4gdGhlIFZQQyBtb2R1bGVcbiAgaWYgKCFjb25maWcgfHwgIWNvbmZpZy5hY2NvdW50KSByZXR1cm4gXCJlcnJvclwiO1xuXG4gIHJldHVybiBjb25maWcuYWNjb3VudDtcbn1cbiJdfQ==
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0QWNjb3VudElkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3V0aWxzL2dldEFjY291bnRJZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDJDQUFtRDtBQUVuRCxTQUF3QixZQUFZLENBQUMsV0FBbUI7SUFDdEQsaUZBQWlGO0lBQ2pGLE1BQU0sTUFBTSxHQUFHLElBQUEsZ0NBQW9CLEVBQUMsV0FBVyxDQUFDLENBQUM7SUFDakQseURBQXlEO0lBQ3pELElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUztRQUFFLE9BQU8sT0FBTyxDQUFDO0lBRWpELE9BQU8sTUFBTSxDQUFDLFNBQVMsQ0FBQztBQUMxQixDQUFDO0FBUEQsK0JBT0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRFbnZpcm9ubWVudENvbmZpZyB9IGZyb20gXCIuL2dldENvbmZpZ1wiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRBY2NvdW50SWQoZW52aXJvbm1lbnQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIC8vVE9ETzogaW4gdGhlIHVzZSBjYXNlcyBvZiBnZXRBY2NvdW50SWQsIHdlIGFyZSBjdXJyZW50bHkgcGFzc2luZyBpbiBhY2NvdW50TmFtZVxuICBjb25zdCBjb25maWcgPSBnZXRFbnZpcm9ubWVudENvbmZpZyhlbnZpcm9ubWVudCk7XG4gIC8vIFRPRE86IG5lZWQgdG8gZml4IGhvdyB3ZSBoYW5kbGUgdGhpcyBpbiB0aGUgVlBDIG1vZHVsZVxuICBpZiAoIWNvbmZpZyB8fCAhY29uZmlnLmFjY291bnRJZCkgcmV0dXJuIFwiZXJyb3JcIjtcblxuICByZXR1cm4gY29uZmlnLmFjY291bnRJZDtcbn1cbiJdfQ==
@@ -0,0 +1,10 @@
1
+ import { Account } from "@aws-sdk/client-organizations";
2
+ /**
3
+ * This is an example of an async class that will resolve when a synth is run
4
+ */
5
+ export default class Accounts {
6
+ ready: Promise<void>;
7
+ private configFile;
8
+ constructor(region: string);
9
+ getAccounts(): Account[];
10
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const client_organizations_1 = require("@aws-sdk/client-organizations");
4
+ const fs = require("fs");
5
+ /**
6
+ * This is an example of an async class that will resolve when a synth is run
7
+ */
8
+ class Accounts {
9
+ constructor(region) {
10
+ this.configFile = "fjall/accounts-config.json";
11
+ // Ensure fjall directory exists
12
+ fs.mkdirSync("fjall", { recursive: true });
13
+ // Make API Call
14
+ const client = new client_organizations_1.OrganizationsClient({
15
+ region: region
16
+ });
17
+ const request = new client_organizations_1.ListAccountsCommand({
18
+ MaxResults: Number("20")
19
+ });
20
+ this.ready = new Promise((resolve, reject) => {
21
+ client
22
+ .send(request)
23
+ .then((result) => {
24
+ const configString = JSON.stringify(result.Accounts);
25
+ fs.writeFileSync(this.configFile, configString);
26
+ resolve(undefined);
27
+ })
28
+ .catch(reject);
29
+ });
30
+ }
31
+ getAccounts() {
32
+ const data = fs.readFileSync(this.configFile, "utf-8");
33
+ return JSON.parse(data);
34
+ }
35
+ }
36
+ exports.default = Accounts;
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0QXN5bmMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvdXRpbHMvZ2V0QXN5bmMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx3RUFJdUM7QUFDdkMseUJBQXlCO0FBRXpCOztHQUVHO0FBQ0gsTUFBcUIsUUFBUTtJQUszQixZQUFZLE1BQWM7UUFGbEIsZUFBVSxHQUFHLDRCQUE0QixDQUFDO1FBR2hELGdDQUFnQztRQUNoQyxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTNDLGdCQUFnQjtRQUNoQixNQUFNLE1BQU0sR0FBRyxJQUFJLDBDQUFtQixDQUFDO1lBQ3JDLE1BQU0sRUFBRSxNQUFNO1NBQ2YsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxPQUFPLEdBQUcsSUFBSSwwQ0FBbUIsQ0FBQztZQUN0QyxVQUFVLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQztTQUN6QixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzNDLE1BQU07aUJBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQztpQkFDYixJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtnQkFDZixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDckQsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDO2dCQUNoRCxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDckIsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQWMsQ0FBQztJQUN2QyxDQUFDO0NBQ0Y7QUFoQ0QsMkJBZ0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWNjb3VudCxcbiAgTGlzdEFjY291bnRzQ29tbWFuZCxcbiAgT3JnYW5pemF0aW9uc0NsaWVudFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LW9yZ2FuaXphdGlvbnNcIjtcbmltcG9ydCAqIGFzIGZzIGZyb20gXCJmc1wiO1xuXG4vKipcbiAqIFRoaXMgaXMgYW4gZXhhbXBsZSBvZiBhbiBhc3luYyBjbGFzcyB0aGF0IHdpbGwgcmVzb2x2ZSB3aGVuIGEgc3ludGggaXMgcnVuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFjY291bnRzIHtcbiAgcHVibGljIHJlYWR5OiBQcm9taXNlPHZvaWQ+O1xuXG4gIHByaXZhdGUgY29uZmlnRmlsZSA9IFwiZmphbGwvYWNjb3VudHMtY29uZmlnLmpzb25cIjtcblxuICBjb25zdHJ1Y3RvcihyZWdpb246IHN0cmluZykge1xuICAgIC8vIEVuc3VyZSBmamFsbCBkaXJlY3RvcnkgZXhpc3RzXG4gICAgZnMubWtkaXJTeW5jKFwiZmphbGxcIiwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cbiAgICAvLyBNYWtlIEFQSSBDYWxsXG4gICAgY29uc3QgY2xpZW50ID0gbmV3IE9yZ2FuaXphdGlvbnNDbGllbnQoe1xuICAgICAgcmVnaW9uOiByZWdpb25cbiAgICB9KTtcbiAgICBjb25zdCByZXF1ZXN0ID0gbmV3IExpc3RBY2NvdW50c0NvbW1hbmQoe1xuICAgICAgTWF4UmVzdWx0czogTnVtYmVyKFwiMjBcIilcbiAgICB9KTtcbiAgICB0aGlzLnJlYWR5ID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY2xpZW50XG4gICAgICAgIC5zZW5kKHJlcXVlc3QpXG4gICAgICAgIC50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICBjb25zdCBjb25maWdTdHJpbmcgPSBKU09OLnN0cmluZ2lmeShyZXN1bHQuQWNjb3VudHMpO1xuICAgICAgICAgIGZzLndyaXRlRmlsZVN5bmModGhpcy5jb25maWdGaWxlLCBjb25maWdTdHJpbmcpO1xuICAgICAgICAgIHJlc29sdmUodW5kZWZpbmVkKTtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKHJlamVjdCk7XG4gICAgfSk7XG4gIH1cblxuICBnZXRBY2NvdW50cygpOiBBY2NvdW50W10ge1xuICAgIGNvbnN0IGRhdGEgPSBmcy5yZWFkRmlsZVN5bmModGhpcy5jb25maWdGaWxlLCBcInV0Zi04XCIpO1xuICAgIHJldHVybiBKU09OLnBhcnNlKGRhdGEpIGFzIEFjY291bnRbXTtcbiAgfVxufVxuIl19
@@ -3,9 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const fs = require("fs");
4
4
  class CidrBlock {
5
5
  constructor() {
6
- this.configFile = ".fjall/.cidr-config.json";
7
- // Ensure .fjall directory exists
8
- fs.mkdirSync(".fjall", { recursive: true });
6
+ this.configFile = "fjall/cidr-config.json";
7
+ // Ensure fjall directory exists
8
+ fs.mkdirSync("fjall", { recursive: true });
9
9
  // Import config, or create it if it doesn't exist
10
10
  if (fs.existsSync(this.configFile)) {
11
11
  const configString = fs.readFileSync(this.configFile, "utf-8");
@@ -39,4 +39,4 @@ class CidrBlock {
39
39
  }
40
40
  }
41
41
  exports.default = CidrBlock;
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Q2lkci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi91dGlscy9nZXRDaWRyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEseUJBQXlCO0FBTXpCLE1BQXFCLFNBQVM7SUFJNUI7UUFGUSxlQUFVLEdBQUcsMEJBQTBCLENBQUM7UUFHOUMsaUNBQWlDO1FBQ2pDLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFNUMsa0RBQWtEO1FBQ2xELElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDbEMsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQy9ELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUMzQzthQUFNO1lBQ0wsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7WUFDcEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDO2FBQ3ZDO1lBQ0QsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM3RCxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUM7U0FDakQ7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLG9DQUFvQztRQUNwQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdELEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsWUFBWTtRQUNWLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNoQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3ZCLE9BQU8sR0FBRyxDQUFDO2FBQ1o7U0FDRjtRQUNELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXLENBQUMsU0FBaUIsRUFBRSxNQUFlO1FBQzVDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQ25DLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0NBQ0Y7QUF6Q0QsNEJBeUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5cbmludGVyZmFjZSBjaWRyVGFibGUge1xuICBba2V5OiBzdHJpbmddOiBib29sZWFuO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDaWRyQmxvY2sge1xuICBwcml2YXRlIGNpZHJCbG9jazogY2lkclRhYmxlO1xuICBwcml2YXRlIGNvbmZpZ0ZpbGUgPSBcIi5mamFsbC8uY2lkci1jb25maWcuanNvblwiO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIC8vIEVuc3VyZSAuZmphbGwgZGlyZWN0b3J5IGV4aXN0c1xuICAgIGZzLm1rZGlyU3luYyhcIi5mamFsbFwiLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcblxuICAgIC8vIEltcG9ydCBjb25maWcsIG9yIGNyZWF0ZSBpdCBpZiBpdCBkb2Vzbid0IGV4aXN0XG4gICAgaWYgKGZzLmV4aXN0c1N5bmModGhpcy5jb25maWdGaWxlKSkge1xuICAgICAgY29uc3QgY29uZmlnU3RyaW5nID0gZnMucmVhZEZpbGVTeW5jKHRoaXMuY29uZmlnRmlsZSwgXCJ1dGYtOFwiKTtcbiAgICAgIHRoaXMuY2lkckJsb2NrID0gSlNPTi5wYXJzZShjb25maWdTdHJpbmcpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNpZHJCbG9jayA9IHt9O1xuICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gMjU1OyBpKyspIHtcbiAgICAgICAgdGhpcy5jaWRyQmxvY2tbYCR7aX0uMC4wLjAvOGBdID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGNvbmZpZ1N0cmluZyA9IEpTT04uc3RyaW5naWZ5KHRoaXMuY2lkckJsb2NrLCBudWxsLCAyKTtcbiAgICAgIGZzLndyaXRlRmlsZVN5bmModGhpcy5jb25maWdGaWxlLCBjb25maWdTdHJpbmcpO1xuICAgIH1cbiAgfVxuXG4gIHdyaXRlU3RhdGUoKSB7XG4gICAgLy8gSlNPTi1pZnkgY29uZmlnIGFuZCB3cml0ZSB0byBmaWxlXG4gICAgY29uc3QgY29uZmlnU3RyaW5nID0gSlNPTi5zdHJpbmdpZnkodGhpcy5jaWRyQmxvY2ssIG51bGwsIDIpO1xuICAgIGZzLndyaXRlRmlsZVN5bmModGhpcy5jb25maWdGaWxlLCBjb25maWdTdHJpbmcpO1xuICB9XG5cbiAgZ2V0Q2lkckJsb2NrKCkge1xuICAgIGZvciAoY29uc3Qga2V5IGluIHRoaXMuY2lkckJsb2NrKSB7XG4gICAgICBpZiAodGhpcy5jaWRyQmxvY2tba2V5XSkge1xuICAgICAgICByZXR1cm4ga2V5O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gXCIwLjAuMC4wLzhcIjtcbiAgfVxuXG4gIHVwZGF0ZVN0YXRlKGNpZHJCbG9jazogc3RyaW5nLCBzdGF0dXM6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmNpZHJCbG9ja1tjaWRyQmxvY2tdID0gc3RhdHVzO1xuICAgIHRoaXMud3JpdGVTdGF0ZSgpO1xuICB9XG59XG4iXX0=
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Q2lkci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi91dGlscy9nZXRDaWRyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEseUJBQXlCO0FBTXpCLE1BQXFCLFNBQVM7SUFJNUI7UUFGUSxlQUFVLEdBQUcsd0JBQXdCLENBQUM7UUFHNUMsZ0NBQWdDO1FBQ2hDLEVBQUUsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFM0Msa0RBQWtEO1FBQ2xELElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDbEMsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQy9ELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUMzQzthQUFNO1lBQ0wsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7WUFDcEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDO2FBQ3ZDO1lBQ0QsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM3RCxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUM7U0FDakQ7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLG9DQUFvQztRQUNwQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdELEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsWUFBWTtRQUNWLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNoQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3ZCLE9BQU8sR0FBRyxDQUFDO2FBQ1o7U0FDRjtRQUNELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXLENBQUMsU0FBaUIsRUFBRSxNQUFlO1FBQzVDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQ25DLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0NBQ0Y7QUF6Q0QsNEJBeUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5cbmludGVyZmFjZSBjaWRyVGFibGUge1xuICBba2V5OiBzdHJpbmddOiBib29sZWFuO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDaWRyQmxvY2sge1xuICBwcml2YXRlIGNpZHJCbG9jazogY2lkclRhYmxlO1xuICBwcml2YXRlIGNvbmZpZ0ZpbGUgPSBcImZqYWxsL2NpZHItY29uZmlnLmpzb25cIjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBFbnN1cmUgZmphbGwgZGlyZWN0b3J5IGV4aXN0c1xuICAgIGZzLm1rZGlyU3luYyhcImZqYWxsXCIsIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuXG4gICAgLy8gSW1wb3J0IGNvbmZpZywgb3IgY3JlYXRlIGl0IGlmIGl0IGRvZXNuJ3QgZXhpc3RcbiAgICBpZiAoZnMuZXhpc3RzU3luYyh0aGlzLmNvbmZpZ0ZpbGUpKSB7XG4gICAgICBjb25zdCBjb25maWdTdHJpbmcgPSBmcy5yZWFkRmlsZVN5bmModGhpcy5jb25maWdGaWxlLCBcInV0Zi04XCIpO1xuICAgICAgdGhpcy5jaWRyQmxvY2sgPSBKU09OLnBhcnNlKGNvbmZpZ1N0cmluZyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2lkckJsb2NrID0ge307XG4gICAgICBmb3IgKGxldCBpID0gMTsgaSA8PSAyNTU7IGkrKykge1xuICAgICAgICB0aGlzLmNpZHJCbG9ja1tgJHtpfS4wLjAuMC84YF0gPSB0cnVlO1xuICAgICAgfVxuICAgICAgY29uc3QgY29uZmlnU3RyaW5nID0gSlNPTi5zdHJpbmdpZnkodGhpcy5jaWRyQmxvY2ssIG51bGwsIDIpO1xuICAgICAgZnMud3JpdGVGaWxlU3luYyh0aGlzLmNvbmZpZ0ZpbGUsIGNvbmZpZ1N0cmluZyk7XG4gICAgfVxuICB9XG5cbiAgd3JpdGVTdGF0ZSgpIHtcbiAgICAvLyBKU09OLWlmeSBjb25maWcgYW5kIHdyaXRlIHRvIGZpbGVcbiAgICBjb25zdCBjb25maWdTdHJpbmcgPSBKU09OLnN0cmluZ2lmeSh0aGlzLmNpZHJCbG9jaywgbnVsbCwgMik7XG4gICAgZnMud3JpdGVGaWxlU3luYyh0aGlzLmNvbmZpZ0ZpbGUsIGNvbmZpZ1N0cmluZyk7XG4gIH1cblxuICBnZXRDaWRyQmxvY2soKSB7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gdGhpcy5jaWRyQmxvY2spIHtcbiAgICAgIGlmICh0aGlzLmNpZHJCbG9ja1trZXldKSB7XG4gICAgICAgIHJldHVybiBrZXk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBcIjAuMC4wLjAvOFwiO1xuICB9XG5cbiAgdXBkYXRlU3RhdGUoY2lkckJsb2NrOiBzdHJpbmcsIHN0YXR1czogYm9vbGVhbikge1xuICAgIHRoaXMuY2lkckJsb2NrW2NpZHJCbG9ja10gPSBzdGF0dXM7XG4gICAgdGhpcy53cml0ZVN0YXRlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,9 +1,11 @@
1
+ import { Account } from "@aws-sdk/client-organizations";
1
2
  interface Config {
2
3
  environment: string;
3
- account: string;
4
+ accountId: string;
4
5
  accountName: string;
5
6
  region: string;
7
+ existingAccounts: Account[];
6
8
  }
7
- export declare function getEnviornmentConfig(environment: string): Config;
9
+ export declare function getEnvironmentConfig(accountName: string): Config;
8
10
  export declare function getConfig(): Config;
9
11
  export default getConfig;
@@ -1,50 +1,54 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getConfig = exports.getEnviornmentConfig = void 0;
3
+ exports.getConfig = exports.getEnvironmentConfig = void 0;
4
4
  const app_1 = require("../app");
5
5
  const util_1 = require("@fjall/util");
6
- function getEnviornmentConfig(environment) {
6
+ function getEnvironmentConfig(accountName) {
7
7
  const config = util_1.Config.loadConfig();
8
- const providerAccount = config.getProviderAccount(environment);
8
+ const providerAccount = config.getProviderAccount(accountName);
9
+ const existingAccounts = config.getExistingAccounts();
9
10
  const region = process.env.AWS_REGION;
10
11
  if (!providerAccount) {
11
- console.error(`No provider account found for environment: ${environment}`);
12
- throw new Error(`No provider account found for environment: ${environment}`);
12
+ console.error(`No provider account found for account: ${accountName}`);
13
+ throw new Error(`No provider account found for account: ${accountName}`);
13
14
  }
14
15
  if (!region) {
15
16
  console.error("Variable AWS_REGION is not set in your environment, please specify");
16
17
  throw new Error("Variable AWS_REGION is not set in your environment, please specify");
17
18
  }
18
19
  return {
19
- environment: environment,
20
- account: providerAccount.id,
20
+ environment: providerAccount.environment,
21
+ accountId: providerAccount.id,
21
22
  accountName: providerAccount.name,
22
- region: region
23
+ region: region,
24
+ existingAccounts: existingAccounts
23
25
  };
24
26
  }
25
- exports.getEnviornmentConfig = getEnviornmentConfig;
27
+ exports.getEnvironmentConfig = getEnvironmentConfig;
26
28
  function getConfig() {
27
29
  const app = app_1.default.getInstance();
28
30
  // Get cdk deploy --context config
29
- const env = app.node.tryGetContext("environment");
31
+ const env = app.node.tryGetContext("accountName");
30
32
  const config = util_1.Config.loadConfig();
31
33
  const providerAccount = config.getProviderAccount(env);
34
+ const existingAccounts = config.getExistingAccounts();
32
35
  const region = process.env.AWS_REGION;
33
36
  if (!providerAccount) {
34
- console.warn(`No provider account found for environment: ${env}`);
35
- throw new Error(`No provider account found for environment: ${env}`);
37
+ console.warn(`No provider account found for account: ${env}`);
38
+ throw new Error(`No provider account found for account: ${env}`);
36
39
  }
37
40
  if (!region) {
38
41
  console.error("Variable AWS_REGION is not set in your environment");
39
42
  throw new Error("Variable AWS_REGION is not set in your environment");
40
43
  }
41
44
  return {
42
- environment: env,
43
- account: providerAccount.id,
45
+ environment: providerAccount.environment,
46
+ accountId: providerAccount.id,
44
47
  accountName: providerAccount.name,
45
- region: region
48
+ region: region,
49
+ existingAccounts: existingAccounts
46
50
  };
47
51
  }
48
52
  exports.getConfig = getConfig;
49
53
  exports.default = getConfig;
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Q29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3V0aWxzL2dldENvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnQ0FBeUI7QUFDekIsc0NBQW9EO0FBU3BELFNBQWdCLG9CQUFvQixDQUFDLFdBQW1CO0lBQ3RELE1BQU0sTUFBTSxHQUFHLGFBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7SUFFdEMsSUFBSSxDQUFDLGVBQWUsRUFBRTtRQUNwQixPQUFPLENBQUMsS0FBSyxDQUFDLDhDQUE4QyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzNFLE1BQU0sSUFBSSxLQUFLLENBQ2IsOENBQThDLFdBQVcsRUFBRSxDQUM1RCxDQUFDO0tBQ0g7SUFFRCxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsT0FBTyxDQUFDLEtBQUssQ0FDWCxvRUFBb0UsQ0FDckUsQ0FBQztRQUNGLE1BQU0sSUFBSSxLQUFLLENBQ2Isb0VBQW9FLENBQ3JFLENBQUM7S0FDSDtJQUVELE9BQU87UUFDTCxXQUFXLEVBQUUsV0FBVztRQUN4QixPQUFPLEVBQUUsZUFBZSxDQUFDLEVBQUU7UUFDM0IsV0FBVyxFQUFFLGVBQWUsQ0FBQyxJQUFJO1FBQ2pDLE1BQU0sRUFBRSxNQUFNO0tBQ2YsQ0FBQztBQUNKLENBQUM7QUEzQkQsb0RBMkJDO0FBRUQsU0FBZ0IsU0FBUztJQUN2QixNQUFNLEdBQUcsR0FBRyxhQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFOUIsa0NBQWtDO0lBQ2xDLE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBRWxELE1BQU0sTUFBTSxHQUFHLGFBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdkQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7SUFFdEMsSUFBSSxDQUFDLGVBQWUsRUFBRTtRQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLDhDQUE4QyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLEdBQUcsRUFBRSxDQUFDLENBQUM7S0FDdEU7SUFFRCxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sSUFBSSxLQUFLLENBQUMsb0RBQW9ELENBQUMsQ0FBQztLQUN2RTtJQUVELE9BQU87UUFDTCxXQUFXLEVBQUUsR0FBRztRQUNoQixPQUFPLEVBQUUsZUFBZSxDQUFDLEVBQUU7UUFDM0IsV0FBVyxFQUFFLGVBQWUsQ0FBQyxJQUFJO1FBQ2pDLE1BQU0sRUFBRSxNQUFNO0tBQ2YsQ0FBQztBQUNKLENBQUM7QUExQkQsOEJBMEJDO0FBQ0Qsa0JBQWUsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEFwcCBmcm9tIFwiLi4vYXBwXCI7XG5pbXBvcnQgeyBDb25maWcgYXMgRmphbGxDb25maWcgfSBmcm9tIFwiQGZqYWxsL3V0aWxcIjtcblxuaW50ZXJmYWNlIENvbmZpZyB7XG4gIGVudmlyb25tZW50OiBzdHJpbmc7XG4gIGFjY291bnQ6IHN0cmluZztcbiAgYWNjb3VudE5hbWU6IHN0cmluZztcbiAgcmVnaW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbnZpb3JubWVudENvbmZpZyhlbnZpcm9ubWVudDogc3RyaW5nKTogQ29uZmlnIHtcbiAgY29uc3QgY29uZmlnID0gRmphbGxDb25maWcubG9hZENvbmZpZygpO1xuICBjb25zdCBwcm92aWRlckFjY291bnQgPSBjb25maWcuZ2V0UHJvdmlkZXJBY2NvdW50KGVudmlyb25tZW50KTtcbiAgY29uc3QgcmVnaW9uID0gcHJvY2Vzcy5lbnYuQVdTX1JFR0lPTjtcblxuICBpZiAoIXByb3ZpZGVyQWNjb3VudCkge1xuICAgIGNvbnNvbGUuZXJyb3IoYE5vIHByb3ZpZGVyIGFjY291bnQgZm91bmQgZm9yIGVudmlyb25tZW50OiAke2Vudmlyb25tZW50fWApO1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBObyBwcm92aWRlciBhY2NvdW50IGZvdW5kIGZvciBlbnZpcm9ubWVudDogJHtlbnZpcm9ubWVudH1gXG4gICAgKTtcbiAgfVxuXG4gIGlmICghcmVnaW9uKSB7XG4gICAgY29uc29sZS5lcnJvcihcbiAgICAgIFwiVmFyaWFibGUgQVdTX1JFR0lPTiBpcyBub3Qgc2V0IGluIHlvdXIgZW52aXJvbm1lbnQsIHBsZWFzZSBzcGVjaWZ5XCJcbiAgICApO1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIFwiVmFyaWFibGUgQVdTX1JFR0lPTiBpcyBub3Qgc2V0IGluIHlvdXIgZW52aXJvbm1lbnQsIHBsZWFzZSBzcGVjaWZ5XCJcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBlbnZpcm9ubWVudDogZW52aXJvbm1lbnQsXG4gICAgYWNjb3VudDogcHJvdmlkZXJBY2NvdW50LmlkLFxuICAgIGFjY291bnROYW1lOiBwcm92aWRlckFjY291bnQubmFtZSxcbiAgICByZWdpb246IHJlZ2lvblxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29uZmlnKCk6IENvbmZpZyB7XG4gIGNvbnN0IGFwcCA9IEFwcC5nZXRJbnN0YW5jZSgpO1xuXG4gIC8vIEdldCBjZGsgZGVwbG95IC0tY29udGV4dCBjb25maWdcbiAgY29uc3QgZW52ID0gYXBwLm5vZGUudHJ5R2V0Q29udGV4dChcImVudmlyb25tZW50XCIpO1xuXG4gIGNvbnN0IGNvbmZpZyA9IEZqYWxsQ29uZmlnLmxvYWRDb25maWcoKTtcbiAgY29uc3QgcHJvdmlkZXJBY2NvdW50ID0gY29uZmlnLmdldFByb3ZpZGVyQWNjb3VudChlbnYpO1xuICBjb25zdCByZWdpb24gPSBwcm9jZXNzLmVudi5BV1NfUkVHSU9OO1xuXG4gIGlmICghcHJvdmlkZXJBY2NvdW50KSB7XG4gICAgY29uc29sZS53YXJuKGBObyBwcm92aWRlciBhY2NvdW50IGZvdW5kIGZvciBlbnZpcm9ubWVudDogJHtlbnZ9YCk7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBObyBwcm92aWRlciBhY2NvdW50IGZvdW5kIGZvciBlbnZpcm9ubWVudDogJHtlbnZ9YCk7XG4gIH1cblxuICBpZiAoIXJlZ2lvbikge1xuICAgIGNvbnNvbGUuZXJyb3IoXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudFwiKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudFwiKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZW52aXJvbm1lbnQ6IGVudixcbiAgICBhY2NvdW50OiBwcm92aWRlckFjY291bnQuaWQsXG4gICAgYWNjb3VudE5hbWU6IHByb3ZpZGVyQWNjb3VudC5uYW1lLFxuICAgIHJlZ2lvbjogcmVnaW9uXG4gIH07XG59XG5leHBvcnQgZGVmYXVsdCBnZXRDb25maWc7XG4iXX0=
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Q29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3V0aWxzL2dldENvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxnQ0FBeUI7QUFDekIsc0NBQW9EO0FBVXBELFNBQWdCLG9CQUFvQixDQUFDLFdBQW1CO0lBQ3RELE1BQU0sTUFBTSxHQUFHLGFBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUN0RCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQztJQUV0QyxJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ3BCLE9BQU8sQ0FBQyxLQUFLLENBQUMsMENBQTBDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDdkUsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsV0FBVyxFQUFFLENBQUMsQ0FBQztLQUMxRTtJQUVELElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDWCxPQUFPLENBQUMsS0FBSyxDQUNYLG9FQUFvRSxDQUNyRSxDQUFDO1FBQ0YsTUFBTSxJQUFJLEtBQUssQ0FDYixvRUFBb0UsQ0FDckUsQ0FBQztLQUNIO0lBRUQsT0FBTztRQUNMLFdBQVcsRUFBRSxlQUFlLENBQUMsV0FBVztRQUN4QyxTQUFTLEVBQUUsZUFBZSxDQUFDLEVBQUU7UUFDN0IsV0FBVyxFQUFFLGVBQWUsQ0FBQyxJQUFJO1FBQ2pDLE1BQU0sRUFBRSxNQUFNO1FBQ2QsZ0JBQWdCLEVBQUUsZ0JBQWdCO0tBQ25DLENBQUM7QUFDSixDQUFDO0FBM0JELG9EQTJCQztBQUVELFNBQWdCLFNBQVM7SUFDdkIsTUFBTSxHQUFHLEdBQUcsYUFBRyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBRTlCLGtDQUFrQztJQUNsQyxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUVsRCxNQUFNLE1BQU0sR0FBRyxhQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDeEMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDdEQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7SUFFdEMsSUFBSSxDQUFDLGVBQWUsRUFBRTtRQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLDBDQUEwQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzlELE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLEdBQUcsRUFBRSxDQUFDLENBQUM7S0FDbEU7SUFFRCxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sSUFBSSxLQUFLLENBQUMsb0RBQW9ELENBQUMsQ0FBQztLQUN2RTtJQUVELE9BQU87UUFDTCxXQUFXLEVBQUUsZUFBZSxDQUFDLFdBQVc7UUFDeEMsU0FBUyxFQUFFLGVBQWUsQ0FBQyxFQUFFO1FBQzdCLFdBQVcsRUFBRSxlQUFlLENBQUMsSUFBSTtRQUNqQyxNQUFNLEVBQUUsTUFBTTtRQUNkLGdCQUFnQixFQUFFLGdCQUFnQjtLQUNuQyxDQUFDO0FBQ0osQ0FBQztBQTVCRCw4QkE0QkM7QUFDRCxrQkFBZSxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY2NvdW50IH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1vcmdhbml6YXRpb25zXCI7XG5cbmltcG9ydCBBcHAgZnJvbSBcIi4uL2FwcFwiO1xuaW1wb3J0IHsgQ29uZmlnIGFzIEZqYWxsQ29uZmlnIH0gZnJvbSBcIkBmamFsbC91dGlsXCI7XG5cbmludGVyZmFjZSBDb25maWcge1xuICBlbnZpcm9ubWVudDogc3RyaW5nO1xuICBhY2NvdW50SWQ6IHN0cmluZztcbiAgYWNjb3VudE5hbWU6IHN0cmluZztcbiAgcmVnaW9uOiBzdHJpbmc7XG4gIGV4aXN0aW5nQWNjb3VudHM6IEFjY291bnRbXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEVudmlyb25tZW50Q29uZmlnKGFjY291bnROYW1lOiBzdHJpbmcpOiBDb25maWcge1xuICBjb25zdCBjb25maWcgPSBGamFsbENvbmZpZy5sb2FkQ29uZmlnKCk7XG4gIGNvbnN0IHByb3ZpZGVyQWNjb3VudCA9IGNvbmZpZy5nZXRQcm92aWRlckFjY291bnQoYWNjb3VudE5hbWUpO1xuICBjb25zdCBleGlzdGluZ0FjY291bnRzID0gY29uZmlnLmdldEV4aXN0aW5nQWNjb3VudHMoKTtcbiAgY29uc3QgcmVnaW9uID0gcHJvY2Vzcy5lbnYuQVdTX1JFR0lPTjtcblxuICBpZiAoIXByb3ZpZGVyQWNjb3VudCkge1xuICAgIGNvbnNvbGUuZXJyb3IoYE5vIHByb3ZpZGVyIGFjY291bnQgZm91bmQgZm9yIGFjY291bnQ6ICR7YWNjb3VudE5hbWV9YCk7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBObyBwcm92aWRlciBhY2NvdW50IGZvdW5kIGZvciBhY2NvdW50OiAke2FjY291bnROYW1lfWApO1xuICB9XG5cbiAgaWYgKCFyZWdpb24pIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudCwgcGxlYXNlIHNwZWNpZnlcIlxuICAgICk7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudCwgcGxlYXNlIHNwZWNpZnlcIlxuICAgICk7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGVudmlyb25tZW50OiBwcm92aWRlckFjY291bnQuZW52aXJvbm1lbnQsXG4gICAgYWNjb3VudElkOiBwcm92aWRlckFjY291bnQuaWQsXG4gICAgYWNjb3VudE5hbWU6IHByb3ZpZGVyQWNjb3VudC5uYW1lLFxuICAgIHJlZ2lvbjogcmVnaW9uLFxuICAgIGV4aXN0aW5nQWNjb3VudHM6IGV4aXN0aW5nQWNjb3VudHNcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbmZpZygpOiBDb25maWcge1xuICBjb25zdCBhcHAgPSBBcHAuZ2V0SW5zdGFuY2UoKTtcblxuICAvLyBHZXQgY2RrIGRlcGxveSAtLWNvbnRleHQgY29uZmlnXG4gIGNvbnN0IGVudiA9IGFwcC5ub2RlLnRyeUdldENvbnRleHQoXCJhY2NvdW50TmFtZVwiKTtcblxuICBjb25zdCBjb25maWcgPSBGamFsbENvbmZpZy5sb2FkQ29uZmlnKCk7XG4gIGNvbnN0IHByb3ZpZGVyQWNjb3VudCA9IGNvbmZpZy5nZXRQcm92aWRlckFjY291bnQoZW52KTtcbiAgY29uc3QgZXhpc3RpbmdBY2NvdW50cyA9IGNvbmZpZy5nZXRFeGlzdGluZ0FjY291bnRzKCk7XG4gIGNvbnN0IHJlZ2lvbiA9IHByb2Nlc3MuZW52LkFXU19SRUdJT047XG5cbiAgaWYgKCFwcm92aWRlckFjY291bnQpIHtcbiAgICBjb25zb2xlLndhcm4oYE5vIHByb3ZpZGVyIGFjY291bnQgZm91bmQgZm9yIGFjY291bnQ6ICR7ZW52fWApO1xuICAgIHRocm93IG5ldyBFcnJvcihgTm8gcHJvdmlkZXIgYWNjb3VudCBmb3VuZCBmb3IgYWNjb3VudDogJHtlbnZ9YCk7XG4gIH1cblxuICBpZiAoIXJlZ2lvbikge1xuICAgIGNvbnNvbGUuZXJyb3IoXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudFwiKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudFwiKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZW52aXJvbm1lbnQ6IHByb3ZpZGVyQWNjb3VudC5lbnZpcm9ubWVudCxcbiAgICBhY2NvdW50SWQ6IHByb3ZpZGVyQWNjb3VudC5pZCxcbiAgICBhY2NvdW50TmFtZTogcHJvdmlkZXJBY2NvdW50Lm5hbWUsXG4gICAgcmVnaW9uOiByZWdpb24sXG4gICAgZXhpc3RpbmdBY2NvdW50czogZXhpc3RpbmdBY2NvdW50c1xuICB9O1xufVxuZXhwb3J0IGRlZmF1bHQgZ2V0Q29uZmlnO1xuIl19
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const fs = require("fs");
4
4
  class UsersConfig {
5
5
  constructor() {
6
- this.configFile = ".fjall/.users-config.json";
6
+ this.configFile = "fjall/users-config.json";
7
7
  if (!fs.existsSync(this.configFile)) {
8
8
  throw new Error(`Config file ${this.configFile} does not exist`);
9
9
  }
@@ -15,4 +15,4 @@ class UsersConfig {
15
15
  }
16
16
  }
17
17
  exports.default = UsersConfig;
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnNDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvdXRpbHMvdXNlcnNDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx5QkFBeUI7QUFHekIsTUFBcUIsV0FBVztJQUk5QjtRQUhRLGVBQVUsR0FBRywyQkFBMkIsQ0FBQztRQUkvQyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLElBQUksQ0FBQyxVQUFVLGlCQUFpQixDQUFDLENBQUM7U0FDbEU7UUFFRCxNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7Q0FDRjtBQWhCRCw4QkFnQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCB7IFVzZXIgfSBmcm9tIFwiLi4vY29uZmlnL2F3cy9pZGVudGl0eUNlbnRlclVzZXJcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVXNlcnNDb25maWcge1xuICBwcml2YXRlIGNvbmZpZ0ZpbGUgPSBcIi5mamFsbC8udXNlcnMtY29uZmlnLmpzb25cIjtcbiAgcHVibGljIHVzZXJzOiBVc2VyW107XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKCFmcy5leGlzdHNTeW5jKHRoaXMuY29uZmlnRmlsZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ29uZmlnIGZpbGUgJHt0aGlzLmNvbmZpZ0ZpbGV9IGRvZXMgbm90IGV4aXN0YCk7XG4gICAgfVxuXG4gICAgY29uc3QgZmlsZUNvbnRlbnQgPSBmcy5yZWFkRmlsZVN5bmModGhpcy5jb25maWdGaWxlLCBcInV0Zi04XCIpO1xuICAgIHRoaXMudXNlcnMgPSBKU09OLnBhcnNlKGZpbGVDb250ZW50KTtcbiAgfVxuXG4gIGdldFVzZXJzKCkge1xuICAgIHJldHVybiB0aGlzLnVzZXJzO1xuICB9XG59XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnNDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvdXRpbHMvdXNlcnNDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx5QkFBeUI7QUFHekIsTUFBcUIsV0FBVztJQUk5QjtRQUhRLGVBQVUsR0FBRyx5QkFBeUIsQ0FBQztRQUk3QyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLElBQUksQ0FBQyxVQUFVLGlCQUFpQixDQUFDLENBQUM7U0FDbEU7UUFFRCxNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7Q0FDRjtBQWhCRCw4QkFnQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCB7IFVzZXIgfSBmcm9tIFwiLi4vY29uZmlnL2F3cy9pZGVudGl0eUNlbnRlclVzZXJcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVXNlcnNDb25maWcge1xuICBwcml2YXRlIGNvbmZpZ0ZpbGUgPSBcImZqYWxsL3VzZXJzLWNvbmZpZy5qc29uXCI7XG4gIHB1YmxpYyB1c2VyczogVXNlcltdO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGlmICghZnMuZXhpc3RzU3luYyh0aGlzLmNvbmZpZ0ZpbGUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENvbmZpZyBmaWxlICR7dGhpcy5jb25maWdGaWxlfSBkb2VzIG5vdCBleGlzdGApO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbGVDb250ZW50ID0gZnMucmVhZEZpbGVTeW5jKHRoaXMuY29uZmlnRmlsZSwgXCJ1dGYtOFwiKTtcbiAgICB0aGlzLnVzZXJzID0gSlNPTi5wYXJzZShmaWxlQ29udGVudCk7XG4gIH1cblxuICBnZXRVc2VycygpIHtcbiAgICByZXR1cm4gdGhpcy51c2VycztcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fjall/components-infrastructure",
3
- "version": "0.1.11",
3
+ "version": "0.1.17",
4
4
  "bin": {
5
5
  "infrastructure": "bin/infrastructure.js"
6
6
  },
@@ -12,27 +12,27 @@
12
12
  "dist/lib"
13
13
  ],
14
14
  "scripts": {
15
- "deploy:management": "npx cdk deploy -c environment=management",
16
- "list:management": "npx cdk list -c environment=management",
17
- "destroy:management": "npx cdk destroy -c environment=management",
18
- "synth:management": "npx cdk synthesize -c environment=management",
19
- "diff:management": "npx cdk diff -c environment=management",
20
- "deploy:dev": "npx cdk deploy -c environment=development",
21
- "list:dev": "npx cdk list -c environment=development",
22
- "destroy:dev": "npx cdk destroy -c environment=development",
23
- "synth:dev": "npx cdk synthesize -c environment=development",
24
- "deploy:stag": "npx cdk deploy -c environment=staging",
25
- "list:stag": "npx cdk list -c environment=staging",
26
- "destroy:stag": "npx cdk destroy -c environment=staging",
27
- "synth:stag": "npx cdk synthesize -c environment=staging",
28
- "deploy:prod": "npx cdk deploy -c environment=production",
29
- "list:prod": "npx cdk list -c environment=production",
30
- "destroy:prod": "npx cdk destroy -c environment=production",
31
- "synth:prod": "npx cdk synthesize -c environment=production",
32
- "deploy:plat": "npx cdk deploy -c environment=platform",
33
- "list:plat": "npx cdk list -c environment=platform",
34
- "destroy:plat": "npx cdk destroy -c environment=platform",
35
- "synth:plat": "npx cdk synthesize -c environment=platform",
15
+ "deploy:fjall": "npx cdk deploy -c accountName=fjall",
16
+ "list:fjall": "npx cdk list -c accountName=fjall",
17
+ "destroy:fjall": "npx cdk destroy -c accountName=fjall",
18
+ "synth:fjall": "npx cdk synthesize -c accountName=fjall",
19
+ "diff:fjall": "npx cdk diff -c accountName=fjall",
20
+ "deploy:dev": "npx cdk deploy -c accountName=development",
21
+ "list:dev": "npx cdk list -c accountName=development",
22
+ "destroy:dev": "npx cdk destroy -c accountName=development",
23
+ "synth:dev": "npx cdk synthesize -c accountName=development",
24
+ "deploy:stag": "npx cdk deploy -c accountName=staging",
25
+ "list:stag": "npx cdk list -c accountName=staging",
26
+ "destroy:stag": "npx cdk destroy -c accountName=staging",
27
+ "synth:stag": "npx cdk synthesize -c accountName=staging",
28
+ "deploy:prod": "npx cdk deploy -c accountName=production",
29
+ "list:prod": "npx cdk list -c accountName=production",
30
+ "destroy:prod": "npx cdk destroy -c accountName=production",
31
+ "synth:prod": "npx cdk synthesize -c accountName=production",
32
+ "deploy:plat": "npx cdk deploy -c accountName=platform",
33
+ "list:plat": "npx cdk list -c accountName=platform",
34
+ "destroy:plat": "npx cdk destroy -c accountName=platform",
35
+ "synth:plat": "npx cdk synthesize -c accountName=platform",
36
36
  "publish": "npm run build && npm publish --access restricted",
37
37
  "build": "tsc",
38
38
  "watch": "tsc -w",
@@ -53,8 +53,9 @@
53
53
  "typescript": "~4.9.4"
54
54
  },
55
55
  "dependencies": {
56
- "@aws-sdk/client-cost-explorer": "^3.245.0",
57
- "@fjall/util": "file:../../util",
56
+ "@aws-sdk/client-cost-explorer": "^3.717.0",
57
+ "@aws-sdk/client-organizations": "^3.716.0",
58
+ "@fjall/util": "^0.1.16",
58
59
  "@pepperize/cdk-organizations": "^0.7.135",
59
60
  "aws-cdk": "^2.146.0",
60
61
  "aws-cdk-lib": "^2.146.0",
@@ -62,5 +63,8 @@
62
63
  "constructs": "^10.0.0",
63
64
  "source-map-support": "^0.5.21",
64
65
  "uuid": "^9.0.0"
66
+ },
67
+ "overrides": {
68
+ "@smithy/core": "2.5.5"
65
69
  }
66
70
  }
@@ -1,5 +0,0 @@
1
- import { Stack } from "aws-cdk-lib";
2
- import { Construct } from "constructs";
3
- export declare class DelegateHostedZoneRole extends Stack {
4
- constructor(scope: Construct, id: string);
5
- }
@@ -1,77 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DelegateHostedZoneRole = void 0;
4
- const aws_cdk_lib_1 = require("aws-cdk-lib");
5
- const iam_1 = require("../../resources/aws/iam");
6
- const aws_iam_1 = require("aws-cdk-lib/aws-iam");
7
- const customResources = require("aws-cdk-lib/custom-resources");
8
- const awsCustomResource_1 = require("../../resources/aws/utilities/awsCustomResource");
9
- // TODO: Automatically import when a domain is imported, updated or created
10
- const domains = ["Z08225072O6SFKZASVL1U"];
11
- class DelegateHostedZoneRole extends aws_cdk_lib_1.Stack {
12
- constructor(scope, id) {
13
- super(scope, id);
14
- const getHostedZoneArn = (domains) => {
15
- const hostedZoneArn = [];
16
- for (const domain of domains) {
17
- hostedZoneArn.push(`arn:aws:route53:::hostedzone/${domain}`);
18
- }
19
- return hostedZoneArn;
20
- };
21
- const listHostedZones = new awsCustomResource_1.AwsCustomResource(this, "listHostedZones", {
22
- functionName: "listHostedZones",
23
- onCreate: {
24
- service: "route-53",
25
- action: "ListHostedZonesByNameCommand",
26
- physicalResourceId: customResources.PhysicalResourceId.of("listHostedZones")
27
- },
28
- onUpdate: {
29
- service: "route-53",
30
- action: "ListHostedZonesByNameCommand",
31
- physicalResourceId: customResources.PhysicalResourceId.of("HostedZoneId")
32
- },
33
- resourceType: "Custom::ListHostedZones",
34
- policy: customResources.AwsCustomResourcePolicy.fromStatements([
35
- new aws_iam_1.PolicyStatement({
36
- actions: ["route53:ListHostedZonesByName"],
37
- resources: ["*"],
38
- effect: aws_iam_1.Effect.ALLOW
39
- })
40
- ])
41
- });
42
- new aws_cdk_lib_1.CfnOutput(this, "HostedZoneIds", {
43
- key: "HostedZoneIds",
44
- value: listHostedZones.getResponseField("HostedZoneId"),
45
- exportName: "HostedZoneIds"
46
- });
47
- const role = new iam_1.Role(this, "DelegateHostedZoneRole", {
48
- assumedBy: new aws_iam_1.OrganizationPrincipal(aws_cdk_lib_1.Fn.importValue("OrganisationId")),
49
- roleName: "DelegateHostedZoneRole",
50
- inlinePolicies: {
51
- ["listHostedZones"]: new aws_iam_1.PolicyDocument({
52
- statements: [
53
- new aws_iam_1.PolicyStatement({
54
- actions: ["route53:ListHostedZonesByName"],
55
- resources: ["*"]
56
- })
57
- ]
58
- }),
59
- ["changeResourceRecordSets"]: new aws_iam_1.PolicyDocument({
60
- statements: [
61
- new aws_iam_1.PolicyStatement({
62
- actions: ["route53:ChangeResourceRecordSets"],
63
- resources: getHostedZoneArn(domains)
64
- })
65
- ]
66
- })
67
- }
68
- });
69
- new aws_cdk_lib_1.CfnOutput(this, "DelegateHostedZoneRoleArn", {
70
- key: "DelegateHostedZoneRoleArn",
71
- value: role.roleArn,
72
- exportName: "DelegateHostedZoneRoleArn"
73
- });
74
- }
75
- }
76
- exports.DelegateHostedZoneRole = DelegateHostedZoneRole;
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZWdhdGVIb3N0ZWRab25lUm9sZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9jb25maWcvYXdzL2RlbGVnYXRlSG9zdGVkWm9uZVJvbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQW1EO0FBRW5ELGlEQUErQztBQUMvQyxpREFLNkI7QUFDN0IsZ0VBQWdFO0FBQ2hFLHVGQUFvRjtBQUVwRiwyRUFBMkU7QUFDM0UsTUFBTSxPQUFPLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0FBRTFDLE1BQWEsc0JBQXVCLFNBQVEsbUJBQUs7SUFDL0MsWUFBWSxLQUFnQixFQUFFLEVBQVU7UUFDdEMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLGdCQUFnQixHQUFHLENBQUMsT0FBaUIsRUFBRSxFQUFFO1lBQzdDLE1BQU0sYUFBYSxHQUFhLEVBQUUsQ0FBQztZQUVuQyxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtnQkFDNUIsYUFBYSxDQUFDLElBQUksQ0FBQyxnQ0FBZ0MsTUFBTSxFQUFFLENBQUMsQ0FBQzthQUM5RDtZQUNELE9BQU8sYUFBYSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQztRQUVGLE1BQU0sZUFBZSxHQUFHLElBQUkscUNBQWlCLENBQUMsSUFBSSxFQUFFLGlCQUFpQixFQUFFO1lBQ3JFLFlBQVksRUFBRSxpQkFBaUI7WUFDL0IsUUFBUSxFQUFFO2dCQUNSLE9BQU8sRUFBRSxVQUFVO2dCQUNuQixNQUFNLEVBQUUsOEJBQThCO2dCQUN0QyxrQkFBa0IsRUFDaEIsZUFBZSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQzthQUMzRDtZQUNELFFBQVEsRUFBRTtnQkFDUixPQUFPLEVBQUUsVUFBVTtnQkFDbkIsTUFBTSxFQUFFLDhCQUE4QjtnQkFDdEMsa0JBQWtCLEVBQ2hCLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDO2FBQ3hEO1lBQ0QsWUFBWSxFQUFFLHlCQUF5QjtZQUN2QyxNQUFNLEVBQUUsZUFBZSxDQUFDLHVCQUF1QixDQUFDLGNBQWMsQ0FBQztnQkFDN0QsSUFBSSx5QkFBZSxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztvQkFDMUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDO29CQUNoQixNQUFNLEVBQUUsZ0JBQU0sQ0FBQyxLQUFLO2lCQUNyQixDQUFDO2FBQ0gsQ0FBQztTQUNILENBQUMsQ0FBQztRQUVILElBQUksdUJBQVMsQ0FBQyxJQUFJLEVBQUUsZUFBZSxFQUFFO1lBQ25DLEdBQUcsRUFBRSxlQUFlO1lBQ3BCLEtBQUssRUFBRSxlQUFlLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDO1lBQ3ZELFVBQVUsRUFBRSxlQUFlO1NBQzVCLENBQUMsQ0FBQztRQUVILE1BQU0sSUFBSSxHQUFHLElBQUksVUFBSSxDQUFDLElBQUksRUFBRSx3QkFBd0IsRUFBRTtZQUNwRCxTQUFTLEVBQUUsSUFBSSwrQkFBcUIsQ0FBQyxnQkFBRSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3RFLFFBQVEsRUFBRSx3QkFBd0I7WUFDbEMsY0FBYyxFQUFFO2dCQUNkLENBQUMsaUJBQWlCLENBQUMsRUFBRSxJQUFJLHdCQUFjLENBQUM7b0JBQ3RDLFVBQVUsRUFBRTt3QkFDVixJQUFJLHlCQUFlLENBQUM7NEJBQ2xCLE9BQU8sRUFBRSxDQUFDLCtCQUErQixDQUFDOzRCQUMxQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUM7eUJBQ2pCLENBQUM7cUJBQ0g7aUJBQ0YsQ0FBQztnQkFDRixDQUFDLDBCQUEwQixDQUFDLEVBQUUsSUFBSSx3QkFBYyxDQUFDO29CQUMvQyxVQUFVLEVBQUU7d0JBQ1YsSUFBSSx5QkFBZSxDQUFDOzRCQUNsQixPQUFPLEVBQUUsQ0FBQyxrQ0FBa0MsQ0FBQzs0QkFDN0MsU0FBUyxFQUFFLGdCQUFnQixDQUFDLE9BQU8sQ0FBQzt5QkFDckMsQ0FBQztxQkFDSDtpQkFDRixDQUFDO2FBQ0g7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLHVCQUFTLENBQUMsSUFBSSxFQUFFLDJCQUEyQixFQUFFO1lBQy9DLEdBQUcsRUFBRSwyQkFBMkI7WUFDaEMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ25CLFVBQVUsRUFBRSwyQkFBMkI7U0FDeEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBeEVELHdEQXdFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENmbk91dHB1dCwgRm4sIFN0YWNrIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgUm9sZSB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL2lhbVwiO1xuaW1wb3J0IHtcbiAgRWZmZWN0LFxuICBPcmdhbml6YXRpb25QcmluY2lwYWwsXG4gIFBvbGljeURvY3VtZW50LFxuICBQb2xpY3lTdGF0ZW1lbnRcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIjtcbmltcG9ydCAqIGFzIGN1c3RvbVJlc291cmNlcyBmcm9tIFwiYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlc1wiO1xuaW1wb3J0IHsgQXdzQ3VzdG9tUmVzb3VyY2UgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy91dGlsaXRpZXMvYXdzQ3VzdG9tUmVzb3VyY2VcIjtcblxuLy8gVE9ETzogQXV0b21hdGljYWxseSBpbXBvcnQgd2hlbiBhIGRvbWFpbiBpcyBpbXBvcnRlZCwgdXBkYXRlZCBvciBjcmVhdGVkXG5jb25zdCBkb21haW5zID0gW1wiWjA4MjI1MDcyTzZTRktaQVNWTDFVXCJdO1xuXG5leHBvcnQgY2xhc3MgRGVsZWdhdGVIb3N0ZWRab25lUm9sZSBleHRlbmRzIFN0YWNrIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBnZXRIb3N0ZWRab25lQXJuID0gKGRvbWFpbnM6IHN0cmluZ1tdKSA9PiB7XG4gICAgICBjb25zdCBob3N0ZWRab25lQXJuOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICBmb3IgKGNvbnN0IGRvbWFpbiBvZiBkb21haW5zKSB7XG4gICAgICAgIGhvc3RlZFpvbmVBcm4ucHVzaChgYXJuOmF3czpyb3V0ZTUzOjo6aG9zdGVkem9uZS8ke2RvbWFpbn1gKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBob3N0ZWRab25lQXJuO1xuICAgIH07XG5cbiAgICBjb25zdCBsaXN0SG9zdGVkWm9uZXMgPSBuZXcgQXdzQ3VzdG9tUmVzb3VyY2UodGhpcywgXCJsaXN0SG9zdGVkWm9uZXNcIiwge1xuICAgICAgZnVuY3Rpb25OYW1lOiBcImxpc3RIb3N0ZWRab25lc1wiLFxuICAgICAgb25DcmVhdGU6IHtcbiAgICAgICAgc2VydmljZTogXCJyb3V0ZS01M1wiLFxuICAgICAgICBhY3Rpb246IFwiTGlzdEhvc3RlZFpvbmVzQnlOYW1lQ29tbWFuZFwiLCAvLyBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQVdTSmF2YVNjcmlwdFNESy9sYXRlc3QvQVdTL1JvdXRlNTMuaHRtbCNsaXN0SG9zdGVkWm9uZXMtcHJvcGVydHlcbiAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOlxuICAgICAgICAgIGN1c3RvbVJlc291cmNlcy5QaHlzaWNhbFJlc291cmNlSWQub2YoXCJsaXN0SG9zdGVkWm9uZXNcIilcbiAgICAgIH0sXG4gICAgICBvblVwZGF0ZToge1xuICAgICAgICBzZXJ2aWNlOiBcInJvdXRlLTUzXCIsXG4gICAgICAgIGFjdGlvbjogXCJMaXN0SG9zdGVkWm9uZXNCeU5hbWVDb21tYW5kXCIsIC8vIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NKYXZhU2NyaXB0U0RLL2xhdGVzdC9BV1MvUm91dGU1My5odG1sI2xpc3RIb3N0ZWRab25lcy1wcm9wZXJ0eVxuICAgICAgICBwaHlzaWNhbFJlc291cmNlSWQ6XG4gICAgICAgICAgY3VzdG9tUmVzb3VyY2VzLlBoeXNpY2FsUmVzb3VyY2VJZC5vZihcIkhvc3RlZFpvbmVJZFwiKVxuICAgICAgfSxcbiAgICAgIHJlc291cmNlVHlwZTogXCJDdXN0b206Okxpc3RIb3N0ZWRab25lc1wiLFxuICAgICAgcG9saWN5OiBjdXN0b21SZXNvdXJjZXMuQXdzQ3VzdG9tUmVzb3VyY2VQb2xpY3kuZnJvbVN0YXRlbWVudHMoW1xuICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICBhY3Rpb25zOiBbXCJyb3V0ZTUzOkxpc3RIb3N0ZWRab25lc0J5TmFtZVwiXSxcbiAgICAgICAgICByZXNvdXJjZXM6IFtcIipcIl0sXG4gICAgICAgICAgZWZmZWN0OiBFZmZlY3QuQUxMT1dcbiAgICAgICAgfSlcbiAgICAgIF0pXG4gICAgfSk7XG5cbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIFwiSG9zdGVkWm9uZUlkc1wiLCB7XG4gICAgICBrZXk6IFwiSG9zdGVkWm9uZUlkc1wiLFxuICAgICAgdmFsdWU6IGxpc3RIb3N0ZWRab25lcy5nZXRSZXNwb25zZUZpZWxkKFwiSG9zdGVkWm9uZUlkXCIpLFxuICAgICAgZXhwb3J0TmFtZTogXCJIb3N0ZWRab25lSWRzXCJcbiAgICB9KTtcblxuICAgIGNvbnN0IHJvbGUgPSBuZXcgUm9sZSh0aGlzLCBcIkRlbGVnYXRlSG9zdGVkWm9uZVJvbGVcIiwge1xuICAgICAgYXNzdW1lZEJ5OiBuZXcgT3JnYW5pemF0aW9uUHJpbmNpcGFsKEZuLmltcG9ydFZhbHVlKFwiT3JnYW5pc2F0aW9uSWRcIikpLCAvLyBUT0RPOiBTb3VyY2UgZnJvbSBsb2NhbCBjb25maWcsIHJhdGhlciB0aGFuIGRlcGxveWluZyBpbiBlYWNoIHJlZ2lvblxuICAgICAgcm9sZU5hbWU6IFwiRGVsZWdhdGVIb3N0ZWRab25lUm9sZVwiLFxuICAgICAgaW5saW5lUG9saWNpZXM6IHtcbiAgICAgICAgW1wibGlzdEhvc3RlZFpvbmVzXCJdOiBuZXcgUG9saWN5RG9jdW1lbnQoe1xuICAgICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgICBhY3Rpb25zOiBbXCJyb3V0ZTUzOkxpc3RIb3N0ZWRab25lc0J5TmFtZVwiXSxcbiAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbXCIqXCJdXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF1cbiAgICAgICAgfSksXG4gICAgICAgIFtcImNoYW5nZVJlc291cmNlUmVjb3JkU2V0c1wiXTogbmV3IFBvbGljeURvY3VtZW50KHtcbiAgICAgICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgICAgYWN0aW9uczogW1wicm91dGU1MzpDaGFuZ2VSZXNvdXJjZVJlY29yZFNldHNcIl0sXG4gICAgICAgICAgICAgIHJlc291cmNlczogZ2V0SG9zdGVkWm9uZUFybihkb21haW5zKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIFwiRGVsZWdhdGVIb3N0ZWRab25lUm9sZUFyblwiLCB7XG4gICAgICBrZXk6IFwiRGVsZWdhdGVIb3N0ZWRab25lUm9sZUFyblwiLFxuICAgICAgdmFsdWU6IHJvbGUucm9sZUFybixcbiAgICAgIGV4cG9ydE5hbWU6IFwiRGVsZWdhdGVIb3N0ZWRab25lUm9sZUFyblwiXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +0,0 @@
1
- import { Stack } from "aws-cdk-lib";
2
- import { Construct } from "constructs";
3
- export declare class IpamPool extends Stack {
4
- constructor(scope: Construct, id: string);
5
- }
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IpamPool = void 0;
4
- const aws_cdk_lib_1 = require("aws-cdk-lib");
5
- const ipamPool_1 = require("../../resources/aws/networking/ipamPool");
6
- const CidrAllocation = {
7
- production: "10.0.0.0/8",
8
- staging: "80.0.0.0/8",
9
- development: "150.0.0.0/8",
10
- platform: "200.0.0.0/8",
11
- businessContinuity: "210.0.0.0/8"
12
- };
13
- const IpamPrivateDefaultScopeId = aws_cdk_lib_1.Fn.importValue("IpamPrivateDefaultScopeId");
14
- class IpamPool extends aws_cdk_lib_1.Stack {
15
- constructor(scope, id) {
16
- super(scope, id);
17
- for (const [environment, cidrBlock] of Object.entries(CidrAllocation)) {
18
- const ipamPool = new ipamPool_1.IpamPool(this, `${environment}IpamPool`, {
19
- description: `${environment} IPAM pool - ${cidrBlock}`,
20
- addressFamily: "ipv4",
21
- ipamScopeId: IpamPrivateDefaultScopeId,
22
- locale: environment == "businessContinuity" ? "eu-west-1" : "us-east-1",
23
- allocationResourceTags: [
24
- {
25
- key: "fjall:operations:pool",
26
- value: `${environment}`
27
- }
28
- ],
29
- autoImport: false,
30
- provisionedCidrs: [{ cidr: cidrBlock }],
31
- tags: [
32
- {
33
- key: "fjall:operations:pool",
34
- value: "top-level"
35
- },
36
- {
37
- key: "fjall:costAllocation:environment",
38
- value: `${environment}`
39
- }
40
- ]
41
- });
42
- new aws_cdk_lib_1.CfnOutput(this, `${environment}IpamPoolId`, {
43
- key: `${environment}IpamPoolId`,
44
- value: ipamPool.attrIpamPoolId,
45
- exportName: `${environment}IpamPoolId`
46
- });
47
- new aws_cdk_lib_1.CfnOutput(this, `${environment}IpamPoolArn`, {
48
- key: `${environment}IpamPoolArn`,
49
- value: ipamPool.attrArn,
50
- exportName: `${environment}IpamPoolArn`
51
- });
52
- }
53
- }
54
- }
55
- exports.IpamPool = IpamPool;
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXBhbVBvb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvY29uZmlnL2F3cy9pcGFtUG9vbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBbUQ7QUFHbkQsc0VBQW9GO0FBRXBGLE1BQU0sY0FBYyxHQUFHO0lBQ3JCLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFdBQVcsRUFBRSxhQUFhO0lBQzFCLFFBQVEsRUFBRSxhQUFhO0lBQ3ZCLGtCQUFrQixFQUFFLGFBQWE7Q0FDbEMsQ0FBQztBQUVGLE1BQU0seUJBQXlCLEdBQUcsZ0JBQUUsQ0FBQyxXQUFXLENBQUMsMkJBQTJCLENBQUMsQ0FBQztBQUU5RSxNQUFhLFFBQVMsU0FBUSxtQkFBSztJQUNqQyxZQUFZLEtBQWdCLEVBQUUsRUFBVTtRQUN0QyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLEtBQUssTUFBTSxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQ3JFLE1BQU0sUUFBUSxHQUFHLElBQUksbUJBQWEsQ0FBQyxJQUFJLEVBQUUsR0FBRyxXQUFXLFVBQVUsRUFBRTtnQkFDakUsV0FBVyxFQUFFLEdBQUcsV0FBVyxnQkFBZ0IsU0FBUyxFQUFFO2dCQUN0RCxhQUFhLEVBQUUsTUFBTTtnQkFDckIsV0FBVyxFQUFFLHlCQUF5QjtnQkFDdEMsTUFBTSxFQUFFLFdBQVcsSUFBSSxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXO2dCQUN2RSxzQkFBc0IsRUFBRTtvQkFDdEI7d0JBQ0UsR0FBRyxFQUFFLHVCQUF1Qjt3QkFDNUIsS0FBSyxFQUFFLEdBQUcsV0FBVyxFQUFFO3FCQUN4QjtpQkFDRjtnQkFDRCxVQUFVLEVBQUUsS0FBSztnQkFDakIsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQztnQkFDdkMsSUFBSSxFQUFFO29CQUNKO3dCQUNFLEdBQUcsRUFBRSx1QkFBdUI7d0JBQzVCLEtBQUssRUFBRSxXQUFXO3FCQUNuQjtvQkFDRDt3QkFDRSxHQUFHLEVBQUUsa0NBQWtDO3dCQUN2QyxLQUFLLEVBQUUsR0FBRyxXQUFXLEVBQUU7cUJBQ3hCO2lCQUNGO2FBQ0YsQ0FBQyxDQUFDO1lBRUgsSUFBSSx1QkFBUyxDQUFDLElBQUksRUFBRSxHQUFHLFdBQVcsWUFBWSxFQUFFO2dCQUM5QyxHQUFHLEVBQUUsR0FBRyxXQUFXLFlBQVk7Z0JBQy9CLEtBQUssRUFBRSxRQUFRLENBQUMsY0FBYztnQkFDOUIsVUFBVSxFQUFFLEdBQUcsV0FBVyxZQUFZO2FBQ3ZDLENBQUMsQ0FBQztZQUVILElBQUksdUJBQVMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxXQUFXLGFBQWEsRUFBRTtnQkFDL0MsR0FBRyxFQUFFLEdBQUcsV0FBVyxhQUFhO2dCQUNoQyxLQUFLLEVBQUUsUUFBUSxDQUFDLE9BQU87Z0JBQ3ZCLFVBQVUsRUFBRSxHQUFHLFdBQVcsYUFBYTthQUN4QyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7Q0FDRjtBQTNDRCw0QkEyQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGbiwgU3RhY2ssIENmbk91dHB1dCB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuaW1wb3J0IHsgSXBhbVBvb2wgYXMgaXBhbVBvb2xDbGFzcyB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL25ldHdvcmtpbmcvaXBhbVBvb2xcIjtcblxuY29uc3QgQ2lkckFsbG9jYXRpb24gPSB7XG4gIHByb2R1Y3Rpb246IFwiMTAuMC4wLjAvOFwiLFxuICBzdGFnaW5nOiBcIjgwLjAuMC4wLzhcIixcbiAgZGV2ZWxvcG1lbnQ6IFwiMTUwLjAuMC4wLzhcIixcbiAgcGxhdGZvcm06IFwiMjAwLjAuMC4wLzhcIixcbiAgYnVzaW5lc3NDb250aW51aXR5OiBcIjIxMC4wLjAuMC84XCJcbn07XG5cbmNvbnN0IElwYW1Qcml2YXRlRGVmYXVsdFNjb3BlSWQgPSBGbi5pbXBvcnRWYWx1ZShcIklwYW1Qcml2YXRlRGVmYXVsdFNjb3BlSWRcIik7XG5cbmV4cG9ydCBjbGFzcyBJcGFtUG9vbCBleHRlbmRzIFN0YWNrIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBmb3IgKGNvbnN0IFtlbnZpcm9ubWVudCwgY2lkckJsb2NrXSBvZiBPYmplY3QuZW50cmllcyhDaWRyQWxsb2NhdGlvbikpIHtcbiAgICAgIGNvbnN0IGlwYW1Qb29sID0gbmV3IGlwYW1Qb29sQ2xhc3ModGhpcywgYCR7ZW52aXJvbm1lbnR9SXBhbVBvb2xgLCB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiBgJHtlbnZpcm9ubWVudH0gSVBBTSBwb29sIC0gJHtjaWRyQmxvY2t9YCxcbiAgICAgICAgYWRkcmVzc0ZhbWlseTogXCJpcHY0XCIsXG4gICAgICAgIGlwYW1TY29wZUlkOiBJcGFtUHJpdmF0ZURlZmF1bHRTY29wZUlkLFxuICAgICAgICBsb2NhbGU6IGVudmlyb25tZW50ID09IFwiYnVzaW5lc3NDb250aW51aXR5XCIgPyBcImV1LXdlc3QtMVwiIDogXCJ1cy1lYXN0LTFcIixcbiAgICAgICAgYWxsb2NhdGlvblJlc291cmNlVGFnczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGtleTogXCJmamFsbDpvcGVyYXRpb25zOnBvb2xcIixcbiAgICAgICAgICAgIHZhbHVlOiBgJHtlbnZpcm9ubWVudH1gXG4gICAgICAgICAgfVxuICAgICAgICBdLFxuICAgICAgICBhdXRvSW1wb3J0OiBmYWxzZSxcbiAgICAgICAgcHJvdmlzaW9uZWRDaWRyczogW3sgY2lkcjogY2lkckJsb2NrIH1dLFxuICAgICAgICB0YWdzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAga2V5OiBcImZqYWxsOm9wZXJhdGlvbnM6cG9vbFwiLFxuICAgICAgICAgICAgdmFsdWU6IFwidG9wLWxldmVsXCJcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGtleTogXCJmamFsbDpjb3N0QWxsb2NhdGlvbjplbnZpcm9ubWVudFwiLFxuICAgICAgICAgICAgdmFsdWU6IGAke2Vudmlyb25tZW50fWBcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH0pO1xuXG4gICAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIGAke2Vudmlyb25tZW50fUlwYW1Qb29sSWRgLCB7XG4gICAgICAgIGtleTogYCR7ZW52aXJvbm1lbnR9SXBhbVBvb2xJZGAsXG4gICAgICAgIHZhbHVlOiBpcGFtUG9vbC5hdHRySXBhbVBvb2xJZCxcbiAgICAgICAgZXhwb3J0TmFtZTogYCR7ZW52aXJvbm1lbnR9SXBhbVBvb2xJZGBcbiAgICAgIH0pO1xuXG4gICAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIGAke2Vudmlyb25tZW50fUlwYW1Qb29sQXJuYCwge1xuICAgICAgICBrZXk6IGAke2Vudmlyb25tZW50fUlwYW1Qb29sQXJuYCxcbiAgICAgICAgdmFsdWU6IGlwYW1Qb29sLmF0dHJBcm4sXG4gICAgICAgIGV4cG9ydE5hbWU6IGAke2Vudmlyb25tZW50fUlwYW1Qb29sQXJuYFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,5 +0,0 @@
1
- import { StackProps, Stack } from "aws-cdk-lib";
2
- import { Construct } from "constructs";
3
- export declare class IpamPoolResourceShare extends Stack {
4
- constructor(scope: Construct, id: string, props?: StackProps);
5
- }