@gradientedge/cdk-utils 4.4.0 → 4.4.4

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 (402) hide show
  1. package/README.md +2 -6
  2. package/api-docs/AcmManager.html +8 -5
  3. package/api-docs/AcmProps.html +7 -4
  4. package/api-docs/AlarmProps.html +7 -4
  5. package/api-docs/AlarmStatusWidgetProps.html +7 -4
  6. package/api-docs/ApiDestinationEvent.html +7 -4
  7. package/api-docs/ApiDestinationEventType.html +7 -4
  8. package/api-docs/ApiDestinedLambda.html +7 -4
  9. package/api-docs/ApiDestinedLambdaEnvironment.html +7 -4
  10. package/api-docs/ApiDestinedLambdaType.html +8 -5
  11. package/api-docs/ApiDestinedRestApi.html +7 -4
  12. package/api-docs/ApiDestinedRestApiType.html +8 -5
  13. package/api-docs/ApiManager.html +9 -6
  14. package/api-docs/ApiToEventBridgeTarget.html +22 -19
  15. package/api-docs/ApiToEventBridgeTarget.jpg +0 -0
  16. package/api-docs/ApiToEventBridgeTargetEventProps.html +7 -4
  17. package/api-docs/ApiToEventBridgeTargetLambdaProps.html +7 -4
  18. package/api-docs/ApiToEventBridgeTargetProps.html +7 -4
  19. package/api-docs/ApiToEventBridgeTargetRestApiProps.html +238 -0
  20. package/api-docs/AppConfigManager.html +11 -8
  21. package/api-docs/AppConfigProps.html +6 -3
  22. package/api-docs/CloudFrontManager.html +13 -10
  23. package/api-docs/CloudFrontProps.html +7 -4
  24. package/api-docs/CloudTrailManager.html +8 -5
  25. package/api-docs/CloudTrailProps.html +7 -4
  26. package/api-docs/CloudWatchManager.html +20 -17
  27. package/api-docs/CloudfrontFunctionProps.html +7 -4
  28. package/api-docs/CodeBuildManager.html +9 -6
  29. package/api-docs/CommonConstruct.html +17 -14
  30. package/api-docs/CommonStack.html +11 -8
  31. package/api-docs/CommonStackProps.html +7 -4
  32. package/api-docs/DashboardProps.html +7 -4
  33. package/api-docs/DistributionProps.html +7 -4
  34. package/api-docs/DynamodbManager.html +8 -5
  35. package/api-docs/EcrManager.html +8 -5
  36. package/api-docs/EcsClusterProps.html +7 -4
  37. package/api-docs/EcsManager.html +9 -6
  38. package/api-docs/EcsTaskProps.html +7 -4
  39. package/api-docs/EksClusterProps.html +7 -4
  40. package/api-docs/EksManager.html +8 -5
  41. package/api-docs/EventBusProps.html +7 -4
  42. package/api-docs/EventManager.html +11 -8
  43. package/api-docs/EventRuleProps.html +7 -4
  44. package/api-docs/GraphQLApiLambda.html +20 -17
  45. package/api-docs/GraphQlApiLambdaEnvironment.html +7 -4
  46. package/api-docs/GraphQlApiLambdaProps.html +7 -4
  47. package/api-docs/GraphWidgetProps.html +7 -4
  48. package/api-docs/HealthCheck.html +7 -4
  49. package/api-docs/IamManager.html +30 -27
  50. package/api-docs/LambdaEdgeProps.html +7 -4
  51. package/api-docs/LambdaEnvironment.html +7 -4
  52. package/api-docs/LambdaManager.html +12 -9
  53. package/api-docs/LambdaProps.html +7 -4
  54. package/api-docs/LifecycleRule.html +238 -0
  55. package/api-docs/LogManager.html +10 -7
  56. package/api-docs/LogProps.html +7 -4
  57. package/api-docs/LogQueryWidgetProps.html +7 -4
  58. package/api-docs/MetricFilterProps.html +7 -4
  59. package/api-docs/MetricProps.html +7 -4
  60. package/api-docs/NumericWidgetProps.html +7 -4
  61. package/api-docs/Route53Manager.html +12 -9
  62. package/api-docs/Route53Props.html +7 -4
  63. package/api-docs/RuleProps.html +7 -4
  64. package/api-docs/S3BucketProps.html +7 -4
  65. package/api-docs/S3Manager.html +13 -10
  66. package/api-docs/SSMParameterReader.html +8 -5
  67. package/api-docs/SSMParameterReaderProps.html +7 -4
  68. package/api-docs/SecretsManager.html +12 -9
  69. package/api-docs/SiteWithEcsBackend.html +27 -24
  70. package/api-docs/SiteWithEcsBackendProps.html +7 -4
  71. package/api-docs/SnsManager.html +9 -6
  72. package/api-docs/SsmManager.html +10 -7
  73. package/api-docs/StaticSite.html +17 -14
  74. package/api-docs/StaticSiteProps.html +7 -4
  75. package/api-docs/SubscriptionProps.html +7 -4
  76. package/api-docs/TableProps.html +7 -4
  77. package/api-docs/TextWidgetProps.html +7 -4
  78. package/api-docs/VpcManager.html +64 -8
  79. package/api-docs/WafIPSetProps.html +7 -4
  80. package/api-docs/WafManager.html +9 -6
  81. package/api-docs/WafWebACLProps.html +7 -4
  82. package/api-docs/common_construct.ts.html +8 -4
  83. package/api-docs/common_stack.ts.html +8 -4
  84. package/api-docs/construct_api-to-eventbridge-target_api-destination-event.ts.html +8 -4
  85. package/api-docs/construct_api-to-eventbridge-target_api-destined-lambda.ts.html +8 -4
  86. package/api-docs/construct_api-to-eventbridge-target_api-destined-rest-api.ts.html +8 -4
  87. package/api-docs/construct_api-to-eventbridge-target_main.ts.html +8 -4
  88. package/api-docs/construct_graphql-api-lambda_main.ts.html +8 -4
  89. package/api-docs/construct_site-with-ecs-backend_main.ts.html +9 -5
  90. package/api-docs/construct_static-site_main.ts.html +8 -4
  91. package/api-docs/global.html +16 -13
  92. package/api-docs/index.html +8 -7
  93. package/api-docs/logo.png +0 -0
  94. package/api-docs/manager_aws_acm-manager.ts.html +8 -4
  95. package/api-docs/manager_aws_api-manager.ts.html +8 -4
  96. package/api-docs/manager_aws_app-config-manager.ts.html +10 -5
  97. package/api-docs/manager_aws_cloudfront-manager.ts.html +8 -4
  98. package/api-docs/manager_aws_cloudtrail-manager.ts.html +8 -4
  99. package/api-docs/manager_aws_cloudwatch-manager.ts.html +10 -5
  100. package/api-docs/manager_aws_codebuild-manager.ts.html +8 -4
  101. package/api-docs/manager_aws_dynamodb-manager.ts.html +8 -4
  102. package/api-docs/manager_aws_ecr-manager.ts.html +8 -4
  103. package/api-docs/manager_aws_ecs-manager.ts.html +8 -4
  104. package/api-docs/manager_aws_eks-manager.ts.html +8 -4
  105. package/api-docs/manager_aws_event-manager.ts.html +8 -4
  106. package/api-docs/manager_aws_iam-manager.ts.html +8 -4
  107. package/api-docs/manager_aws_lambda-manager.ts.html +8 -4
  108. package/api-docs/manager_aws_log-manager.ts.html +8 -4
  109. package/api-docs/manager_aws_route53-manager.ts.html +8 -4
  110. package/api-docs/manager_aws_s3-manager.ts.html +8 -4
  111. package/api-docs/manager_aws_secrets-manager.ts.html +8 -4
  112. package/api-docs/manager_aws_sns-manager.ts.html +8 -4
  113. package/api-docs/manager_aws_ssm-manager.ts.html +10 -5
  114. package/api-docs/manager_aws_vpc-manager.ts.html +13 -7
  115. package/api-docs/manager_aws_waf-manager.ts.html +8 -4
  116. package/api-docs/styles.css +113 -0
  117. package/api-docs/tutorial-Architecture.html +5 -1
  118. package/api-docs/tutorial-Build.html +5 -1
  119. package/api-docs/tutorial-CI-CD.html +5 -1
  120. package/api-docs/tutorial-Development.html +5 -1
  121. package/api-docs/types_aws_index.ts.html +104 -50
  122. package/api-docs/utils_aws_index.ts.html +7 -4
  123. package/api-docs/utils_index.ts.html +14 -12
  124. package/app/api-destined-function/package.json +0 -1
  125. package/img/ApiToEventBridgeTarget.jpg +0 -0
  126. package/img/logo.png +0 -0
  127. package/lerna.json +6 -0
  128. package/package.json +14 -14
  129. package/src/lib/common/construct.ts +2 -1
  130. package/src/lib/common/stack.ts +2 -1
  131. package/src/lib/construct/api-to-eventbridge-target/api-destination-event.ts +2 -1
  132. package/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.ts +2 -1
  133. package/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.ts +2 -1
  134. package/src/lib/construct/api-to-eventbridge-target/main.ts +2 -1
  135. package/src/lib/construct/graphql-api-lambda/main.ts +2 -1
  136. package/src/lib/construct/site-with-ecs-backend/main.ts +3 -2
  137. package/src/lib/construct/static-site/main.ts +2 -1
  138. package/src/lib/manager/aws/acm-manager.ts +2 -1
  139. package/src/lib/manager/aws/api-manager.ts +2 -1
  140. package/src/lib/manager/aws/app-config-manager.ts +4 -2
  141. package/src/lib/manager/aws/cloudfront-manager.ts +2 -1
  142. package/src/lib/manager/aws/cloudtrail-manager.ts +2 -1
  143. package/src/lib/manager/aws/cloudwatch-manager.ts +4 -2
  144. package/src/lib/manager/aws/codebuild-manager.ts +2 -1
  145. package/src/lib/manager/aws/dynamodb-manager.ts +2 -1
  146. package/src/lib/manager/aws/ecr-manager.ts +2 -1
  147. package/src/lib/manager/aws/ecs-manager.ts +2 -1
  148. package/src/lib/manager/aws/eks-manager.ts +2 -1
  149. package/src/lib/manager/aws/event-manager.ts +2 -1
  150. package/src/lib/manager/aws/iam-manager.ts +2 -1
  151. package/src/lib/manager/aws/lambda-manager.ts +2 -1
  152. package/src/lib/manager/aws/log-manager.ts +2 -1
  153. package/src/lib/manager/aws/route53-manager.ts +2 -1
  154. package/src/lib/manager/aws/s3-manager.ts +2 -1
  155. package/src/lib/manager/aws/secrets-manager.ts +2 -1
  156. package/src/lib/manager/aws/sns-manager.ts +2 -1
  157. package/src/lib/manager/aws/ssm-manager.ts +4 -2
  158. package/src/lib/manager/aws/vpc-manager.ts +7 -4
  159. package/src/lib/manager/aws/waf-manager.ts +2 -1
  160. package/src/lib/types/aws/index.ts +98 -47
  161. package/src/lib/utils/aws/index.ts +1 -1
  162. package/src/lib/utils/index.ts +8 -9
  163. package/theme/styles.css +113 -0
  164. package/app/api-destined-function/node_modules/uuid/dist/bin/uuid +0 -2
  165. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/index.js +0 -9
  166. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/md5.js +0 -215
  167. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/nil.js +0 -1
  168. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/parse.js +0 -35
  169. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/regex.js +0 -1
  170. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/rng.js +0 -19
  171. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/sha1.js +0 -96
  172. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/stringify.js +0 -30
  173. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/v1.js +0 -95
  174. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/v3.js +0 -4
  175. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/v35.js +0 -64
  176. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/v4.js +0 -24
  177. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/v5.js +0 -4
  178. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/validate.js +0 -7
  179. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/version.js +0 -11
  180. package/app/api-destined-function/node_modules/uuid/dist/esm-node/index.js +0 -9
  181. package/app/api-destined-function/node_modules/uuid/dist/esm-node/md5.js +0 -13
  182. package/app/api-destined-function/node_modules/uuid/dist/esm-node/nil.js +0 -1
  183. package/app/api-destined-function/node_modules/uuid/dist/esm-node/parse.js +0 -35
  184. package/app/api-destined-function/node_modules/uuid/dist/esm-node/regex.js +0 -1
  185. package/app/api-destined-function/node_modules/uuid/dist/esm-node/rng.js +0 -12
  186. package/app/api-destined-function/node_modules/uuid/dist/esm-node/sha1.js +0 -13
  187. package/app/api-destined-function/node_modules/uuid/dist/esm-node/stringify.js +0 -29
  188. package/app/api-destined-function/node_modules/uuid/dist/esm-node/v1.js +0 -95
  189. package/app/api-destined-function/node_modules/uuid/dist/esm-node/v3.js +0 -4
  190. package/app/api-destined-function/node_modules/uuid/dist/esm-node/v35.js +0 -64
  191. package/app/api-destined-function/node_modules/uuid/dist/esm-node/v4.js +0 -24
  192. package/app/api-destined-function/node_modules/uuid/dist/esm-node/v5.js +0 -4
  193. package/app/api-destined-function/node_modules/uuid/dist/esm-node/validate.js +0 -7
  194. package/app/api-destined-function/node_modules/uuid/dist/esm-node/version.js +0 -11
  195. package/app/api-destined-function/node_modules/uuid/dist/index.js +0 -79
  196. package/app/api-destined-function/node_modules/uuid/dist/md5-browser.js +0 -223
  197. package/app/api-destined-function/node_modules/uuid/dist/md5.js +0 -23
  198. package/app/api-destined-function/node_modules/uuid/dist/nil.js +0 -8
  199. package/app/api-destined-function/node_modules/uuid/dist/parse.js +0 -45
  200. package/app/api-destined-function/node_modules/uuid/dist/regex.js +0 -8
  201. package/app/api-destined-function/node_modules/uuid/dist/rng-browser.js +0 -26
  202. package/app/api-destined-function/node_modules/uuid/dist/rng.js +0 -24
  203. package/app/api-destined-function/node_modules/uuid/dist/sha1-browser.js +0 -104
  204. package/app/api-destined-function/node_modules/uuid/dist/sha1.js +0 -23
  205. package/app/api-destined-function/node_modules/uuid/dist/stringify.js +0 -39
  206. package/app/api-destined-function/node_modules/uuid/dist/umd/uuid.min.js +0 -1
  207. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidNIL.min.js +0 -1
  208. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidParse.min.js +0 -1
  209. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidStringify.min.js +0 -1
  210. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidValidate.min.js +0 -1
  211. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidVersion.min.js +0 -1
  212. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidv1.min.js +0 -1
  213. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidv3.min.js +0 -1
  214. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidv4.min.js +0 -1
  215. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidv5.min.js +0 -1
  216. package/app/api-destined-function/node_modules/uuid/dist/uuid-bin.js +0 -85
  217. package/app/api-destined-function/node_modules/uuid/dist/v1.js +0 -107
  218. package/app/api-destined-function/node_modules/uuid/dist/v3.js +0 -16
  219. package/app/api-destined-function/node_modules/uuid/dist/v35.js +0 -78
  220. package/app/api-destined-function/node_modules/uuid/dist/v4.js +0 -37
  221. package/app/api-destined-function/node_modules/uuid/dist/v5.js +0 -16
  222. package/app/api-destined-function/node_modules/uuid/dist/validate.js +0 -17
  223. package/app/api-destined-function/node_modules/uuid/dist/version.js +0 -21
  224. package/dist/app/api-destined-function/src/lib/lambda.d.ts +0 -19
  225. package/dist/app/api-destined-function/src/lib/lambda.d.ts.map +0 -1
  226. package/dist/app/api-destined-function/src/lib/lambda.js +0 -34
  227. package/dist/app/api-destined-function/src/lib/lambda.js.map +0 -1
  228. package/dist/index.d.ts +0 -6
  229. package/dist/index.d.ts.map +0 -1
  230. package/dist/index.js.map +0 -1
  231. package/dist/src/lib/common/construct.d.ts +0 -79
  232. package/dist/src/lib/common/construct.d.ts.map +0 -1
  233. package/dist/src/lib/common/construct.js +0 -133
  234. package/dist/src/lib/common/construct.js.map +0 -1
  235. package/dist/src/lib/common/index.d.ts +0 -3
  236. package/dist/src/lib/common/index.d.ts.map +0 -1
  237. package/dist/src/lib/common/index.js +0 -15
  238. package/dist/src/lib/common/index.js.map +0 -1
  239. package/dist/src/lib/common/stack.d.ts +0 -54
  240. package/dist/src/lib/common/stack.d.ts.map +0 -1
  241. package/dist/src/lib/common/stack.js +0 -147
  242. package/dist/src/lib/common/stack.js.map +0 -1
  243. package/dist/src/lib/construct/api-to-eventbridge-target/api-destination-event.d.ts +0 -16
  244. package/dist/src/lib/construct/api-to-eventbridge-target/api-destination-event.d.ts.map +0 -1
  245. package/dist/src/lib/construct/api-to-eventbridge-target/api-destination-event.js +0 -17
  246. package/dist/src/lib/construct/api-to-eventbridge-target/api-destination-event.js.map +0 -1
  247. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.d.ts +0 -19
  248. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.d.ts.map +0 -1
  249. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.js +0 -19
  250. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.js.map +0 -1
  251. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.d.ts +0 -35
  252. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.d.ts.map +0 -1
  253. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.js +0 -29
  254. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.js.map +0 -1
  255. package/dist/src/lib/construct/api-to-eventbridge-target/index.d.ts +0 -5
  256. package/dist/src/lib/construct/api-to-eventbridge-target/index.d.ts.map +0 -1
  257. package/dist/src/lib/construct/api-to-eventbridge-target/index.js +0 -17
  258. package/dist/src/lib/construct/api-to-eventbridge-target/index.js.map +0 -1
  259. package/dist/src/lib/construct/api-to-eventbridge-target/main.d.ts +0 -134
  260. package/dist/src/lib/construct/api-to-eventbridge-target/main.d.ts.map +0 -1
  261. package/dist/src/lib/construct/api-to-eventbridge-target/main.js +0 -487
  262. package/dist/src/lib/construct/api-to-eventbridge-target/main.js.map +0 -1
  263. package/dist/src/lib/construct/graphql-api-lambda/index.d.ts +0 -2
  264. package/dist/src/lib/construct/graphql-api-lambda/index.d.ts.map +0 -1
  265. package/dist/src/lib/construct/graphql-api-lambda/index.js +0 -14
  266. package/dist/src/lib/construct/graphql-api-lambda/index.js.map +0 -1
  267. package/dist/src/lib/construct/graphql-api-lambda/main.d.ts +0 -112
  268. package/dist/src/lib/construct/graphql-api-lambda/main.d.ts.map +0 -1
  269. package/dist/src/lib/construct/graphql-api-lambda/main.js +0 -201
  270. package/dist/src/lib/construct/graphql-api-lambda/main.js.map +0 -1
  271. package/dist/src/lib/construct/index.d.ts +0 -5
  272. package/dist/src/lib/construct/index.d.ts.map +0 -1
  273. package/dist/src/lib/construct/index.js +0 -17
  274. package/dist/src/lib/construct/index.js.map +0 -1
  275. package/dist/src/lib/construct/site-with-ecs-backend/index.d.ts +0 -2
  276. package/dist/src/lib/construct/site-with-ecs-backend/index.d.ts.map +0 -1
  277. package/dist/src/lib/construct/site-with-ecs-backend/index.js +0 -14
  278. package/dist/src/lib/construct/site-with-ecs-backend/index.js.map +0 -1
  279. package/dist/src/lib/construct/site-with-ecs-backend/main.d.ts +0 -167
  280. package/dist/src/lib/construct/site-with-ecs-backend/main.d.ts.map +0 -1
  281. package/dist/src/lib/construct/site-with-ecs-backend/main.js +0 -327
  282. package/dist/src/lib/construct/site-with-ecs-backend/main.js.map +0 -1
  283. package/dist/src/lib/construct/static-site/index.d.ts +0 -2
  284. package/dist/src/lib/construct/static-site/index.d.ts.map +0 -1
  285. package/dist/src/lib/construct/static-site/index.js +0 -14
  286. package/dist/src/lib/construct/static-site/index.js.map +0 -1
  287. package/dist/src/lib/construct/static-site/main.d.ts +0 -94
  288. package/dist/src/lib/construct/static-site/main.d.ts.map +0 -1
  289. package/dist/src/lib/construct/static-site/main.js +0 -168
  290. package/dist/src/lib/construct/static-site/main.js.map +0 -1
  291. package/dist/src/lib/manager/aws/acm-manager.d.ts +0 -46
  292. package/dist/src/lib/manager/aws/acm-manager.d.ts.map +0 -1
  293. package/dist/src/lib/manager/aws/acm-manager.js +0 -90
  294. package/dist/src/lib/manager/aws/acm-manager.js.map +0 -1
  295. package/dist/src/lib/manager/aws/api-manager.d.ts +0 -43
  296. package/dist/src/lib/manager/aws/api-manager.d.ts.map +0 -1
  297. package/dist/src/lib/manager/aws/api-manager.js +0 -111
  298. package/dist/src/lib/manager/aws/api-manager.js.map +0 -1
  299. package/dist/src/lib/manager/aws/app-config-manager.d.ts +0 -64
  300. package/dist/src/lib/manager/aws/app-config-manager.d.ts.map +0 -1
  301. package/dist/src/lib/manager/aws/app-config-manager.js +0 -147
  302. package/dist/src/lib/manager/aws/app-config-manager.js.map +0 -1
  303. package/dist/src/lib/manager/aws/cloudfront-manager.d.ts +0 -112
  304. package/dist/src/lib/manager/aws/cloudfront-manager.d.ts.map +0 -1
  305. package/dist/src/lib/manager/aws/cloudfront-manager.js +0 -282
  306. package/dist/src/lib/manager/aws/cloudfront-manager.js.map +0 -1
  307. package/dist/src/lib/manager/aws/cloudtrail-manager.d.ts +0 -48
  308. package/dist/src/lib/manager/aws/cloudtrail-manager.d.ts.map +0 -1
  309. package/dist/src/lib/manager/aws/cloudtrail-manager.js +0 -99
  310. package/dist/src/lib/manager/aws/cloudtrail-manager.js.map +0 -1
  311. package/dist/src/lib/manager/aws/cloudwatch-manager.d.ts +0 -121
  312. package/dist/src/lib/manager/aws/cloudwatch-manager.d.ts.map +0 -1
  313. package/dist/src/lib/manager/aws/cloudwatch-manager.js +0 -351
  314. package/dist/src/lib/manager/aws/cloudwatch-manager.js.map +0 -1
  315. package/dist/src/lib/manager/aws/codebuild-manager.d.ts +0 -40
  316. package/dist/src/lib/manager/aws/codebuild-manager.d.ts.map +0 -1
  317. package/dist/src/lib/manager/aws/codebuild-manager.js +0 -94
  318. package/dist/src/lib/manager/aws/codebuild-manager.js.map +0 -1
  319. package/dist/src/lib/manager/aws/dynamodb-manager.d.ts +0 -32
  320. package/dist/src/lib/manager/aws/dynamodb-manager.d.ts.map +0 -1
  321. package/dist/src/lib/manager/aws/dynamodb-manager.js +0 -79
  322. package/dist/src/lib/manager/aws/dynamodb-manager.js.map +0 -1
  323. package/dist/src/lib/manager/aws/ecr-manager.d.ts +0 -31
  324. package/dist/src/lib/manager/aws/ecr-manager.d.ts.map +0 -1
  325. package/dist/src/lib/manager/aws/ecr-manager.js +0 -60
  326. package/dist/src/lib/manager/aws/ecr-manager.js.map +0 -1
  327. package/dist/src/lib/manager/aws/ecs-manager.d.ts +0 -48
  328. package/dist/src/lib/manager/aws/ecs-manager.d.ts.map +0 -1
  329. package/dist/src/lib/manager/aws/ecs-manager.js +0 -103
  330. package/dist/src/lib/manager/aws/ecs-manager.js.map +0 -1
  331. package/dist/src/lib/manager/aws/eks-manager.d.ts +0 -36
  332. package/dist/src/lib/manager/aws/eks-manager.d.ts.map +0 -1
  333. package/dist/src/lib/manager/aws/eks-manager.js +0 -109
  334. package/dist/src/lib/manager/aws/eks-manager.js.map +0 -1
  335. package/dist/src/lib/manager/aws/event-manager.d.ts +0 -67
  336. package/dist/src/lib/manager/aws/event-manager.d.ts.map +0 -1
  337. package/dist/src/lib/manager/aws/event-manager.js +0 -162
  338. package/dist/src/lib/manager/aws/event-manager.js.map +0 -1
  339. package/dist/src/lib/manager/aws/iam-manager.d.ts +0 -154
  340. package/dist/src/lib/manager/aws/iam-manager.d.ts.map +0 -1
  341. package/dist/src/lib/manager/aws/iam-manager.js +0 -380
  342. package/dist/src/lib/manager/aws/iam-manager.js.map +0 -1
  343. package/dist/src/lib/manager/aws/index.d.ts +0 -23
  344. package/dist/src/lib/manager/aws/index.d.ts.map +0 -1
  345. package/dist/src/lib/manager/aws/index.js +0 -35
  346. package/dist/src/lib/manager/aws/index.js.map +0 -1
  347. package/dist/src/lib/manager/aws/lambda-manager.d.ts +0 -94
  348. package/dist/src/lib/manager/aws/lambda-manager.d.ts.map +0 -1
  349. package/dist/src/lib/manager/aws/lambda-manager.js +0 -196
  350. package/dist/src/lib/manager/aws/lambda-manager.js.map +0 -1
  351. package/dist/src/lib/manager/aws/log-manager.d.ts +0 -51
  352. package/dist/src/lib/manager/aws/log-manager.d.ts.map +0 -1
  353. package/dist/src/lib/manager/aws/log-manager.js +0 -108
  354. package/dist/src/lib/manager/aws/log-manager.js.map +0 -1
  355. package/dist/src/lib/manager/aws/route53-manager.d.ts +0 -68
  356. package/dist/src/lib/manager/aws/route53-manager.d.ts.map +0 -1
  357. package/dist/src/lib/manager/aws/route53-manager.js +0 -158
  358. package/dist/src/lib/manager/aws/route53-manager.js.map +0 -1
  359. package/dist/src/lib/manager/aws/s3-manager.d.ts +0 -73
  360. package/dist/src/lib/manager/aws/s3-manager.d.ts.map +0 -1
  361. package/dist/src/lib/manager/aws/s3-manager.js +0 -202
  362. package/dist/src/lib/manager/aws/s3-manager.js.map +0 -1
  363. package/dist/src/lib/manager/aws/secrets-manager.d.ts +0 -57
  364. package/dist/src/lib/manager/aws/secrets-manager.d.ts.map +0 -1
  365. package/dist/src/lib/manager/aws/secrets-manager.js +0 -116
  366. package/dist/src/lib/manager/aws/secrets-manager.js.map +0 -1
  367. package/dist/src/lib/manager/aws/sns-manager.d.ts +0 -42
  368. package/dist/src/lib/manager/aws/sns-manager.d.ts.map +0 -1
  369. package/dist/src/lib/manager/aws/sns-manager.js +0 -90
  370. package/dist/src/lib/manager/aws/sns-manager.js.map +0 -1
  371. package/dist/src/lib/manager/aws/ssm-manager.d.ts +0 -59
  372. package/dist/src/lib/manager/aws/ssm-manager.d.ts.map +0 -1
  373. package/dist/src/lib/manager/aws/ssm-manager.js +0 -123
  374. package/dist/src/lib/manager/aws/ssm-manager.js.map +0 -1
  375. package/dist/src/lib/manager/aws/vpc-manager.d.ts +0 -44
  376. package/dist/src/lib/manager/aws/vpc-manager.d.ts.map +0 -1
  377. package/dist/src/lib/manager/aws/vpc-manager.js +0 -92
  378. package/dist/src/lib/manager/aws/vpc-manager.js.map +0 -1
  379. package/dist/src/lib/manager/aws/waf-manager.d.ts +0 -39
  380. package/dist/src/lib/manager/aws/waf-manager.d.ts.map +0 -1
  381. package/dist/src/lib/manager/aws/waf-manager.js +0 -89
  382. package/dist/src/lib/manager/aws/waf-manager.js.map +0 -1
  383. package/dist/src/lib/manager/index.d.ts +0 -2
  384. package/dist/src/lib/manager/index.d.ts.map +0 -1
  385. package/dist/src/lib/manager/index.js +0 -14
  386. package/dist/src/lib/manager/index.js.map +0 -1
  387. package/dist/src/lib/types/aws/index.d.ts +0 -429
  388. package/dist/src/lib/types/aws/index.d.ts.map +0 -1
  389. package/dist/src/lib/types/aws/index.js +0 -3
  390. package/dist/src/lib/types/aws/index.js.map +0 -1
  391. package/dist/src/lib/types/index.d.ts +0 -2
  392. package/dist/src/lib/types/index.d.ts.map +0 -1
  393. package/dist/src/lib/types/index.js +0 -14
  394. package/dist/src/lib/types/index.js.map +0 -1
  395. package/dist/src/lib/utils/aws/index.d.ts +0 -16
  396. package/dist/src/lib/utils/aws/index.d.ts.map +0 -1
  397. package/dist/src/lib/utils/aws/index.js +0 -50
  398. package/dist/src/lib/utils/aws/index.js.map +0 -1
  399. package/dist/src/lib/utils/index.d.ts +0 -64
  400. package/dist/src/lib/utils/index.d.ts.map +0 -1
  401. package/dist/src/lib/utils/index.js +0 -86
  402. package/dist/src/lib/utils/index.js.map +0 -1
