@gradientedge/cdk-utils 4.3.2 → 4.4.3

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 (400) hide show
  1. package/README.md +39 -28
  2. package/api-docs/AcmManager.html +622 -0
  3. package/api-docs/AcmProps.html +238 -0
  4. package/api-docs/AlarmProps.html +238 -0
  5. package/api-docs/AlarmStatusWidgetProps.html +238 -0
  6. package/api-docs/ApiDestinationEvent.html +297 -0
  7. package/api-docs/ApiDestinationEventType.html +238 -0
  8. package/api-docs/ApiDestinedLambda.html +297 -0
  9. package/api-docs/ApiDestinedLambdaEnvironment.html +238 -0
  10. package/api-docs/ApiDestinedLambdaType.html +238 -0
  11. package/api-docs/ApiDestinedRestApi.html +297 -0
  12. package/api-docs/ApiDestinedRestApiType.html +238 -0
  13. package/api-docs/ApiManager.html +766 -0
  14. package/api-docs/ApiToEventBridgeTarget.html +1877 -0
  15. package/api-docs/ApiToEventBridgeTarget.jpg +0 -0
  16. package/api-docs/ApiToEventBridgeTargetEventProps.html +238 -0
  17. package/api-docs/ApiToEventBridgeTargetLambdaProps.html +238 -0
  18. package/api-docs/ApiToEventBridgeTargetProps.html +238 -0
  19. package/api-docs/ApiToEventBridgeTargetRestApiProps.html +238 -0
  20. package/api-docs/AppConfigManager.html +1203 -0
  21. package/api-docs/AppConfigProps.html +238 -0
  22. package/api-docs/CloudFrontManager.html +2402 -0
  23. package/api-docs/CloudFrontProps.html +238 -0
  24. package/api-docs/CloudTrailManager.html +637 -0
  25. package/api-docs/CloudTrailProps.html +238 -0
  26. package/api-docs/CloudWatchManager.html +2986 -0
  27. package/api-docs/CloudfrontFunctionProps.html +238 -0
  28. package/api-docs/CodeBuildManager.html +736 -0
  29. package/api-docs/CommonConstruct.html +1299 -0
  30. package/api-docs/CommonStack.html +813 -0
  31. package/api-docs/CommonStackProps.html +238 -0
  32. package/api-docs/DashboardProps.html +238 -0
  33. package/api-docs/DistributionProps.html +238 -0
  34. package/api-docs/DynamodbManager.html +530 -0
  35. package/api-docs/EcrManager.html +530 -0
  36. package/api-docs/EcsClusterProps.html +238 -0
  37. package/api-docs/EcsManager.html +880 -0
  38. package/api-docs/EcsTaskProps.html +238 -0
  39. package/api-docs/EksClusterProps.html +238 -0
  40. package/api-docs/EksManager.html +580 -0
  41. package/api-docs/EventBusProps.html +238 -0
  42. package/api-docs/EventManager.html +1454 -0
  43. package/api-docs/EventRuleProps.html +238 -0
  44. package/api-docs/GraphQLApiLambda.html +1671 -0
  45. package/api-docs/GraphQLApiLambda.jpg +0 -0
  46. package/api-docs/GraphQlApiLambdaEnvironment.html +238 -0
  47. package/api-docs/GraphQlApiLambdaProps.html +238 -0
  48. package/api-docs/GraphWidgetProps.html +238 -0
  49. package/api-docs/HealthCheck.html +238 -0
  50. package/api-docs/IamManager.html +3821 -0
  51. package/api-docs/LambdaEdgeProps.html +238 -0
  52. package/api-docs/LambdaEnvironment.html +238 -0
  53. package/api-docs/LambdaManager.html +2378 -0
  54. package/api-docs/LambdaProps.html +238 -0
  55. package/api-docs/LifecycleRule.html +238 -0
  56. package/api-docs/LogManager.html +955 -0
  57. package/api-docs/LogProps.html +238 -0
  58. package/api-docs/LogQueryWidgetProps.html +238 -0
  59. package/api-docs/MetricFilterProps.html +238 -0
  60. package/api-docs/MetricProps.html +238 -0
  61. package/api-docs/NumericWidgetProps.html +238 -0
  62. package/api-docs/Route53Manager.html +1460 -0
  63. package/api-docs/Route53Props.html +238 -0
  64. package/api-docs/RuleProps.html +238 -0
  65. package/api-docs/S3BucketProps.html +238 -0
  66. package/api-docs/S3Manager.html +1546 -0
  67. package/api-docs/SSMParameterReader.html +431 -0
  68. package/api-docs/SSMParameterReaderProps.html +238 -0
  69. package/api-docs/SecretsManager.html +1140 -0
  70. package/api-docs/SiteWithEcsBackend.html +2391 -0
  71. package/api-docs/SiteWithEcsBackendProps.html +238 -0
  72. package/api-docs/SnsManager.html +780 -0
  73. package/api-docs/SsmManager.html +955 -0
  74. package/api-docs/StaticSite.html +1358 -0
  75. package/api-docs/StaticSiteProps.html +238 -0
  76. package/api-docs/SubscriptionProps.html +238 -0
  77. package/api-docs/TableProps.html +238 -0
  78. package/api-docs/TextWidgetProps.html +238 -0
  79. package/api-docs/VpcManager.html +986 -0
  80. package/api-docs/WafIPSetProps.html +238 -0
  81. package/api-docs/WafManager.html +730 -0
  82. package/api-docs/WafWebACLProps.html +238 -0
  83. package/api-docs/common_construct.ts.html +279 -0
  84. package/api-docs/common_stack.ts.html +303 -0
  85. package/api-docs/construct_api-to-eventbridge-target_api-destination-event.ts.html +175 -0
  86. package/api-docs/construct_api-to-eventbridge-target_api-destined-lambda.ts.html +178 -0
  87. package/api-docs/construct_api-to-eventbridge-target_api-destined-rest-api.ts.html +190 -0
  88. package/api-docs/construct_api-to-eventbridge-target_main.ts.html +751 -0
  89. package/api-docs/construct_graphql-api-lambda_main.ts.html +408 -0
  90. package/api-docs/construct_site-with-ecs-backend_main.ts.html +544 -0
  91. package/api-docs/construct_static-site_main.ts.html +374 -0
  92. package/api-docs/global.html +1530 -0
  93. package/api-docs/index.html +208 -0
  94. package/api-docs/logo.png +0 -0
  95. package/api-docs/manager_aws_acm-manager.ts.html +236 -0
  96. package/api-docs/manager_aws_api-manager.ts.html +260 -0
  97. package/api-docs/manager_aws_app-config-manager.ts.html +310 -0
  98. package/api-docs/manager_aws_cloudfront-manager.ts.html +491 -0
  99. package/api-docs/manager_aws_cloudtrail-manager.ts.html +251 -0
  100. package/api-docs/manager_aws_cloudwatch-manager.ts.html +553 -0
  101. package/api-docs/manager_aws_codebuild-manager.ts.html +240 -0
  102. package/api-docs/manager_aws_dynamodb-manager.ts.html +219 -0
  103. package/api-docs/manager_aws_ecr-manager.ts.html +199 -0
  104. package/api-docs/manager_aws_ecs-manager.ts.html +259 -0
  105. package/api-docs/manager_aws_eks-manager.ts.html +260 -0
  106. package/api-docs/manager_aws_event-manager.ts.html +336 -0
  107. package/api-docs/manager_aws_iam-manager.ts.html +573 -0
  108. package/api-docs/manager_aws_lambda-manager.ts.html +400 -0
  109. package/api-docs/manager_aws_log-manager.ts.html +259 -0
  110. package/api-docs/manager_aws_route53-manager.ts.html +333 -0
  111. package/api-docs/manager_aws_s3-manager.ts.html +361 -0
  112. package/api-docs/manager_aws_secrets-manager.ts.html +274 -0
  113. package/api-docs/manager_aws_sns-manager.ts.html +246 -0
  114. package/api-docs/manager_aws_ssm-manager.ts.html +273 -0
  115. package/api-docs/manager_aws_vpc-manager.ts.html +244 -0
  116. package/api-docs/manager_aws_waf-manager.ts.html +232 -0
  117. package/api-docs/scripts/app.min.js +1 -0
  118. package/api-docs/scripts/linenumber.js +26 -0
  119. package/api-docs/scripts/search.js +39 -0
  120. package/api-docs/styles/app.min.css +1 -0
  121. package/api-docs/styles/iframe.css +13 -0
  122. package/api-docs/styles/prettify-jsdoc.css +111 -0
  123. package/api-docs/styles/prettify-tomorrow.css +132 -0
  124. package/api-docs/styles/reset.css +44 -0
  125. package/api-docs/styles.css +113 -0
  126. package/api-docs/tutorial-Architecture.html +151 -0
  127. package/api-docs/tutorial-Build.html +150 -0
  128. package/api-docs/tutorial-CI-CD.html +154 -0
  129. package/api-docs/tutorial-Development.html +227 -0
  130. package/api-docs/types_aws_index.ts.html +665 -0
  131. package/api-docs/utils_aws_index.ts.html +192 -0
  132. package/api-docs/utils_index.ts.html +227 -0
  133. package/app/api-destined-function/node_modules/.yarn-integrity +180 -0
  134. package/app/api-destined-function/node_modules/@types/uuid/LICENSE +21 -0
  135. package/app/api-destined-function/node_modules/@types/uuid/README.md +16 -0
  136. package/app/api-destined-function/node_modules/@types/uuid/index.d.mts +10 -0
  137. package/app/api-destined-function/node_modules/@types/uuid/index.d.ts +80 -0
  138. package/app/api-destined-function/node_modules/@types/uuid/package.json +54 -0
  139. package/app/api-destined-function/node_modules/balanced-match/LICENSE.md +21 -0
  140. package/app/api-destined-function/node_modules/balanced-match/README.md +97 -0
  141. package/app/api-destined-function/node_modules/balanced-match/index.js +62 -0
  142. package/app/api-destined-function/node_modules/balanced-match/package.json +48 -0
  143. package/app/api-destined-function/node_modules/brace-expansion/LICENSE +21 -0
  144. package/app/api-destined-function/node_modules/brace-expansion/README.md +129 -0
  145. package/app/api-destined-function/node_modules/brace-expansion/index.js +201 -0
  146. package/app/api-destined-function/node_modules/brace-expansion/package.json +47 -0
  147. package/app/api-destined-function/node_modules/concat-map/.travis.yml +4 -0
  148. package/app/api-destined-function/node_modules/concat-map/LICENSE +18 -0
  149. package/app/api-destined-function/node_modules/concat-map/README.markdown +62 -0
  150. package/app/api-destined-function/node_modules/concat-map/example/map.js +6 -0
  151. package/app/api-destined-function/node_modules/concat-map/index.js +13 -0
  152. package/app/api-destined-function/node_modules/concat-map/package.json +43 -0
  153. package/app/api-destined-function/node_modules/fs.realpath/LICENSE +43 -0
  154. package/app/api-destined-function/node_modules/fs.realpath/README.md +33 -0
  155. package/app/api-destined-function/node_modules/fs.realpath/index.js +66 -0
  156. package/app/api-destined-function/node_modules/fs.realpath/old.js +303 -0
  157. package/app/api-destined-function/node_modules/fs.realpath/package.json +26 -0
  158. package/app/api-destined-function/node_modules/glob/LICENSE +21 -0
  159. package/app/api-destined-function/node_modules/glob/README.md +378 -0
  160. package/app/api-destined-function/node_modules/glob/common.js +236 -0
  161. package/app/api-destined-function/node_modules/glob/glob.js +787 -0
  162. package/app/api-destined-function/node_modules/glob/package.json +52 -0
  163. package/app/api-destined-function/node_modules/glob/sync.js +483 -0
  164. package/app/api-destined-function/node_modules/inflight/LICENSE +15 -0
  165. package/app/api-destined-function/node_modules/inflight/README.md +37 -0
  166. package/app/api-destined-function/node_modules/inflight/inflight.js +54 -0
  167. package/app/api-destined-function/node_modules/inflight/package.json +29 -0
  168. package/app/api-destined-function/node_modules/inherits/LICENSE +16 -0
  169. package/app/api-destined-function/node_modules/inherits/README.md +42 -0
  170. package/app/api-destined-function/node_modules/inherits/inherits.js +9 -0
  171. package/app/api-destined-function/node_modules/inherits/inherits_browser.js +27 -0
  172. package/app/api-destined-function/node_modules/inherits/package.json +29 -0
  173. package/app/api-destined-function/node_modules/minimatch/LICENSE +15 -0
  174. package/app/api-destined-function/node_modules/minimatch/README.md +209 -0
  175. package/app/api-destined-function/node_modules/minimatch/minimatch.js +923 -0
  176. package/app/api-destined-function/node_modules/minimatch/package.json +30 -0
  177. package/app/api-destined-function/node_modules/mkdirp/LICENSE +21 -0
  178. package/app/api-destined-function/node_modules/mkdirp/bin/cmd.js +68 -0
  179. package/app/api-destined-function/node_modules/mkdirp/index.js +31 -0
  180. package/app/api-destined-function/node_modules/mkdirp/lib/find-made.js +29 -0
  181. package/app/api-destined-function/node_modules/mkdirp/lib/mkdirp-manual.js +64 -0
  182. package/app/api-destined-function/node_modules/mkdirp/lib/mkdirp-native.js +39 -0
  183. package/app/api-destined-function/node_modules/mkdirp/lib/opts-arg.js +23 -0
  184. package/app/api-destined-function/node_modules/mkdirp/lib/path-arg.js +29 -0
  185. package/app/api-destined-function/node_modules/mkdirp/lib/use-native.js +10 -0
  186. package/app/api-destined-function/node_modules/mkdirp/package.json +44 -0
  187. package/app/api-destined-function/node_modules/mkdirp/readme.markdown +266 -0
  188. package/app/api-destined-function/node_modules/once/LICENSE +15 -0
  189. package/app/api-destined-function/node_modules/once/README.md +79 -0
  190. package/app/api-destined-function/node_modules/once/once.js +42 -0
  191. package/app/api-destined-function/node_modules/once/package.json +33 -0
  192. package/app/api-destined-function/node_modules/path-is-absolute/index.js +20 -0
  193. package/app/api-destined-function/node_modules/path-is-absolute/license +21 -0
  194. package/app/api-destined-function/node_modules/path-is-absolute/package.json +43 -0
  195. package/app/api-destined-function/node_modules/path-is-absolute/readme.md +59 -0
  196. package/app/api-destined-function/node_modules/rimraf/LICENSE +15 -0
  197. package/app/api-destined-function/node_modules/rimraf/README.md +101 -0
  198. package/app/api-destined-function/node_modules/rimraf/bin.js +68 -0
  199. package/app/api-destined-function/node_modules/rimraf/package.json +32 -0
  200. package/app/api-destined-function/node_modules/rimraf/rimraf.js +360 -0
  201. package/app/api-destined-function/node_modules/uuid/LICENSE.md +9 -0
  202. package/app/api-destined-function/node_modules/uuid/README.md +505 -0
  203. package/app/api-destined-function/node_modules/uuid/package.json +135 -0
  204. package/app/api-destined-function/node_modules/uuid/wrapper.mjs +10 -0
  205. package/app/api-destined-function/node_modules/wrappy/LICENSE +15 -0
  206. package/app/api-destined-function/node_modules/wrappy/README.md +36 -0
  207. package/app/api-destined-function/node_modules/wrappy/package.json +29 -0
  208. package/app/api-destined-function/node_modules/wrappy/wrappy.js +33 -0
  209. package/app/api-destined-function/package.json +29 -0
  210. package/app/api-destined-function/src/lib/lambda.ts +31 -0
  211. package/img/ApiToEventBridgeTarget.jpg +0 -0
  212. package/img/GraphQLApiLambda.jpg +0 -0
  213. package/img/logo.png +0 -0
  214. package/package.json +17 -18
  215. package/src/lib/common/{commonConstruct.ts → construct.ts} +3 -13
  216. package/src/lib/common/index.ts +2 -2
  217. package/src/lib/common/{commonStack.ts → stack.ts} +5 -14
  218. package/src/lib/construct/api-to-eventbridge-target/api-destination-event.ts +17 -0
  219. package/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.ts +20 -0
  220. package/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.ts +32 -0
  221. package/src/lib/construct/api-to-eventbridge-target/index.ts +4 -0
  222. package/src/lib/construct/api-to-eventbridge-target/main.ts +593 -0
  223. package/src/lib/construct/graphql-api-lambda/index.ts +1 -0
  224. package/src/lib/construct/{graphQLApiLambda.ts → graphql-api-lambda/main.ts} +11 -20
  225. package/src/lib/construct/index.ts +4 -3
  226. package/src/lib/construct/site-with-ecs-backend/index.ts +1 -0
  227. package/src/lib/construct/{siteWithEcsBackend.ts → site-with-ecs-backend/main.ts} +6 -17
  228. package/src/lib/construct/static-site/index.ts +1 -0
  229. package/src/lib/construct/{staticSite.ts → static-site/main.ts} +5 -16
  230. package/src/lib/manager/aws/{acmManager.ts → acm-manager.ts} +3 -2
  231. package/src/lib/manager/aws/{apiManager.ts → api-manager.ts} +6 -5
  232. package/src/lib/manager/aws/{appConfigManager.ts → app-config-manager.ts} +5 -3
  233. package/src/lib/manager/aws/{cloudFrontManager.ts → cloudfront-manager.ts} +3 -2
  234. package/src/lib/manager/aws/{cloudTrailManager.ts → cloudtrail-manager.ts} +3 -2
  235. package/src/lib/manager/aws/{cloudWatchManager.ts → cloudwatch-manager.ts} +5 -3
  236. package/src/lib/manager/aws/{codeBuildManager.ts → codebuild-manager.ts} +3 -2
  237. package/src/lib/manager/aws/{dynamodbManager.ts → dynamodb-manager.ts} +3 -2
  238. package/src/lib/manager/aws/{ecrManager.ts → ecr-manager.ts} +3 -2
  239. package/src/lib/manager/aws/{ecsManager.ts → ecs-manager.ts} +3 -2
  240. package/src/lib/manager/aws/{eksManager.ts → eks-manager.ts} +3 -2
  241. package/src/lib/manager/aws/{eventManager.ts → event-manager.ts} +57 -2
  242. package/src/lib/manager/aws/{iamManager.ts → iam-manager.ts} +23 -17
  243. package/src/lib/manager/aws/index.ts +22 -22
  244. package/src/lib/manager/aws/{lambdaManager.ts → lambda-manager.ts} +4 -3
  245. package/src/lib/manager/aws/{logManager.ts → log-manager.ts} +3 -2
  246. package/src/lib/manager/aws/{route53Manager.ts → route53-manager.ts} +4 -3
  247. package/src/lib/manager/aws/{s3Manager.ts → s3-manager.ts} +3 -2
  248. package/src/lib/manager/aws/{secretsManager.ts → secrets-manager.ts} +3 -2
  249. package/src/lib/manager/aws/{snsManager.ts → sns-manager.ts} +3 -2
  250. package/src/lib/manager/aws/{ssmManager.ts → ssm-manager.ts} +6 -9
  251. package/src/lib/manager/aws/{vpcManager.ts → vpc-manager.ts} +8 -5
  252. package/src/lib/manager/aws/{wafManager.ts → waf-manager.ts} +3 -2
  253. package/src/lib/types/aws/index.ts +221 -32
  254. package/src/lib/utils/aws/index.ts +2 -2
  255. package/src/lib/utils/index.ts +8 -8
  256. package/theme/styles.css +113 -0
  257. package/.releaserc +0 -9
  258. package/dist/index.d.ts +0 -6
  259. package/dist/index.d.ts.map +0 -1
  260. package/dist/index.js.map +0 -1
  261. package/dist/src/lib/common/commonConstruct.d.ts +0 -90
  262. package/dist/src/lib/common/commonConstruct.d.ts.map +0 -1
  263. package/dist/src/lib/common/commonConstruct.js +0 -144
  264. package/dist/src/lib/common/commonConstruct.js.map +0 -1
  265. package/dist/src/lib/common/commonStack.d.ts +0 -65
  266. package/dist/src/lib/common/commonStack.d.ts.map +0 -1
  267. package/dist/src/lib/common/commonStack.js +0 -158
  268. package/dist/src/lib/common/commonStack.js.map +0 -1
  269. package/dist/src/lib/common/index.d.ts +0 -3
  270. package/dist/src/lib/common/index.d.ts.map +0 -1
  271. package/dist/src/lib/common/index.js +0 -15
  272. package/dist/src/lib/common/index.js.map +0 -1
  273. package/dist/src/lib/construct/graphQLApiLambda.d.ts +0 -122
  274. package/dist/src/lib/construct/graphQLApiLambda.d.ts.map +0 -1
  275. package/dist/src/lib/construct/graphQLApiLambda.js +0 -211
  276. package/dist/src/lib/construct/graphQLApiLambda.js.map +0 -1
  277. package/dist/src/lib/construct/index.d.ts +0 -4
  278. package/dist/src/lib/construct/index.d.ts.map +0 -1
  279. package/dist/src/lib/construct/index.js +0 -16
  280. package/dist/src/lib/construct/index.js.map +0 -1
  281. package/dist/src/lib/construct/siteWithEcsBackend.d.ts +0 -179
  282. package/dist/src/lib/construct/siteWithEcsBackend.d.ts.map +0 -1
  283. package/dist/src/lib/construct/siteWithEcsBackend.js +0 -339
  284. package/dist/src/lib/construct/siteWithEcsBackend.js.map +0 -1
  285. package/dist/src/lib/construct/staticSite.d.ts +0 -106
  286. package/dist/src/lib/construct/staticSite.d.ts.map +0 -1
  287. package/dist/src/lib/construct/staticSite.js +0 -180
  288. package/dist/src/lib/construct/staticSite.js.map +0 -1
  289. package/dist/src/lib/manager/aws/acmManager.d.ts +0 -46
  290. package/dist/src/lib/manager/aws/acmManager.d.ts.map +0 -1
  291. package/dist/src/lib/manager/aws/acmManager.js +0 -90
  292. package/dist/src/lib/manager/aws/acmManager.js.map +0 -1
  293. package/dist/src/lib/manager/aws/apiManager.d.ts +0 -43
  294. package/dist/src/lib/manager/aws/apiManager.d.ts.map +0 -1
  295. package/dist/src/lib/manager/aws/apiManager.js +0 -111
  296. package/dist/src/lib/manager/aws/apiManager.js.map +0 -1
  297. package/dist/src/lib/manager/aws/appConfigManager.d.ts +0 -64
  298. package/dist/src/lib/manager/aws/appConfigManager.d.ts.map +0 -1
  299. package/dist/src/lib/manager/aws/appConfigManager.js +0 -147
  300. package/dist/src/lib/manager/aws/appConfigManager.js.map +0 -1
  301. package/dist/src/lib/manager/aws/cloudFrontManager.d.ts +0 -112
  302. package/dist/src/lib/manager/aws/cloudFrontManager.d.ts.map +0 -1
  303. package/dist/src/lib/manager/aws/cloudFrontManager.js +0 -282
  304. package/dist/src/lib/manager/aws/cloudFrontManager.js.map +0 -1
  305. package/dist/src/lib/manager/aws/cloudTrailManager.d.ts +0 -48
  306. package/dist/src/lib/manager/aws/cloudTrailManager.d.ts.map +0 -1
  307. package/dist/src/lib/manager/aws/cloudTrailManager.js +0 -99
  308. package/dist/src/lib/manager/aws/cloudTrailManager.js.map +0 -1
  309. package/dist/src/lib/manager/aws/cloudWatchManager.d.ts +0 -121
  310. package/dist/src/lib/manager/aws/cloudWatchManager.d.ts.map +0 -1
  311. package/dist/src/lib/manager/aws/cloudWatchManager.js +0 -351
  312. package/dist/src/lib/manager/aws/cloudWatchManager.js.map +0 -1
  313. package/dist/src/lib/manager/aws/codeBuildManager.d.ts +0 -40
  314. package/dist/src/lib/manager/aws/codeBuildManager.d.ts.map +0 -1
  315. package/dist/src/lib/manager/aws/codeBuildManager.js +0 -94
  316. package/dist/src/lib/manager/aws/codeBuildManager.js.map +0 -1
  317. package/dist/src/lib/manager/aws/dynamodbManager.d.ts +0 -32
  318. package/dist/src/lib/manager/aws/dynamodbManager.d.ts.map +0 -1
  319. package/dist/src/lib/manager/aws/dynamodbManager.js +0 -79
  320. package/dist/src/lib/manager/aws/dynamodbManager.js.map +0 -1
  321. package/dist/src/lib/manager/aws/ecrManager.d.ts +0 -31
  322. package/dist/src/lib/manager/aws/ecrManager.d.ts.map +0 -1
  323. package/dist/src/lib/manager/aws/ecrManager.js +0 -60
  324. package/dist/src/lib/manager/aws/ecrManager.js.map +0 -1
  325. package/dist/src/lib/manager/aws/ecsManager.d.ts +0 -48
  326. package/dist/src/lib/manager/aws/ecsManager.d.ts.map +0 -1
  327. package/dist/src/lib/manager/aws/ecsManager.js +0 -103
  328. package/dist/src/lib/manager/aws/ecsManager.js.map +0 -1
  329. package/dist/src/lib/manager/aws/eksManager.d.ts +0 -36
  330. package/dist/src/lib/manager/aws/eksManager.d.ts.map +0 -1
  331. package/dist/src/lib/manager/aws/eksManager.js +0 -109
  332. package/dist/src/lib/manager/aws/eksManager.js.map +0 -1
  333. package/dist/src/lib/manager/aws/eventManager.d.ts +0 -51
  334. package/dist/src/lib/manager/aws/eventManager.d.ts.map +0 -1
  335. package/dist/src/lib/manager/aws/eventManager.js +0 -120
  336. package/dist/src/lib/manager/aws/eventManager.js.map +0 -1
  337. package/dist/src/lib/manager/aws/iamManager.d.ts +0 -156
  338. package/dist/src/lib/manager/aws/iamManager.d.ts.map +0 -1
  339. package/dist/src/lib/manager/aws/iamManager.js +0 -376
  340. package/dist/src/lib/manager/aws/iamManager.js.map +0 -1
  341. package/dist/src/lib/manager/aws/index.d.ts +0 -23
  342. package/dist/src/lib/manager/aws/index.d.ts.map +0 -1
  343. package/dist/src/lib/manager/aws/index.js +0 -35
  344. package/dist/src/lib/manager/aws/index.js.map +0 -1
  345. package/dist/src/lib/manager/aws/lambdaManager.d.ts +0 -94
  346. package/dist/src/lib/manager/aws/lambdaManager.d.ts.map +0 -1
  347. package/dist/src/lib/manager/aws/lambdaManager.js +0 -196
  348. package/dist/src/lib/manager/aws/lambdaManager.js.map +0 -1
  349. package/dist/src/lib/manager/aws/logManager.d.ts +0 -51
  350. package/dist/src/lib/manager/aws/logManager.d.ts.map +0 -1
  351. package/dist/src/lib/manager/aws/logManager.js +0 -108
  352. package/dist/src/lib/manager/aws/logManager.js.map +0 -1
  353. package/dist/src/lib/manager/aws/route53Manager.d.ts +0 -68
  354. package/dist/src/lib/manager/aws/route53Manager.d.ts.map +0 -1
  355. package/dist/src/lib/manager/aws/route53Manager.js +0 -158
  356. package/dist/src/lib/manager/aws/route53Manager.js.map +0 -1
  357. package/dist/src/lib/manager/aws/s3Manager.d.ts +0 -73
  358. package/dist/src/lib/manager/aws/s3Manager.d.ts.map +0 -1
  359. package/dist/src/lib/manager/aws/s3Manager.js +0 -202
  360. package/dist/src/lib/manager/aws/s3Manager.js.map +0 -1
  361. package/dist/src/lib/manager/aws/secretsManager.d.ts +0 -57
  362. package/dist/src/lib/manager/aws/secretsManager.d.ts.map +0 -1
  363. package/dist/src/lib/manager/aws/secretsManager.js +0 -116
  364. package/dist/src/lib/manager/aws/secretsManager.js.map +0 -1
  365. package/dist/src/lib/manager/aws/snsManager.d.ts +0 -42
  366. package/dist/src/lib/manager/aws/snsManager.d.ts.map +0 -1
  367. package/dist/src/lib/manager/aws/snsManager.js +0 -90
  368. package/dist/src/lib/manager/aws/snsManager.js.map +0 -1
  369. package/dist/src/lib/manager/aws/ssmManager.d.ts +0 -64
  370. package/dist/src/lib/manager/aws/ssmManager.d.ts.map +0 -1
  371. package/dist/src/lib/manager/aws/ssmManager.js +0 -128
  372. package/dist/src/lib/manager/aws/ssmManager.js.map +0 -1
  373. package/dist/src/lib/manager/aws/vpcManager.d.ts +0 -44
  374. package/dist/src/lib/manager/aws/vpcManager.d.ts.map +0 -1
  375. package/dist/src/lib/manager/aws/vpcManager.js +0 -92
  376. package/dist/src/lib/manager/aws/vpcManager.js.map +0 -1
  377. package/dist/src/lib/manager/aws/wafManager.d.ts +0 -39
  378. package/dist/src/lib/manager/aws/wafManager.d.ts.map +0 -1
  379. package/dist/src/lib/manager/aws/wafManager.js +0 -89
  380. package/dist/src/lib/manager/aws/wafManager.js.map +0 -1
  381. package/dist/src/lib/manager/index.d.ts +0 -2
  382. package/dist/src/lib/manager/index.d.ts.map +0 -1
  383. package/dist/src/lib/manager/index.js +0 -14
  384. package/dist/src/lib/manager/index.js.map +0 -1
  385. package/dist/src/lib/types/aws/index.d.ts +0 -294
  386. package/dist/src/lib/types/aws/index.d.ts.map +0 -1
  387. package/dist/src/lib/types/aws/index.js +0 -3
  388. package/dist/src/lib/types/aws/index.js.map +0 -1
  389. package/dist/src/lib/types/index.d.ts +0 -2
  390. package/dist/src/lib/types/index.d.ts.map +0 -1
  391. package/dist/src/lib/types/index.js +0 -14
  392. package/dist/src/lib/types/index.js.map +0 -1
  393. package/dist/src/lib/utils/aws/index.d.ts +0 -16
  394. package/dist/src/lib/utils/aws/index.d.ts.map +0 -1
  395. package/dist/src/lib/utils/aws/index.js +0 -50
  396. package/dist/src/lib/utils/aws/index.js.map +0 -1
  397. package/dist/src/lib/utils/index.d.ts +0 -63
  398. package/dist/src/lib/utils/index.d.ts.map +0 -1
  399. package/dist/src/lib/utils/index.js +0 -85
  400. package/dist/src/lib/utils/index.js.map +0 -1
