@mavogel/awscdk-rootmail 0.0.16 → 0.0.18

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 (221) hide show
  1. package/.jsii +56 -22
  2. package/API.md +95 -2
  3. package/README.md +69 -2
  4. package/docs/img/cloudformation-tpl-min.png +0 -0
  5. package/integ-tests/functions/custom-ses-receive-function.ts +92 -0
  6. package/integ-tests/integ.rootmail-custom-santa.ts +143 -0
  7. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/RootmailIntegTestStack.assets.json +162 -0
  8. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/RootmailIntegTestStack.template.json +4541 -0
  9. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.assets.json +32 -0
  10. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.template.json +249 -0
  11. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.0649b5bfaa322d6bd173d2daef3177389cf0778b556b300ac6bf451704cc3a49/index.js +37981 -0
  12. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.157ba1713f7224463b621261792d18081588ff306a9bc3f75e6c468fabbe1a60/index.js +106 -0
  13. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.4c079063901e6478dbb5ace19e3123641ebf0da2ab648ecf52079c5bec154196/index.js +215 -0
  14. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.53e8368959effe94a6e51bef9c7c5bf0eaf5c4d64eece81632ca62aa34517978.bundle/index.js +31981 -0
  15. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e/index.d.ts +14 -0
  16. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e/index.js +1 -0
  17. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.78b64aaf9aebb4eacbdd42197be10e9d5894360a642f7dcf79aeb84bb3552377/index.js +61 -0
  18. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.7e8a681794eff5fda1841caa360113df5488ecf944055a69b8f1e5a687e269f5/index.js +83 -0
  19. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.9572b451243318765beb576ae7528096b3879783dbaab795c02c01d7f4e83438/index.js +47 -0
  20. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.b8448324ef2c7d5bfa362722df2d397079d5aabaae2749f09180ac5bedfa5c89/index.js +105 -0
  21. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.d2b520d86fd9d964c83dc0d5ce2e4456dbde5fa7ae0c791a71865cbdfe2fb855/index.js +85 -0
  22. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/cfn-response.js +1 -0
  23. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/consts.js +1 -0
  24. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/framework.js +3 -0
  25. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/outbound.js +1 -0
  26. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/util.js +1 -0
  27. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.f9b17c134d24cf60e1d26c033b5f4f247b759149619ac0aac341b950a10ccf14/index.js +72 -0
  28. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/integ.json +27 -0
  29. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/manifest.json +742 -0
  30. package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/tree.json +5893 -0
  31. package/integ-tests/integ.rootmail.ts.snapshot/SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.assets.json +2 -2
  32. package/integ-tests/integ.rootmail.ts.snapshot/SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.template.json +3 -3
  33. package/integ-tests/integ.rootmail.ts.snapshot/manifest.json +1 -1
  34. package/lib/index.js +2 -1
  35. package/lib/rootmail.d.ts +5 -1
  36. package/lib/rootmail.js +3 -2
  37. package/lib/ses-receive.d.ts +5 -1
  38. package/lib/ses-receive.js +36 -14
  39. package/node_modules/@aws-sdk/client-cloudwatch-logs/package.json +14 -14
  40. package/node_modules/@aws-sdk/client-route-53/package.json +13 -13
  41. package/node_modules/@aws-sdk/client-s3/package.json +21 -21
  42. package/node_modules/@aws-sdk/client-ses/package.json +12 -12
  43. package/node_modules/@aws-sdk/client-ssm/package.json +14 -14
  44. package/node_modules/@aws-sdk/client-sso/package.json +10 -10
  45. package/node_modules/@aws-sdk/client-sso-oidc/package.json +12 -12
  46. package/node_modules/@aws-sdk/client-sts/dist-cjs/index.js +31 -33
  47. package/node_modules/@aws-sdk/client-sts/dist-es/defaultStsRoleAssumers.js +8 -15
  48. package/node_modules/@aws-sdk/client-sts/package.json +11 -11
  49. package/node_modules/@aws-sdk/credential-provider-env/package.json +2 -2
  50. package/node_modules/@aws-sdk/credential-provider-http/package.json +2 -2
  51. package/node_modules/@aws-sdk/credential-provider-ini/package.json +7 -7
  52. package/node_modules/@aws-sdk/credential-provider-node/package.json +8 -8
  53. package/node_modules/@aws-sdk/credential-provider-process/package.json +2 -2
  54. package/node_modules/@aws-sdk/credential-provider-sso/package.json +4 -4
  55. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +3 -3
  56. package/node_modules/@aws-sdk/middleware-bucket-endpoint/package.json +2 -2
  57. package/node_modules/@aws-sdk/middleware-expect-continue/package.json +2 -2
  58. package/node_modules/@aws-sdk/middleware-flexible-checksums/package.json +2 -2
  59. package/node_modules/@aws-sdk/middleware-host-header/package.json +2 -2
  60. package/node_modules/@aws-sdk/middleware-location-constraint/package.json +2 -2
  61. package/node_modules/@aws-sdk/middleware-logger/package.json +2 -2
  62. package/node_modules/@aws-sdk/middleware-recursion-detection/package.json +2 -2
  63. package/node_modules/@aws-sdk/middleware-sdk-route53/package.json +2 -2
  64. package/node_modules/@aws-sdk/middleware-sdk-s3/package.json +2 -2
  65. package/node_modules/@aws-sdk/middleware-signing/package.json +2 -2
  66. package/node_modules/@aws-sdk/middleware-ssec/package.json +2 -2
  67. package/node_modules/@aws-sdk/middleware-user-agent/package.json +3 -3
  68. package/node_modules/@aws-sdk/region-config-resolver/package.json +2 -2
  69. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +3 -3
  70. package/node_modules/@aws-sdk/token-providers/package.json +3 -3
  71. package/node_modules/@aws-sdk/types/dist-types/credentials.d.ts +1 -0
  72. package/node_modules/@aws-sdk/types/dist-types/ts3.4/credentials.d.ts +1 -0
  73. package/node_modules/@aws-sdk/types/package.json +1 -1
  74. package/node_modules/@aws-sdk/util-endpoints/package.json +2 -2
  75. package/node_modules/@aws-sdk/util-user-agent-browser/package.json +2 -2
  76. package/node_modules/@aws-sdk/util-user-agent-node/package.json +2 -2
  77. package/node_modules/cdk-nag/.jsii +2 -2
  78. package/node_modules/cdk-nag/lib/ignore-suppression-conditions.js +5 -5
  79. package/node_modules/cdk-nag/lib/nag-logger.js +2 -2
  80. package/node_modules/cdk-nag/lib/nag-pack.js +1 -1
  81. package/node_modules/cdk-nag/lib/nag-rules.js +1 -1
  82. package/node_modules/cdk-nag/lib/nag-suppressions.js +1 -1
  83. package/node_modules/cdk-nag/lib/packs/aws-solutions.js +1 -1
  84. package/node_modules/cdk-nag/lib/packs/hipaa-security.js +1 -1
  85. package/node_modules/cdk-nag/lib/packs/nist-800-53-r4.js +1 -1
  86. package/node_modules/cdk-nag/lib/packs/nist-800-53-r5.js +1 -1
  87. package/node_modules/cdk-nag/lib/packs/pci-dss-321.js +1 -1
  88. package/node_modules/cdk-nag/package.json +2 -2
  89. package/package.json +8 -8
  90. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/CHANGELOG.md +0 -229
  91. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/CONTRIBUTING.md +0 -18
  92. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/LICENSE.md +0 -9
  93. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/README.md +0 -505
  94. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/bin/uuid +0 -2
  95. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/index.js +0 -9
  96. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/md5.js +0 -215
  97. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/nil.js +0 -1
  98. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/parse.js +0 -35
  99. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/regex.js +0 -1
  100. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/rng.js +0 -19
  101. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/sha1.js +0 -96
  102. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/stringify.js +0 -30
  103. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/v1.js +0 -95
  104. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/v3.js +0 -4
  105. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/v35.js +0 -64
  106. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/v4.js +0 -24
  107. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/v5.js +0 -4
  108. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/validate.js +0 -7
  109. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-browser/version.js +0 -11
  110. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/index.js +0 -9
  111. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/md5.js +0 -13
  112. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/nil.js +0 -1
  113. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/parse.js +0 -35
  114. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/regex.js +0 -1
  115. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/rng.js +0 -12
  116. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/sha1.js +0 -13
  117. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/stringify.js +0 -29
  118. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/v1.js +0 -95
  119. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/v3.js +0 -4
  120. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/v35.js +0 -64
  121. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/v4.js +0 -24
  122. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/v5.js +0 -4
  123. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/validate.js +0 -7
  124. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/esm-node/version.js +0 -11
  125. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/index.js +0 -79
  126. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/md5-browser.js +0 -223
  127. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/md5.js +0 -23
  128. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/nil.js +0 -8
  129. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/parse.js +0 -45
  130. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/regex.js +0 -8
  131. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/rng-browser.js +0 -26
  132. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/rng.js +0 -24
  133. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/sha1-browser.js +0 -104
  134. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/sha1.js +0 -23
  135. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/stringify.js +0 -39
  136. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/umd/uuid.min.js +0 -1
  137. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/umd/uuidNIL.min.js +0 -1
  138. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/umd/uuidParse.min.js +0 -1
  139. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/umd/uuidStringify.min.js +0 -1
  140. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/umd/uuidValidate.min.js +0 -1
  141. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/umd/uuidVersion.min.js +0 -1
  142. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/umd/uuidv1.min.js +0 -1
  143. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/umd/uuidv3.min.js +0 -1
  144. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/umd/uuidv4.min.js +0 -1
  145. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/umd/uuidv5.min.js +0 -1
  146. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/uuid-bin.js +0 -85
  147. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/v1.js +0 -107
  148. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/v3.js +0 -16
  149. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/v35.js +0 -78
  150. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/v4.js +0 -37
  151. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/v5.js +0 -16
  152. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/validate.js +0 -17
  153. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/dist/version.js +0 -21
  154. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/package.json +0 -135
  155. package/node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid/wrapper.mjs +0 -10
  156. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/CHANGELOG.md +0 -229
  157. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/CONTRIBUTING.md +0 -18
  158. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/LICENSE.md +0 -9
  159. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/README.md +0 -505
  160. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/bin/uuid +0 -2
  161. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/index.js +0 -9
  162. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/md5.js +0 -215
  163. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/nil.js +0 -1
  164. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/parse.js +0 -35
  165. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/regex.js +0 -1
  166. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/rng.js +0 -19
  167. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/sha1.js +0 -96
  168. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/stringify.js +0 -30
  169. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/v1.js +0 -95
  170. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/v3.js +0 -4
  171. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/v35.js +0 -64
  172. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/v4.js +0 -24
  173. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/v5.js +0 -4
  174. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/validate.js +0 -7
  175. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-browser/version.js +0 -11
  176. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/index.js +0 -9
  177. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/md5.js +0 -13
  178. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/nil.js +0 -1
  179. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/parse.js +0 -35
  180. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/regex.js +0 -1
  181. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/rng.js +0 -12
  182. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/sha1.js +0 -13
  183. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/stringify.js +0 -29
  184. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/v1.js +0 -95
  185. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/v3.js +0 -4
  186. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/v35.js +0 -64
  187. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/v4.js +0 -24
  188. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/v5.js +0 -4
  189. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/validate.js +0 -7
  190. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/esm-node/version.js +0 -11
  191. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/index.js +0 -79
  192. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/md5-browser.js +0 -223
  193. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/md5.js +0 -23
  194. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/nil.js +0 -8
  195. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/parse.js +0 -45
  196. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/regex.js +0 -8
  197. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/rng-browser.js +0 -26
  198. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/rng.js +0 -24
  199. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/sha1-browser.js +0 -104
  200. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/sha1.js +0 -23
  201. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/stringify.js +0 -39
  202. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/umd/uuid.min.js +0 -1
  203. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/umd/uuidNIL.min.js +0 -1
  204. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/umd/uuidParse.min.js +0 -1
  205. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/umd/uuidStringify.min.js +0 -1
  206. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/umd/uuidValidate.min.js +0 -1
  207. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/umd/uuidVersion.min.js +0 -1
  208. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/umd/uuidv1.min.js +0 -1
  209. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/umd/uuidv3.min.js +0 -1
  210. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/umd/uuidv4.min.js +0 -1
  211. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/umd/uuidv5.min.js +0 -1
  212. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/uuid-bin.js +0 -85
  213. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/v1.js +0 -107
  214. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/v3.js +0 -16
  215. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/v35.js +0 -78
  216. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/v4.js +0 -37
  217. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/v5.js +0 -16
  218. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/validate.js +0 -17
  219. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/dist/version.js +0 -21
  220. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/package.json +0 -135
  221. package/node_modules/@aws-sdk/client-ssm/node_modules/uuid/wrapper.mjs +0 -10