@@ -1,158 +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.Route53Manager = void 0;
23
- const route53 = __importStar(require("aws-cdk-lib/aws-route53"));
24
- const route53Targets = __importStar(require("aws-cdk-lib/aws-route53-targets"));
25
- const utils = __importStar(require("../../utils"));
26
- /**
27
- * @stability stable
28
- * @category Networking & Content Delivery
29
- * @classdesc Provides operations on AWS Route53.
30
- * - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
31
- * - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
32
- * @example
33
- * import * as common from '@gradientedge/cdk-utils'
34
- *
35
- * class CustomConstruct extends common.common.CommonConstruct {
36
- * constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
37
- * super(parent, id, props)
38
- * this.props = props
39
- * this.route53Manager.createHostedZone('MyHostedZone', this)
40
- * }
41
- * }
42
- *
43
- * @see [CDK Route53 Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_route53-readme.html}
44
- */
45
- class Route53Manager {
46
- /**
47
- * @summary Method to create a hosted zone
48
- * @param {string} id scoped id of the resource
49
- * @param {common.CommonConstruct} scope scope in which this resource is defined
50
- * @param {types.Route53Props} props
51
- */
52
- createHostedZone(id, scope, props) {
53
- let hostedZone;
54
- if (!props)
55
- throw `Route53 props undefined`;
56
- if (props.useExistingHostedZone) {
57
- hostedZone = route53.HostedZone.fromLookup(scope, `${id}`, {
58
- domainName: scope.props.domainName,
59
- });
60
- }
61
- else {
62
- hostedZone = new route53.HostedZone(scope, `${id}`, {
63
- zoneName: scope.props.domainName,
64
- comment: `Hosted zone for ${scope.props.domainName}`,
65
- });
66
- }
67
- utils.createCfnOutput(`${id}-hostedZoneId`, scope, hostedZone.hostedZoneId);
68
- utils.createCfnOutput(`${id}-hostedZoneArn`, scope, hostedZone.hostedZoneArn);
69
- return hostedZone;
70
- }
71
- /**
72
- * @summary Method to create/lookup a hosted zone
73
- * @param {string} id scoped id of the resource
74
- * @param {common.CommonConstruct} scope scope in which this resource is defined
75
- * @param useExistingHostedZone Flag to indicate whether to lookup vs create new hosted zone
76
- */
77
- withHostedZoneFromFullyQualifiedDomainName(id, scope, useExistingHostedZone) {
78
- let hostedZone;
79
- if (useExistingHostedZone) {
80
- hostedZone = route53.HostedZone.fromLookup(scope, `${id}`, {
81
- domainName: scope.fullyQualifiedDomainName,
82
- });
83
- }
84
- else {
85
- hostedZone = new route53.HostedZone(scope, `${id}`, {
86
- zoneName: scope.fullyQualifiedDomainName,
87
- comment: `Hosted zone for ${scope.fullyQualifiedDomainName}`,
88
- });
89
- }
90
- utils.createCfnOutput(`${id}-hostedZoneId`, scope, hostedZone.hostedZoneId);
91
- utils.createCfnOutput(`${id}-hostedZoneArn`, scope, hostedZone.hostedZoneArn);
92
- return hostedZone;
93
- }
94
- /**
95
- * @summary Method to create a-record for cloudfront target
96
- * @param {string} id scoped id of the resource
97
- * @param {common.CommonConstruct} scope scope in which this resource is defined
98
- * @param {cloudfront.IDistribution} distribution
99
- * @param {route53.IHostedZone} hostedZone
100
- * @param {string} recordName
101
- */
102
- createCloudFrontTargetARecord(id, scope, distribution, hostedZone, recordName) {
103
- if (!distribution)
104
- throw `Distribution undefined`;
105
- if (!hostedZone)
106
- throw `HostedZone undefined`;
107
- const aRecord = new route53.ARecord(scope, `${id}`, {
108
- recordName: recordName && scope.isProductionStage() ? `${recordName}` : `${recordName}-${scope.props.stage}`,
109
- target: route53.RecordTarget.fromAlias(new route53Targets.CloudFrontTarget(distribution)),
110
- zone: hostedZone,
111
- });
112
- utils.createCfnOutput(`${id}-aRecordDomainName`, scope, aRecord.domainName);
113
- return aRecord;
114
- }
115
- /**
116
- * @summary Method to create a-record for cloudfront target
117
- * @param {string} id scoped id of the resource
118
- * @param {common.CommonConstruct} scope scope in which this resource is defined
119
- * @param {cloudfront.IDistribution} distribution
120
- * @param {route53.IHostedZone} hostedZone
121
- * @param {string} recordName
122
- */
123
- createCloudFrontTargetARecordV2(id, scope, distribution, hostedZone, recordName) {
124
- if (!distribution)
125
- throw `Distribution undefined`;
126
- if (!hostedZone)
127
- throw `HostedZone undefined`;
128
- const aRecord = new route53.ARecord(scope, `${id}`, {
129
- recordName: recordName,
130
- target: route53.RecordTarget.fromAlias(new route53Targets.CloudFrontTarget(distribution)),
131
- zone: hostedZone,
132
- });
133
- utils.createCfnOutput(`${id}-aRecordDomainName`, scope, aRecord.domainName);
134
- return aRecord;
135
- }
136
- /**
137
- * @summary Method to create a-record for restApi gateway target
138
- * @param {string} id scoped id of the resource
139
- * @param {common.CommonConstruct} scope scope in which this resource is defined
140
- * @param recordName
141
- * @param apiDomain
142
- * @param hostedZone
143
- */
144
- createApiGatewayARecord(id, scope, recordName, apiDomain, hostedZone) {
145
- let apiRecordName = '';
146
- if (recordName && recordName !== '')
147
- apiRecordName = scope.isProductionStage() ? `${recordName}` : `${recordName}-${scope.props.stage}`;
148
- const apiARecord = new route53.ARecord(scope, `${id}`, {
149
- recordName: apiRecordName,
150
- target: route53.RecordTarget.fromAlias(new route53Targets.ApiGatewayDomain(apiDomain)),
151
- zone: hostedZone,
152
- });
153
- utils.createCfnOutput(`${id}-a-record-domain-name`, scope, apiARecord.domainName);
154
- return apiARecord;
155
- }
156
- }
157
- exports.Route53Manager = Route53Manager;
158
- //# sourceMappingURL=route53-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"route53-manager.js","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/route53-manager.ts"],"names":[],"mappings":"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"}
@@ -1,73 +0,0 @@
1
- import * as cdk from 'aws-cdk-lib';
2
- import * as cloudfront from 'aws-cdk-lib/aws-cloudfront';
3
- import * as s3 from 'aws-cdk-lib/aws-s3';
4
- import * as s3deploy from 'aws-cdk-lib/aws-s3-deployment';
5
- import * as common from '../../common';
6
- import * as types from '../../types';
7
- /**
8
- * @stability stable
9
- * @category Storage
10
- * @classdesc Provides operations on AWS S3.
11
- * - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
12
- * - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
13
- * @example
14
- * import * as common from '@gradientedge/cdk-utils'
15
- *
16
- * class CustomConstruct extends common.common.CommonConstruct {
17
- * constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
18
- * super(parent, id, props)
19
- * this.props = props
20
- * this.s3Manager.createS3Bucket('MyBucket', this)
21
- * }
22
- * }
23
- *
24
- * @see [CDK S3 Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_s3-readme.html}
25
- */
26
- export declare class S3Manager {
27
- /**
28
- * @summary Method to determine S3 Bucket lifecycle properties
29
- * @param {types.S3BucketProps} props bucket properties
30
- * @private
31
- */
32
- protected determineBucketLifecycleRules(props: types.S3BucketProps): types.LifecycleRule[] | undefined;
33
- /**
34
- * @summary Method to determine the bucket name
35
- * @param {common.CommonConstruct} scope scope in which this resource is defined
36
- * @param {types.S3BucketProps} props bucket properties
37
- * @private
38
- */
39
- protected static determineBucketName(scope: common.CommonConstruct, props: types.S3BucketProps): string;
40
- /**
41
- * @summary Method to determine the log bucket name
42
- * @param {common.CommonConstruct} scope scope in which this resource is defined
43
- * @param {types.S3BucketProps} props bucket properties
44
- * @private
45
- */
46
- protected static determineLogBucketName(scope: common.CommonConstruct, props: types.S3BucketProps): string;
47
- /**
48
- * @summary Method to create a s3 bucket
49
- * @param {string} id scoped id of the resource
50
- * @param {common.CommonConstruct} scope scope in which this resource is defined
51
- * @param {types.S3BucketProps} props bucket properties
52
- */
53
- createS3Bucket(id: string, scope: common.CommonConstruct, props: types.S3BucketProps): cdk.aws_s3.IBucket;
54
- /**
55
- * @summary Method to create an iam bucket policy for cloudtrail
56
- * @param {string} id scoped id of the resource
57
- * @param {common.CommonConstruct} scope scope in which this resource is defined
58
- * @param {s3.IBucket} bucket
59
- */
60
- createBucketPolicyForCloudTrail(id: string, scope: common.CommonConstruct, bucket: s3.IBucket): cdk.aws_s3.CfnBucketPolicy;
61
- /**
62
- * @summary Method to create a s3 bucket deployment
63
- * @param {string} id scoped id of the resource
64
- * @param {common.CommonConstruct} scope scope in which this resource is defined
65
- * @param {s3.IBucket} siteBucket
66
- * @param {cloudfront.IDistribution} distribution
67
- * @param {s3deploy.ISource[]} sources
68
- * @param {string} prefix
69
- * @param {boolean} prune
70
- */
71
- doBucketDeployment(id: string, scope: common.CommonConstruct, siteBucket: s3.IBucket, distribution: cloudfront.IDistribution, sources: s3deploy.ISource[], prefix: string, prune?: boolean): void;
72
- }
73
- //# sourceMappingURL=s3-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"s3-manager.d.ts","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/s3-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAA;AAClC,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAA;AAExD,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAA;AACzD,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AAGpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,SAAS;IACpB;;;;OAIG;IACH,SAAS,CAAC,6BAA6B,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa;IAyBlE;;;;;OAKG;IACH,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,aAAa;IAM9F;;;;;OAKG;IACH,SAAS,CAAC,MAAM,CAAC,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,aAAa;IAMjG;;;;;OAKG;IACI,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,aAAa;IAkD3F;;;;;OAKG;IACI,+BAA+B,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO;IA0BpG;;;;;;;;;OASG;IACI,kBAAkB,CACvB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,CAAC,eAAe,EAC7B,UAAU,EAAE,EAAE,CAAC,OAAO,EACtB,YAAY,EAAE,UAAU,CAAC,aAAa,EACtC,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,EAC3B,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,OAAO;CAalB"}
@@ -1,202 +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.S3Manager = void 0;
23
- const cdk = __importStar(require("aws-cdk-lib"));
24
- const iam = __importStar(require("aws-cdk-lib/aws-iam"));
25
- const s3 = __importStar(require("aws-cdk-lib/aws-s3"));
26
- const s3deploy = __importStar(require("aws-cdk-lib/aws-s3-deployment"));
27
- const utils = __importStar(require("../../utils"));
28
- /**
29
- * @stability stable
30
- * @category Storage
31
- * @classdesc Provides operations on AWS S3.
32
- * - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
33
- * - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
34
- * @example
35
- * import * as common from '@gradientedge/cdk-utils'
36
- *
37
- * class CustomConstruct extends common.common.CommonConstruct {
38
- * constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
39
- * super(parent, id, props)
40
- * this.props = props
41
- * this.s3Manager.createS3Bucket('MyBucket', this)
42
- * }
43
- * }
44
- *
45
- * @see [CDK S3 Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_s3-readme.html}
46
- */
47
- class S3Manager {
48
- /**
49
- * @summary Method to determine S3 Bucket lifecycle properties
50
- * @param {types.S3BucketProps} props bucket properties
51
- * @private
52
- */
53
- determineBucketLifecycleRules(props) {
54
- if (!props.lifecycleRules)
55
- return undefined;
56
- const bucketLifecycleRules = [];
57
- props.lifecycleRules.forEach(lifecycleRule => {
58
- bucketLifecycleRules.push({
59
- id: lifecycleRule.id,
60
- enabled: lifecycleRule.enabled,
61
- abortIncompleteMultipartUploadAfter: lifecycleRule.abortIncompleteMultipartUploadAfter,
62
- expirationDate: lifecycleRule.expirationDate,
63
- expiration: lifecycleRule.expirationInDays ? cdk.Duration.days(lifecycleRule.expirationInDays) : undefined,
64
- noncurrentVersionExpiration: lifecycleRule.noncurrentVersionExpirationInDays
65
- ? cdk.Duration.days(lifecycleRule.noncurrentVersionExpirationInDays)
66
- : undefined,
67
- noncurrentVersionTransitions: lifecycleRule.noncurrentVersionTransitions,
68
- transitions: lifecycleRule.transitions,
69
- prefix: lifecycleRule.prefix,
70
- tagFilters: lifecycleRule.tagFilters,
71
- expiredObjectDeleteMarker: lifecycleRule.expiredObjectDeleteMarker,
72
- });
73
- });
74
- return bucketLifecycleRules;
75
- }
76
- /**
77
- * @summary Method to determine the bucket name
78
- * @param {common.CommonConstruct} scope scope in which this resource is defined
79
- * @param {types.S3BucketProps} props bucket properties
80
- * @private
81
- */
82
- static determineBucketName(scope, props) {
83
- return scope.isProductionStage()
84
- ? `${props.bucketName}.${scope.fullyQualifiedDomainName}`
85
- : `${props.bucketName}-${scope.props.stage}.${scope.fullyQualifiedDomainName}`;
86
- }
87
- /**
88
- * @summary Method to determine the log bucket name
89
- * @param {common.CommonConstruct} scope scope in which this resource is defined
90
- * @param {types.S3BucketProps} props bucket properties
91
- * @private
92
- */
93
- static determineLogBucketName(scope, props) {
94
- return scope.isProductionStage()
95
- ? `${props.logBucketName}.${scope.fullyQualifiedDomainName}`
96
- : `${props.logBucketName}-${scope.props.stage}.${scope.fullyQualifiedDomainName}`;
97
- }
98
- /**
99
- * @summary Method to create a s3 bucket
100
- * @param {string} id scoped id of the resource
101
- * @param {common.CommonConstruct} scope scope in which this resource is defined
102
- * @param {types.S3BucketProps} props bucket properties
103
- */
104
- createS3Bucket(id, scope, props) {
105
- if (!props)
106
- throw `S3 props undefined`;
107
- let bucket;
108
- const bucketName = S3Manager.determineBucketName(scope, props);
109
- if (props.existingBucket && props.bucketName) {
110
- bucket = s3.Bucket.fromBucketName(scope, `${id}`, bucketName);
111
- }
112
- else {
113
- let logBucket;
114
- if (props.logBucketName) {
115
- const logBucketName = S3Manager.determineLogBucketName(scope, props);
116
- logBucket = s3.Bucket.fromBucketName(scope, `${id}-logs`, logBucketName);
117
- }
118
- bucket = new s3.Bucket(scope, `${id}-bucket`, {
119
- accessControl: props.accessControl,
120
- autoDeleteObjects: props.autoDeleteObjects,
121
- blockPublicAccess: props.blockPublicAccess || s3.BlockPublicAccess.BLOCK_ALL,
122
- bucketName: bucketName,
123
- cors: props.cors,
124
- encryption: props.encryption || s3.BucketEncryption.S3_MANAGED,
125
- encryptionKey: props.encryptionKey,
126
- lifecycleRules: this.determineBucketLifecycleRules(props),
127
- metrics: props.metrics,
128
- publicReadAccess: props.publicReadAccess,
129
- removalPolicy: props.removalPolicy || cdk.RemovalPolicy.RETAIN,
130
- serverAccessLogsBucket: logBucket,
131
- serverAccessLogsPrefix: props.serverAccessLogsPrefix,
132
- websiteIndexDocument: props.websiteIndexDocument,
133
- websiteErrorDocument: props.websiteErrorDocument,
134
- websiteRoutingRules: props.websiteRoutingRules,
135
- versioned: props.versioned,
136
- });
137
- const cfnBucket = bucket.node.defaultChild;
138
- cfnBucket.notificationConfiguration = {
139
- eventBridgeConfiguration: {
140
- eventBridgeEnabled: props.enableEventBridge ?? false,
141
- },
142
- };
143
- }
144
- utils.createCfnOutput(`${id}-bucketName`, scope, bucket.bucketName);
145
- utils.createCfnOutput(`${id}-bucketArn`, scope, bucket.bucketArn);
146
- return bucket;
147
- }
148
- /**
149
- * @summary Method to create an iam bucket policy for cloudtrail
150
- * @param {string} id scoped id of the resource
151
- * @param {common.CommonConstruct} scope scope in which this resource is defined
152
- * @param {s3.IBucket} bucket
153
- */
154
- createBucketPolicyForCloudTrail(id, scope, bucket) {
155
- const bucketPolicyDocument = new iam.PolicyDocument({
156
- statements: [
157
- new iam.PolicyStatement({
158
- actions: ['s3:GetBucketAcl'],
159
- effect: iam.Effect.ALLOW,
160
- principals: [new iam.ServicePrincipal('cloudtrail.amazonaws.com')],
161
- resources: [bucket.bucketArn],
162
- sid: 'AWSCloudTrailAclCheck20150319',
163
- }),
164
- new iam.PolicyStatement({
165
- actions: ['s3:PutObject'],
166
- effect: iam.Effect.ALLOW,
167
- principals: [new iam.ServicePrincipal('cloudtrail.amazonaws.com')],
168
- resources: [bucket.arnForObjects('*')],
169
- sid: 'AWSCloudTrailWrite20150319',
170
- }),
171
- ],
172
- });
173
- return new s3.CfnBucketPolicy(scope, `${id}`, {
174
- bucket: bucket.bucketName,
175
- policyDocument: bucketPolicyDocument,
176
- });
177
- }
178
- /**
179
- * @summary Method to create a s3 bucket deployment
180
- * @param {string} id scoped id of the resource
181
- * @param {common.CommonConstruct} scope scope in which this resource is defined
182
- * @param {s3.IBucket} siteBucket
183
- * @param {cloudfront.IDistribution} distribution
184
- * @param {s3deploy.ISource[]} sources
185
- * @param {string} prefix
186
- * @param {boolean} prune
187
- */
188
- doBucketDeployment(id, scope, siteBucket, distribution, sources, prefix, prune) {
189
- new s3deploy.BucketDeployment(scope, `${id}`, {
190
- destinationBucket: siteBucket,
191
- destinationKeyPrefix: prefix,
192
- distribution: distribution,
193
- distributionPaths: ['/*'],
194
- memoryLimit: 1024,
195
- prune: !!prune,
196
- serverSideEncryption: s3deploy.ServerSideEncryption.AES_256,
197
- sources: sources,
198
- });
199
- }
200
- }
201
- exports.S3Manager = S3Manager;
202
- //# sourceMappingURL=s3-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"s3-manager.js","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/s3-manager.ts"],"names":[],"mappings":"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"}
@@ -1,57 +0,0 @@
1
- import * as cdk from 'aws-cdk-lib';
2
- import * as common from '../../common';
3
- /**
4
- * @stability experimental
5
- * @category Security, Identity & Compliance
6
- * @classdesc Provides operations on AWS Secrets Manager.
7
- * - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
8
- * - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
9
- * @example
10
- * import * as common from '@gradientedge/cdk-utils'
11
- *
12
- * class CustomConstruct extends common.common.CommonConstruct {
13
- * constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
14
- * super(parent, id, props)
15
- * this.props = props
16
- * this.secretsManager.loadSecret('MySecretName', 'eu-west-1')
17
- * }
18
- * }
19
- *
20
- * @see [CDK Secrets Manager Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_secretsmanager-readme.html}
21
- */
22
- export declare class SecretsManager {
23
- /**
24
- *
25
- * @param {string} region
26
- */
27
- getAwsSecretsManager(region: string): any;
28
- /**
29
- * @stability experimental
30
- * @summary Method to load a secret from secrets manager
31
- * @param {string} secretName
32
- * @param {string} region
33
- */
34
- loadSecret(secretName: string, region: string): Promise<any>;
35
- /**
36
- * @stability experimental
37
- * @summary Method to load secrets from secrets manager
38
- * @param {string} secretNames
39
- * @param {string} region
40
- */
41
- loadSecrets(secretNames: string, region: string): Promise<{}>;
42
- /**
43
- * @stability experimental
44
- * @summary Method to export secrets from secrets manager to a dot env format
45
- */
46
- exportToDotEnv(): void;
47
- /**
48
- * @stability stable
49
- * @summary Method to retrieve a secret from secrets manager with a cloudformation export
50
- * @param id
51
- * @param scope
52
- * @param stackName
53
- * @param exportName
54
- */
55
- retrieveSecretFromSecretsManager(id: string, scope: common.CommonConstruct, stackName: string, exportName: string): cdk.aws_secretsmanager.ISecret;
56
- }
57
- //# sourceMappingURL=secrets-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"secrets-manager.d.ts","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/secrets-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAA;AAElC,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AAKtC;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,cAAc;IACzB;;;OAGG;IACI,oBAAoB,CAAC,MAAM,EAAE,MAAM;IAI1C;;;;;OAKG;IACU,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAO1D;;;;;OAKG;IACU,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAS5D;;;OAGG;IACI,cAAc;IA2BrB;;;;;;;OAOG;IACI,gCAAgC,CACrC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,CAAC,eAAe,EAC7B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM;CAQrB"}
@@ -1,116 +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.SecretsManager = void 0;
23
- const cdk = __importStar(require("aws-cdk-lib"));
24
- const secretsManager = __importStar(require("aws-cdk-lib/aws-secretsmanager"));
25
- const AWS = require('aws-sdk');
26
- const fs = require('fs');
27
- /**
28
- * @stability experimental
29
- * @category Security, Identity & Compliance
30
- * @classdesc Provides operations on AWS Secrets Manager.
31
- * - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
32
- * - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
33
- * @example
34
- * import * as common from '@gradientedge/cdk-utils'
35
- *
36
- * class CustomConstruct extends common.common.CommonConstruct {
37
- * constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
38
- * super(parent, id, props)
39
- * this.props = props
40
- * this.secretsManager.loadSecret('MySecretName', 'eu-west-1')
41
- * }
42
- * }
43
- *
44
- * @see [CDK Secrets Manager Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_secretsmanager-readme.html}
45
- */
46
- class SecretsManager {
47
- /**
48
- *
49
- * @param {string} region
50
- */
51
- getAwsSecretsManager(region) {
52
- return new AWS.SecretsManager({ region: region });
53
- }
54
- /**
55
- * @stability experimental
56
- * @summary Method to load a secret from secrets manager
57
- * @param {string} secretName
58
- * @param {string} region
59
- */
60
- async loadSecret(secretName, region) {
61
- const secretsManager = this.getAwsSecretsManager(region);
62
- const secret = await Promise.all([secretsManager.getSecretValue({ SecretId: secretName }).promise()]);
63
- return secret ? JSON.parse(secret[0].SecretString) : {};
64
- }
65
- /**
66
- * @stability experimental
67
- * @summary Method to load secrets from secrets manager
68
- * @param {string} secretNames
69
- * @param {string} region
70
- */
71
- async loadSecrets(secretNames, region) {
72
- let secrets = {};
73
- for (const secretName of secretNames.split(',')) {
74
- secrets = { ...secrets, ...(await this.loadSecret(secretName, region)) };
75
- }
76
- return secrets;
77
- }
78
- /**
79
- * @stability experimental
80
- * @summary Method to export secrets from secrets manager to a dot env format
81
- */
82
- exportToDotEnv() {
83
- let nconf = require('nconf');
84
- nconf.argv().env();
85
- const appRoot = require('app-root-path');
86
- if (nconf.get('profile')) {
87
- console.log(`Using named aws profile ${nconf.get('profile')}`);
88
- AWS.config.credentials = new AWS.SharedIniFileCredentials({ profile: nconf.get('profile') });
89
- }
90
- const region = nconf.get('region');
91
- AWS.config.update({ region: nconf.get('region') });
92
- const outFileName = nconf.get('out') ? nconf.get('out') : '.env';
93
- this.loadSecret(nconf.get('name'), region).then((secretString) => {
94
- if (nconf.get('overwrite')) {
95
- fs.writeFileSync(`${appRoot.path}/.env`, '');
96
- }
97
- Object.keys(secretString).forEach(function (key) {
98
- console.log(`Adding environment variable for key: ${key}`);
99
- fs.appendFileSync(`${appRoot.path}/${outFileName}`, `${key}=${secretString[key]}\r\n`);
100
- });
101
- });
102
- }
103
- /**
104
- * @stability stable
105
- * @summary Method to retrieve a secret from secrets manager with a cloudformation export
106
- * @param id
107
- * @param scope
108
- * @param stackName
109
- * @param exportName
110
- */
111
- retrieveSecretFromSecretsManager(id, scope, stackName, exportName) {
112
- return secretsManager.Secret.fromSecretNameV2(scope, `${id}`, cdk.Fn.importValue(`${stackName}-${scope.props.stage}-${exportName}`));
113
- }
114
- }
115
- exports.SecretsManager = SecretsManager;
116
- //# sourceMappingURL=secrets-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"secrets-manager.js","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/secrets-manager.ts"],"names":[],"mappings":"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"}