@@ -1,339 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.SiteWithEcsBackend = void 0;
23
- const cdk = __importStar(require("aws-cdk-lib"));
24
- const cloudfront = __importStar(require("aws-cdk-lib/aws-cloudfront"));
25
- const origins = __importStar(require("aws-cdk-lib/aws-cloudfront-origins"));
26
- const ecs = __importStar(require("aws-cdk-lib/aws-ecs"));
27
- const ecsPatterns = __importStar(require("aws-cdk-lib/aws-ecs-patterns"));
28
- const iam = __importStar(require("aws-cdk-lib/aws-iam"));
29
- const common_1 = require("../common");
30
- /**
31
- * @stability stable
32
- * @category Constructs
33
- * @summary Provides a construct to create and deploy a site hosted with an clustered ECS/ELB backend
34
- *
35
- * @example
36
- * import { SiteWithEcsBackend, SiteWithEcsBackendProps } '@gradientedge/cdk-utils'
37
- * import { Construct } from 'constructs'
38
- *
39
- * class CustomConstruct extends SiteWithEcsBackend {
40
- * constructor(parent: Construct, id: string, props: SiteWithEcsBackendProps) {
41
- * super(parent, id, props)
42
- * this.props = props
43
- * this.id = id
44
- * this.initResources()
45
- * }
46
- * }
47
- *
48
- * @mermaid
49
- * graph LR;
50
- * A[StaticSite]-.->|extends|B(CommonConstruct);
51
- * B(CommonConstruct)-->|extends|C(Construct);
52
- * C(Construct)-->|implements|D(IConstruct);
53
- */
54
- class SiteWithEcsBackend extends common_1.CommonConstruct {
55
- /* site properties */
56
- props;
57
- id;
58
- /* site resources */
59
- siteHostedZone;
60
- siteCertificate;
61
- siteEcsPolicy;
62
- siteEcsRole;
63
- siteEcsEnvironment;
64
- siteVpc;
65
- siteSecrets;
66
- siteEcsCluster;
67
- siteEcsLogGroup;
68
- siteEcsBuildArgs = {};
69
- siteEcsContainerImage;
70
- siteEcsService;
71
- siteEcsTaskDefinition;
72
- siteEcsListener;
73
- siteEcsLoadBalancer;
74
- siteEcsTargetGroup;
75
- siteLogBucket;
76
- siteOrigin;
77
- siteDistribution;
78
- siteSecretAlgolia;
79
- siteInternalDomainName;
80
- siteExternalDomainName;
81
- siteDomainNames;
82
- siteCloudfrontFunction;
83
- siteFunctionAssociations;
84
- /**
85
- * @summary Constructor to initialise the SiteWithEcsBackend Construct
86
- * @param {Construct} parent
87
- * @param {string} id
88
- * @param {SiteWithEcsBackendProps} props
89
- */
90
- constructor(parent, id, props) {
91
- super(parent, id, props);
92
- this.props = props;
93
- this.id = id;
94
- }
95
- /**
96
- * @summary Initialise and provision resources
97
- * @protected
98
- */
99
- initResources() {
100
- this.resolveHostedZone();
101
- this.resolveCertificate();
102
- this.resolveSiteSecrets();
103
- this.resolveSiteDomainNames();
104
- this.createVpc();
105
- this.createEcsPolicy();
106
- this.createEcsRole();
107
- this.createEcsEnvironment();
108
- this.createEcsCluster();
109
- this.createEcsLogGroup();
110
- this.createEcsBuildArgs();
111
- this.createEcsContainerImage();
112
- this.createEcsService();
113
- this.createSiteLogBucket();
114
- this.createSiteOrigin();
115
- this.createSiteCloudfrontFunction();
116
- this.resolveSiteFunctionAssociations();
117
- this.createDistribution();
118
- this.createNetworkMappings();
119
- this.invalidateDistributionCache();
120
- }
121
- /**
122
- * @summary Method to resolve a hosted zone based on domain attributes
123
- * @protected
124
- */
125
- resolveHostedZone() {
126
- this.siteHostedZone = this.route53Manager.withHostedZoneFromFullyQualifiedDomainName(`${this.id}-hosted-zone`, this, this.props.useExistingHostedZone);
127
- }
128
- /**
129
- * @summary Method to resolve a certificate based on attributes
130
- * @protected
131
- */
132
- resolveCertificate() {
133
- /* determine site certificate */
134
- if (this.props.siteCertificate.useExistingCertificate &&
135
- this.props.siteCertificate.certificateSsmName &&
136
- this.props.siteCertificate.certificateRegion) {
137
- this.props.siteCertificate.certificateArn = this.ssMManager.readStringParameterFromRegion(`${this.id}-certificate-parameter`, this, this.props.siteCertificate.certificateSsmName, this.props.siteCertificate.certificateRegion);
138
- }
139
- this.siteCertificate = this.acmManager.resolveCertificate(`${this.id}-certificate`, this, this.props.siteCertificate);
140
- }
141
- /**
142
- * @summary Method to resolve secrets from SecretsManager
143
- * - To be implemented in the overriding method in the implementation class
144
- * @protected
145
- */
146
- resolveSiteSecrets() { }
147
- /**
148
- * @summary Method to resolve site domain names
149
- * @protected
150
- */
151
- resolveSiteDomainNames() {
152
- /* the internal domain name used by ELB */
153
- this.siteInternalDomainName = this.isProductionStage()
154
- ? `${this.props.siteSubDomain}-internal.${this.fullyQualifiedDomainName}`
155
- : `${this.props.siteSubDomain}-internal-${this.props.stage}.${this.fullyQualifiedDomainName}`;
156
- /* the external domain name exposed to CloudFront */
157
- this.siteExternalDomainName = this.isProductionStage()
158
- ? `${this.props.siteSubDomain}.${this.fullyQualifiedDomainName}`
159
- : `${this.props.siteSubDomain}-${this.props.stage}.${this.fullyQualifiedDomainName}`;
160
- this.siteDomainNames = [this.siteExternalDomainName];
161
- }
162
- /**
163
- * Create VPC
164
- * @protected
165
- */
166
- createVpc() {
167
- this.siteVpc = this.vpcManager.createCommonVpc(this, this.props.siteVpc, this.props.siteVpc.vpcName);
168
- }
169
- /**
170
- * @summary Method to create iam policy for ECS Task
171
- * @protected
172
- */
173
- createEcsPolicy() {
174
- this.siteEcsPolicy = new iam.PolicyDocument({
175
- statements: [this.iamManager.statementForReadSecrets(this)],
176
- });
177
- }
178
- /**
179
- * @summary Method to create iam role for ECS Task
180
- * @protected
181
- */
182
- createEcsRole() {
183
- this.siteEcsRole = this.iamManager.createRoleForEcsExecution(`${this.id}-ecs-role`, this, this.siteEcsPolicy);
184
- }
185
- /**
186
- * @summary Method to create environment variables used by ECS task
187
- * @protected
188
- */
189
- createEcsEnvironment() {
190
- this.siteEcsEnvironment = {
191
- NODE_ENV: this.props.nodeEnv,
192
- LOG_LEVEL: this.props.logLevel,
193
- TZ: this.props.timezone,
194
- };
195
- }
196
- /**
197
- * Method to create an ECS cluster
198
- * @protected
199
- */
200
- createEcsCluster() {
201
- this.siteEcsCluster = this.ecsManager.createEcsCluster(`${this.id}-cluster`, this, this.props.siteCluster, this.siteVpc);
202
- }
203
- /**
204
- * Method to create log group used by ECS task
205
- * @protected
206
- */
207
- createEcsLogGroup() {
208
- this.siteEcsLogGroup = this.logManager.createLogGroup(`${this.id}-ecs-log-group`, this, this.props.siteLog);
209
- }
210
- /**
211
- * Method to create docker build arguments for ECS Image step
212
- * @protected
213
- */
214
- createEcsBuildArgs() {
215
- this.siteEcsBuildArgs = {};
216
- }
217
- /**
218
- * Method to create container image for ECS task
219
- * @protected
220
- */
221
- createEcsContainerImage() {
222
- this.siteEcsContainerImage = ecs.ContainerImage.fromAsset(this.props.siteEcsContainerImagePath, {
223
- buildArgs: this.siteEcsBuildArgs,
224
- });
225
- }
226
- /**
227
- * Method to create Application Loadbalanced ECS Fargate Service
228
- * @protected
229
- */
230
- createEcsService() {
231
- const fargateService = new ecsPatterns.ApplicationLoadBalancedFargateService(this, `${this.id}-ecs-service`, {
232
- cluster: this.siteEcsCluster,
233
- desiredCount: this.props.siteTask.desiredCount,
234
- enableECSManagedTags: true,
235
- serviceName: `${this.id}-${this.props.stage}`,
236
- cpu: this.props.siteTask.cpu,
237
- loadBalancerName: `${this.id}-${this.props.stage}`,
238
- domainName: this.siteInternalDomainName,
239
- domainZone: this.siteHostedZone,
240
- listenerPort: this.props.siteTask.listenerPort,
241
- memoryLimitMiB: this.props.siteTask.memoryLimitMiB,
242
- healthCheckGracePeriod: cdk.Duration.seconds(60),
243
- assignPublicIp: true,
244
- taskImageOptions: {
245
- enableLogging: true,
246
- logDriver: ecs.LogDriver.awsLogs({
247
- logGroup: this.siteEcsLogGroup,
248
- streamPrefix: `${this.id}-${this.props.stage}/ecs`,
249
- }),
250
- image: this.siteEcsContainerImage,
251
- executionRole: this.siteEcsRole,
252
- taskRole: this.siteEcsRole,
253
- containerPort: this.props.siteTask.taskImageOptions?.containerPort,
254
- environment: this.siteEcsEnvironment,
255
- secrets: this.siteSecrets,
256
- },
257
- });
258
- if (this.props.siteHealthCheck) {
259
- fargateService.targetGroup.configureHealthCheck({
260
- enabled: this.props.siteHealthCheck.enabled ?? true,
261
- path: this.props.siteHealthCheck.path ?? '/',
262
- port: this.props.siteHealthCheck.port,
263
- interval: cdk.Duration.seconds(this.props.siteHealthCheck.intervalInSecs),
264
- timeout: cdk.Duration.seconds(this.props.siteHealthCheck.timeoutInSecs),
265
- healthyThresholdCount: this.props.siteHealthCheck.healthyThresholdCount,
266
- unhealthyThresholdCount: this.props.siteHealthCheck.unhealthyThresholdCount,
267
- healthyGrpcCodes: this.props.siteHealthCheck.healthyGrpcCodes,
268
- healthyHttpCodes: this.props.siteHealthCheck.healthyHttpCodes,
269
- protocol: this.props.siteHealthCheck.protocol,
270
- });
271
- }
272
- this.siteEcsService = fargateService.service;
273
- this.siteEcsTaskDefinition = fargateService.taskDefinition;
274
- this.siteEcsListener = fargateService.listener;
275
- this.siteEcsLoadBalancer = fargateService.loadBalancer;
276
- this.siteEcsTargetGroup = fargateService.targetGroup;
277
- }
278
- /**
279
- * Method to create log bucket for site distribution
280
- * @protected
281
- */
282
- createSiteLogBucket() {
283
- this.siteLogBucket = this.s3Manager.createS3Bucket(`${this.id}-site-logs`, this, this.props.siteLogBucket);
284
- }
285
- createSiteOrigin() {
286
- this.siteOrigin = new origins.HttpOrigin(this.siteEcsLoadBalancer.loadBalancerDnsName, {
287
- httpPort: this.props.siteTask.listenerPort,
288
- protocolPolicy: cloudfront.OriginProtocolPolicy.HTTP_ONLY,
289
- });
290
- }
291
- /**
292
- * @summary Method to create a site cloudfront function
293
- * @protected
294
- */
295
- createSiteCloudfrontFunction() {
296
- if (this.props.siteCloudfrontFunctionProps) {
297
- this.siteCloudfrontFunction = this.cloudFrontManager.createCloudfrontFunction(`${this.id}-function`, this, this.props.siteCloudfrontFunctionProps);
298
- }
299
- }
300
- /**
301
- * @summary Method to create a site cloudfront function associations
302
- * @protected
303
- */
304
- resolveSiteFunctionAssociations() {
305
- if (this.props.siteCloudfrontFunctionProps) {
306
- this.siteFunctionAssociations = [
307
- {
308
- function: this.siteCloudfrontFunction,
309
- eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,
310
- },
311
- ];
312
- }
313
- }
314
- /**
315
- * Method to create Site distribution
316
- * @protected
317
- */
318
- createDistribution() {
319
- this.siteDistribution = this.cloudFrontManager.createDistributionWithHttpOrigin(`${this.id}-distribution`, this, this.props.siteDistribution, this.siteOrigin, this.siteDomainNames, this.siteLogBucket, this.siteCertificate, this.siteFunctionAssociations);
320
- }
321
- /**
322
- * Method to create Route53 records for distribution
323
- * @protected
324
- */
325
- createNetworkMappings() {
326
- this.route53Manager.createCloudFrontTargetARecord(`${this.id}-a-record`, this, this.siteDistribution, this.siteHostedZone, this.props.siteRecordName);
327
- }
328
- /**
329
- * Method to invalidation the cloudfront distribution cache after a deployment
330
- * @protected
331
- */
332
- invalidateDistributionCache() {
333
- if (this.props.siteCacheInvalidationDockerFilePath) {
334
- this.cloudFrontManager.invalidateCache(`${this.id}-cache-invalidation`, this, this.props.siteCacheInvalidationDockerFilePath, this.siteDistribution.distributionId);
335
- }
336
- }
337
- }
338
- exports.SiteWithEcsBackend = SiteWithEcsBackend;
339
- //# sourceMappingURL=siteWithEcsBackend.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"siteWithEcsBackend.js","sourceRoot":"","sources":["../../../../src/lib/construct/siteWithEcsBackend.ts"],"names":[],"mappings":"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"}
@@ -1,106 +0,0 @@
1
- import * as certificateManager from 'aws-cdk-lib/aws-certificatemanager';
2
- import * as cloudfront from 'aws-cdk-lib/aws-cloudfront';
3
- import * as origins from 'aws-cdk-lib/aws-cloudfront-origins';
4
- import * as route53 from 'aws-cdk-lib/aws-route53';
5
- import * as s3 from 'aws-cdk-lib/aws-s3';
6
- import { Construct } from 'constructs';
7
- import { CommonConstruct } from '../common';
8
- import { StaticSiteProps } from '../types';
9
- /**
10
- * @stability stable
11
- * @category Constructs
12
- * @summary Provides a construct to create and deploy a s3 hosted static site
13
- *
14
- * @example
15
- * import { StaticSite, StaticSiteProps } '@gradientedge/cdk-utils'
16
- * import { Construct } from 'constructs'
17
- *
18
- * class CustomConstruct extends StaticSite {
19
- * constructor(parent: Construct, id: string, props: StaticSiteProps) {
20
- * super(parent, id, props)
21
- * this.props = props
22
- * this.id = id
23
- * this.initResources()
24
- * }
25
- * }
26
- *
27
- * @mermaid
28
- * graph LR;
29
- * A[StaticSite]-.->|extends|B(CommonConstruct);
30
- * B(CommonConstruct)-->|extends|C(Construct);
31
- * C(Construct)-->|implements|D(IConstruct);
32
- */
33
- export declare class StaticSite extends CommonConstruct {
34
- props: StaticSiteProps;
35
- id: string;
36
- siteHostedZone: route53.IHostedZone;
37
- siteCertificate: certificateManager.ICertificate;
38
- siteARecord: route53.ARecord;
39
- siteARecordAlt: route53.ARecord;
40
- siteBucket: s3.IBucket;
41
- siteOrigin: origins.S3Origin;
42
- siteDistribution: cloudfront.Distribution;
43
- siteLogBucket: s3.IBucket;
44
- siteOriginAccessIdentity: cloudfront.OriginAccessIdentity;
45
- siteCloudfrontFunction: cloudfront.Function;
46
- siteFunctionAssociations: cloudfront.FunctionAssociation[];
47
- /**
48
- * @summary Constructor to initialise the StaticSite Construct
49
- * @param {Construct} parent
50
- * @param {string} id
51
- * @param {StaticSiteProps} props
52
- */
53
- constructor(parent: Construct, id: string, props: StaticSiteProps);
54
- /**
55
- * @summary Initialise and provision resources
56
- * @protected
57
- */
58
- protected initResources(): void;
59
- /**
60
- * @summary Method to resolve a hosted zone based on domain attributes
61
- * @protected
62
- */
63
- protected resolveHostedZone(): void;
64
- /**
65
- * @summary Method to resolve a certificate based on attributes
66
- * @protected
67
- */
68
- protected resolveCertificate(): void;
69
- /**
70
- * @summary Method to create a site log bucket
71
- * @protected
72
- */
73
- protected createSiteLogBucket(): void;
74
- /**
75
- * @summary Method to create a site bucket
76
- * @protected
77
- */
78
- protected createSiteBucket(): void;
79
- protected createSiteOrigin(): void;
80
- /**
81
- * @summary Method to create a site cloudfront function
82
- * @protected
83
- */
84
- protected createSiteCloudfrontFunction(): void;
85
- /**
86
- * @summary Method to create a site cloudfront function associations
87
- * @protected
88
- */
89
- protected resolveSiteFunctionAssociations(): void;
90
- /**
91
- * @summary Method to create a site cloudfront distribution
92
- * @protected
93
- */
94
- protected createSiteDistribution(): void;
95
- /**
96
- * @summary Method to create route53 records for static site
97
- * @protected
98
- */
99
- protected createSiteRouteAssets(): void;
100
- /**
101
- * @summary Method to deploy the static assets into s3 bucket for static site
102
- * @protected
103
- */
104
- protected deploySite(): void;
105
- }
106
- //# sourceMappingURL=staticSite.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"staticSite.d.ts","sourceRoot":"","sources":["../../../../src/lib/construct/staticSite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,kBAAkB,MAAM,oCAAoC,CAAA;AACxE,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,OAAO,MAAM,oCAAoC,CAAA;AAC7D,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAA;AAClD,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE1C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,UAAW,SAAQ,eAAe;IAE7C,KAAK,EAAE,eAAe,CAAA;IACtB,EAAE,EAAE,MAAM,CAAA;IAGV,cAAc,EAAE,OAAO,CAAC,WAAW,CAAA;IACnC,eAAe,EAAE,kBAAkB,CAAC,YAAY,CAAA;IAChD,WAAW,EAAE,OAAO,CAAC,OAAO,CAAA;IAC5B,cAAc,EAAE,OAAO,CAAC,OAAO,CAAA;IAC/B,UAAU,EAAE,EAAE,CAAC,OAAO,CAAA;IACtB,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAA;IAC5B,gBAAgB,EAAE,UAAU,CAAC,YAAY,CAAA;IACzC,aAAa,EAAE,EAAE,CAAC,OAAO,CAAA;IACzB,wBAAwB,EAAE,UAAU,CAAC,oBAAoB,CAAA;IACzD,sBAAsB,EAAE,UAAU,CAAC,QAAQ,CAAA;IAC3C,wBAAwB,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAA;IAE1D;;;;;OAKG;gBACS,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe;IAOjE;;;OAGG;IACH,SAAS,CAAC,aAAa;IAavB;;;OAGG;IACH,SAAS,CAAC,iBAAiB;IAQ3B;;;OAGG;IACH,SAAS,CAAC,kBAAkB;IAoB5B;;;OAGG;IACH,SAAS,CAAC,mBAAmB;IAI7B;;;OAGG;IACH,SAAS,CAAC,gBAAgB;IAI1B,SAAS,CAAC,gBAAgB;IAI1B;;;OAGG;IACH,SAAS,CAAC,4BAA4B;IAUtC;;;OAGG;IACH,SAAS,CAAC,+BAA+B;IAWzC;;;OAGG;IACH,SAAS,CAAC,sBAAsB;IAiBhC;;;OAGG;IACH,SAAS,CAAC,qBAAqB;IAoB/B;;;OAGG;IACH,SAAS,CAAC,UAAU;CAWrB"}
@@ -1,180 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.StaticSite = void 0;
23
- const cloudfront = __importStar(require("aws-cdk-lib/aws-cloudfront"));
24
- const origins = __importStar(require("aws-cdk-lib/aws-cloudfront-origins"));
25
- const common_1 = require("../common");
26
- /**
27
- * @stability stable
28
- * @category Constructs
29
- * @summary Provides a construct to create and deploy a s3 hosted static site
30
- *
31
- * @example
32
- * import { StaticSite, StaticSiteProps } '@gradientedge/cdk-utils'
33
- * import { Construct } from 'constructs'
34
- *
35
- * class CustomConstruct extends StaticSite {
36
- * constructor(parent: Construct, id: string, props: StaticSiteProps) {
37
- * super(parent, id, props)
38
- * this.props = props
39
- * this.id = id
40
- * this.initResources()
41
- * }
42
- * }
43
- *
44
- * @mermaid
45
- * graph LR;
46
- * A[StaticSite]-.->|extends|B(CommonConstruct);
47
- * B(CommonConstruct)-->|extends|C(Construct);
48
- * C(Construct)-->|implements|D(IConstruct);
49
- */
50
- class StaticSite extends common_1.CommonConstruct {
51
- /* static site properties */
52
- props;
53
- id;
54
- /* static site resources */
55
- siteHostedZone;
56
- siteCertificate;
57
- siteARecord;
58
- siteARecordAlt;
59
- siteBucket;
60
- siteOrigin;
61
- siteDistribution;
62
- siteLogBucket;
63
- siteOriginAccessIdentity;
64
- siteCloudfrontFunction;
65
- siteFunctionAssociations;
66
- /**
67
- * @summary Constructor to initialise the StaticSite Construct
68
- * @param {Construct} parent
69
- * @param {string} id
70
- * @param {StaticSiteProps} props
71
- */
72
- constructor(parent, id, props) {
73
- super(parent, id, props);
74
- this.props = props;
75
- this.id = id;
76
- }
77
- /**
78
- * @summary Initialise and provision resources
79
- * @protected
80
- */
81
- initResources() {
82
- this.resolveHostedZone();
83
- this.resolveCertificate();
84
- this.createSiteLogBucket();
85
- this.createSiteBucket();
86
- this.createSiteOrigin();
87
- this.createSiteCloudfrontFunction();
88
- this.resolveSiteFunctionAssociations();
89
- this.createSiteDistribution();
90
- this.createSiteRouteAssets();
91
- this.deploySite();
92
- }
93
- /**
94
- * @summary Method to resolve a hosted zone based on domain attributes
95
- * @protected
96
- */
97
- resolveHostedZone() {
98
- this.siteHostedZone = this.route53Manager.withHostedZoneFromFullyQualifiedDomainName(`${this.id}-hosted-zone`, this, this.props.useExistingHostedZone);
99
- }
100
- /**
101
- * @summary Method to resolve a certificate based on attributes
102
- * @protected
103
- */
104
- resolveCertificate() {
105
- if (this.props.siteCertificate.useExistingCertificate &&
106
- this.props.siteCertificate.certificateSsmName &&
107
- this.props.siteCertificate.certificateRegion) {
108
- this.props.siteCertificate.certificateArn = this.ssMManager.readStringParameterFromRegion(`${this.id}-certificate-param`, this, this.props.siteCertificate.certificateSsmName, this.props.siteCertificate.certificateRegion);
109
- }
110
- this.siteCertificate = this.acmManager.resolveCertificate(`${this.id}-certificate`, this, this.props.siteCertificate);
111
- }
112
- /**
113
- * @summary Method to create a site log bucket
114
- * @protected
115
- */
116
- createSiteLogBucket() {
117
- this.siteLogBucket = this.s3Manager.createS3Bucket(`${this.id}-site-logs`, this, this.props.siteLogBucket);
118
- }
119
- /**
120
- * @summary Method to create a site bucket
121
- * @protected
122
- */
123
- createSiteBucket() {
124
- this.siteBucket = this.s3Manager.createS3Bucket(`${this.id}-site`, this, this.props.siteBucket);
125
- }
126
- createSiteOrigin() {
127
- this.siteOrigin = new origins.S3Origin(this.siteBucket);
128
- }
129
- /**
130
- * @summary Method to create a site cloudfront function
131
- * @protected
132
- */
133
- createSiteCloudfrontFunction() {
134
- if (this.props.siteCloudfrontFunctionProps) {
135
- this.siteCloudfrontFunction = this.cloudFrontManager.createCloudfrontFunction(`${this.id}-function`, this, this.props.siteCloudfrontFunctionProps);
136
- }
137
- }
138
- /**
139
- * @summary Method to create a site cloudfront function associations
140
- * @protected
141
- */
142
- resolveSiteFunctionAssociations() {
143
- if (this.props.siteCloudfrontFunctionProps) {
144
- this.siteFunctionAssociations = [
145
- {
146
- function: this.siteCloudfrontFunction,
147
- eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,
148
- },
149
- ];
150
- }
151
- }
152
- /**
153
- * @summary Method to create a site cloudfront distribution
154
- * @protected
155
- */
156
- createSiteDistribution() {
157
- if (!this.props.siteDistribution)
158
- throw 'SiteDistribution props undefined';
159
- this.siteDistribution = this.cloudFrontManager.createDistributionWithS3Origin(`${this.id}-distribution`, this, this.props.siteDistribution, this.siteOrigin, this.siteBucket, this.siteLogBucket, this.siteOriginAccessIdentity, this.siteCertificate, this.props.siteAliases, this.siteFunctionAssociations);
160
- }
161
- /**
162
- * @summary Method to create route53 records for static site
163
- * @protected
164
- */
165
- createSiteRouteAssets() {
166
- this.siteARecord = this.route53Manager.createCloudFrontTargetARecord(`${this.id}-domain-a-record`, this, this.siteDistribution, this.siteHostedZone, this.props.siteRecordName);
167
- if (!this.isProductionStage() && this.props.siteCreateAltARecord) {
168
- this.siteARecordAlt = this.route53Manager.createCloudFrontTargetARecordV2(`${this.id}-domain-a-record-alt`, this, this.siteDistribution, this.siteHostedZone, this.props.siteRecordName);
169
- }
170
- }
171
- /**
172
- * @summary Method to deploy the static assets into s3 bucket for static site
173
- * @protected
174
- */
175
- deploySite() {
176
- this.s3Manager.doBucketDeployment(`${this.id}-deployment`, this, this.siteBucket, this.siteDistribution, [this.props.siteSource], '', true);
177
- }
178
- }
179
- exports.StaticSite = StaticSite;
180
- //# sourceMappingURL=staticSite.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"staticSite.js","sourceRoot":"","sources":["../../../../src/lib/construct/staticSite.ts"],"names":[],"mappings":"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"}