@@ -0,0 +1,143 @@
1
+ import * as path from 'path';
2
+ // eslint-disable-next-line import/no-extraneous-dependencies
3
+ import { IntegTest, ExpectedResult, LogType, InvocationType } from '@aws-cdk/integ-tests-alpha';
4
+ import {
5
+ App,
6
+ Duration,
7
+ PhysicalName,
8
+ Stack,
9
+ aws_iam as iam,
10
+ aws_lambda as lambda,
11
+ } from 'aws-cdk-lib';
12
+ import { NodejsFunction } from 'aws-cdk-lib/aws-lambda-nodejs';
13
+ import { Rootmail } from '../src/rootmail';
14
+ // CDK App for Integration Tests
15
+ const app = new App();
16
+ // Stack under test
17
+ const stackUnderTestName = 'RootmailIntegTestStack';
18
+ const stackUnderTest = new Stack(app, stackUnderTestName, {
19
+ description: "This stack includes the application's resources for integration testing.",
20
+ });
21
+
22
+ const testDomain = 'rootmail-test.mavogel.xyz';
23
+ const hostedZoneId = 'Z066250529JROZU7IIY3Q';
24
+ const randomTestId = 'c23qgsa2';
25
+ const testSubdomain = `${randomTestId}-${Stack.of(stackUnderTest).region}`;
26
+ const fullDomain = `${testSubdomain}.${testDomain}`;
27
+
28
+ const customSesReceiveFunction = new NodejsFunction(stackUnderTest, 'custom-ses-receive-function', {
29
+ functionName: PhysicalName.GENERATE_IF_NEEDED,
30
+ entry: path.join(__dirname, 'functions', 'custom-ses-receive-function.ts'),
31
+ runtime: lambda.Runtime.NODEJS_18_X,
32
+ logRetention: 1,
33
+ timeout: Duration.seconds(30),
34
+ });
35
+
36
+ customSesReceiveFunction.addToRolePolicy(new iam.PolicyStatement({
37
+ actions: [
38
+ 's3:List*',
39
+ ],
40
+ resources: ['*'],
41
+ }))
42
+
43
+ const rootmail = new Rootmail(stackUnderTest, 'testRootmail', {
44
+ domain: testDomain,
45
+ subdomain: testSubdomain,
46
+ // tests took on average 10-15 minutes , but we leave some buffer
47
+ totalTimeToWireDNS: Duration.minutes(20),
48
+ wireDNSToHostedZoneID: hostedZoneId,
49
+ customSesReceiveFunction: customSesReceiveFunction,
50
+ setDestroyPolicyToAllResources: false,
51
+ });
52
+
53
+
54
+ // Initialize Integ Test construct
55
+ const integStackName = 'SetupTestIntegStack';
56
+ const integ = new IntegTest(app, integStackName, {
57
+ testCases: [stackUnderTest], // Define a list of cases for this test
58
+ cdkCommandOptions: {
59
+ destroy: {
60
+ args: {
61
+ force: true,
62
+ },
63
+ },
64
+ },
65
+ hooks: {
66
+ postDestroy: [
67
+ 'echo "Post hook"',
68
+ // NOTE: as I do not see the hook called, we need to delete manually
69
+ // `echo "Deleting S3 bucket '${rootmail.emailBucket.bucketName}'`,
70
+ // `python3 cleanup/empty-and-delete-s3-bucket.py ${rootmail.emailBucket.bucketName}`,
71
+ ],
72
+ },
73
+ regions: [stackUnderTest.region],
74
+ });
75
+
76
+ const sendEmailHandler = new NodejsFunction(stackUnderTest, 'send-email-handler', {
77
+ functionName: PhysicalName.GENERATE_IF_NEEDED,
78
+ entry: path.join(__dirname, 'functions', 'send-email-handler.ts'),
79
+ runtime: lambda.Runtime.NODEJS_18_X,
80
+ logRetention: 1,
81
+ timeout: Duration.seconds(30),
82
+ initialPolicy: [
83
+ new iam.PolicyStatement({
84
+ actions: [
85
+ 'ses:SendEmail',
86
+ 'ses:DescribeReceiptRule',
87
+ ],
88
+ resources: ['*'],
89
+ }),
90
+ ],
91
+ });
92
+
93
+ /**
94
+ * Assertion:
95
+ * The application should parse a dummy email, store it in S3 and set create an OPS item.
96
+ */
97
+ const id = `test-id-${randomTestId}`;
98
+ const message = 'This is a mail body';
99
+
100
+ const sendTestEmailAssertion = integ.assertions
101
+ .invokeFunction({
102
+ functionName: sendEmailHandler.functionName,
103
+ logType: LogType.TAIL,
104
+ invocationType: InvocationType.REQUEST_RESPONE, // to run it synchronously
105
+ payload: JSON.stringify({
106
+ id: id,
107
+ text: message,
108
+ sourceMail: `test@${fullDomain}`,
109
+ toMail: `root+${id}@${fullDomain}`,
110
+ }),
111
+ }).expect(ExpectedResult.objectLike(
112
+ // as the object 'return { sendStatusCode: 200 };' is wrapped in a Payload object with other properties
113
+ {
114
+ Payload: {
115
+ sendStatusCode: 200,
116
+ },
117
+ },
118
+ ),
119
+ );
120
+
121
+ const getHostedZoneParametersAssertion = integ.assertions
122
+ /**
123
+ * Check that parameter are present
124
+ */
125
+ .awsApiCall('SSM', 'getParameter', {
126
+ Name: rootmail.hostedZoneParameterName,
127
+ })
128
+ .expect(
129
+ ExpectedResult.objectLike({
130
+ Parameter: {
131
+ Name: rootmail.hostedZoneParameterName,
132
+ Type: 'StringList',
133
+ },
134
+ }),
135
+ );
136
+
137
+ /**
138
+ * Main test case
139
+ */
140
+ // check the parameter store
141
+ getHostedZoneParametersAssertion
142
+ // Send a test email
143
+ .next(sendTestEmailAssertion)
@@ -0,0 +1,162 @@
1
+ {
2
+ "version": "33.0.0",
3
+ "files": {
4
+ "0649b5bfaa322d6bd173d2daef3177389cf0778b556b300ac6bf451704cc3a49": {
5
+ "source": {
6
+ "path": "asset.0649b5bfaa322d6bd173d2daef3177389cf0778b556b300ac6bf451704cc3a49",
7
+ "packaging": "zip"
8
+ },
9
+ "destinations": {
10
+ "current_account-current_region": {
11
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
12
+ "objectKey": "0649b5bfaa322d6bd173d2daef3177389cf0778b556b300ac6bf451704cc3a49.zip",
13
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
14
+ }
15
+ }
16
+ },
17
+ "5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e": {
18
+ "source": {
19
+ "path": "asset.5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e",
20
+ "packaging": "zip"
21
+ },
22
+ "destinations": {
23
+ "current_account-current_region": {
24
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
25
+ "objectKey": "5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e.zip",
26
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
27
+ }
28
+ }
29
+ },
30
+ "f9b17c134d24cf60e1d26c033b5f4f247b759149619ac0aac341b950a10ccf14": {
31
+ "source": {
32
+ "path": "asset.f9b17c134d24cf60e1d26c033b5f4f247b759149619ac0aac341b950a10ccf14",
33
+ "packaging": "zip"
34
+ },
35
+ "destinations": {
36
+ "current_account-current_region": {
37
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
38
+ "objectKey": "f9b17c134d24cf60e1d26c033b5f4f247b759149619ac0aac341b950a10ccf14.zip",
39
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
40
+ }
41
+ }
42
+ },
43
+ "f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf": {
44
+ "source": {
45
+ "path": "asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf",
46
+ "packaging": "zip"
47
+ },
48
+ "destinations": {
49
+ "current_account-current_region": {
50
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
51
+ "objectKey": "f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf.zip",
52
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
53
+ }
54
+ }
55
+ },
56
+ "157ba1713f7224463b621261792d18081588ff306a9bc3f75e6c468fabbe1a60": {
57
+ "source": {
58
+ "path": "asset.157ba1713f7224463b621261792d18081588ff306a9bc3f75e6c468fabbe1a60",
59
+ "packaging": "zip"
60
+ },
61
+ "destinations": {
62
+ "current_account-current_region": {
63
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
64
+ "objectKey": "157ba1713f7224463b621261792d18081588ff306a9bc3f75e6c468fabbe1a60.zip",
65
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
66
+ }
67
+ }
68
+ },
69
+ "4c079063901e6478dbb5ace19e3123641ebf0da2ab648ecf52079c5bec154196": {
70
+ "source": {
71
+ "path": "asset.4c079063901e6478dbb5ace19e3123641ebf0da2ab648ecf52079c5bec154196",
72
+ "packaging": "zip"
73
+ },
74
+ "destinations": {
75
+ "current_account-current_region": {
76
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
77
+ "objectKey": "4c079063901e6478dbb5ace19e3123641ebf0da2ab648ecf52079c5bec154196.zip",
78
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
79
+ }
80
+ }
81
+ },
82
+ "7e8a681794eff5fda1841caa360113df5488ecf944055a69b8f1e5a687e269f5": {
83
+ "source": {
84
+ "path": "asset.7e8a681794eff5fda1841caa360113df5488ecf944055a69b8f1e5a687e269f5",
85
+ "packaging": "zip"
86
+ },
87
+ "destinations": {
88
+ "current_account-current_region": {
89
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
90
+ "objectKey": "7e8a681794eff5fda1841caa360113df5488ecf944055a69b8f1e5a687e269f5.zip",
91
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
92
+ }
93
+ }
94
+ },
95
+ "9572b451243318765beb576ae7528096b3879783dbaab795c02c01d7f4e83438": {
96
+ "source": {
97
+ "path": "asset.9572b451243318765beb576ae7528096b3879783dbaab795c02c01d7f4e83438",
98
+ "packaging": "zip"
99
+ },
100
+ "destinations": {
101
+ "current_account-current_region": {
102
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
103
+ "objectKey": "9572b451243318765beb576ae7528096b3879783dbaab795c02c01d7f4e83438.zip",
104
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
105
+ }
106
+ }
107
+ },
108
+ "b8448324ef2c7d5bfa362722df2d397079d5aabaae2749f09180ac5bedfa5c89": {
109
+ "source": {
110
+ "path": "asset.b8448324ef2c7d5bfa362722df2d397079d5aabaae2749f09180ac5bedfa5c89",
111
+ "packaging": "zip"
112
+ },
113
+ "destinations": {
114
+ "current_account-current_region": {
115
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
116
+ "objectKey": "b8448324ef2c7d5bfa362722df2d397079d5aabaae2749f09180ac5bedfa5c89.zip",
117
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
118
+ }
119
+ }
120
+ },
121
+ "78b64aaf9aebb4eacbdd42197be10e9d5894360a642f7dcf79aeb84bb3552377": {
122
+ "source": {
123
+ "path": "asset.78b64aaf9aebb4eacbdd42197be10e9d5894360a642f7dcf79aeb84bb3552377",
124
+ "packaging": "zip"
125
+ },
126
+ "destinations": {
127
+ "current_account-current_region": {
128
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
129
+ "objectKey": "78b64aaf9aebb4eacbdd42197be10e9d5894360a642f7dcf79aeb84bb3552377.zip",
130
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
131
+ }
132
+ }
133
+ },
134
+ "d2b520d86fd9d964c83dc0d5ce2e4456dbde5fa7ae0c791a71865cbdfe2fb855": {
135
+ "source": {
136
+ "path": "asset.d2b520d86fd9d964c83dc0d5ce2e4456dbde5fa7ae0c791a71865cbdfe2fb855",
137
+ "packaging": "zip"
138
+ },
139
+ "destinations": {
140
+ "current_account-current_region": {
141
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
142
+ "objectKey": "d2b520d86fd9d964c83dc0d5ce2e4456dbde5fa7ae0c791a71865cbdfe2fb855.zip",
143
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
144
+ }
145
+ }
146
+ },
147
+ "29df648400c115f86c87fc9f5bdb95120b46d2d1c8adfa2b2064e33731fb830b": {
148
+ "source": {
149
+ "path": "RootmailIntegTestStack.template.json",
150
+ "packaging": "file"
151
+ },
152
+ "destinations": {
153
+ "current_account-current_region": {
154
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
155
+ "objectKey": "29df648400c115f86c87fc9f5bdb95120b46d2d1c8adfa2b2064e33731fb830b.json",
156
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
157
+ }
158
+ }
159
+ }
160
+ },
161
+ "dockerImages": {}
162
+ }