@gradientedge/cdk-utils 4.4.4 → 4.4.5

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 (136) hide show
  1. package/package.json +4 -5
  2. package/api-docs/AcmManager.html +0 -622
  3. package/api-docs/AcmProps.html +0 -238
  4. package/api-docs/AlarmProps.html +0 -238
  5. package/api-docs/AlarmStatusWidgetProps.html +0 -238
  6. package/api-docs/ApiDestinationEvent.html +0 -297
  7. package/api-docs/ApiDestinationEventType.html +0 -238
  8. package/api-docs/ApiDestinedLambda.html +0 -297
  9. package/api-docs/ApiDestinedLambdaEnvironment.html +0 -238
  10. package/api-docs/ApiDestinedLambdaType.html +0 -238
  11. package/api-docs/ApiDestinedRestApi.html +0 -297
  12. package/api-docs/ApiDestinedRestApiType.html +0 -238
  13. package/api-docs/ApiManager.html +0 -766
  14. package/api-docs/ApiToEventBridgeTarget.html +0 -1877
  15. package/api-docs/ApiToEventBridgeTarget.jpg +0 -0
  16. package/api-docs/ApiToEventBridgeTargetEventProps.html +0 -238
  17. package/api-docs/ApiToEventBridgeTargetLambdaProps.html +0 -238
  18. package/api-docs/ApiToEventBridgeTargetProps.html +0 -238
  19. package/api-docs/ApiToEventBridgeTargetRestApiProps.html +0 -238
  20. package/api-docs/AppConfigManager.html +0 -1203
  21. package/api-docs/AppConfigProps.html +0 -238
  22. package/api-docs/CloudFrontManager.html +0 -2402
  23. package/api-docs/CloudFrontProps.html +0 -238
  24. package/api-docs/CloudTrailManager.html +0 -637
  25. package/api-docs/CloudTrailProps.html +0 -238
  26. package/api-docs/CloudWatchManager.html +0 -2986
  27. package/api-docs/CloudfrontFunctionProps.html +0 -238
  28. package/api-docs/CodeBuildManager.html +0 -736
  29. package/api-docs/CommonConstruct.html +0 -1299
  30. package/api-docs/CommonStack.html +0 -813
  31. package/api-docs/CommonStackProps.html +0 -238
  32. package/api-docs/DashboardProps.html +0 -238
  33. package/api-docs/DistributionProps.html +0 -238
  34. package/api-docs/DynamodbManager.html +0 -530
  35. package/api-docs/EcrManager.html +0 -530
  36. package/api-docs/EcsClusterProps.html +0 -238
  37. package/api-docs/EcsManager.html +0 -880
  38. package/api-docs/EcsTaskProps.html +0 -238
  39. package/api-docs/EksClusterProps.html +0 -238
  40. package/api-docs/EksManager.html +0 -580
  41. package/api-docs/EventBusProps.html +0 -238
  42. package/api-docs/EventManager.html +0 -1454
  43. package/api-docs/EventRuleProps.html +0 -238
  44. package/api-docs/GraphQLApiLambda.html +0 -1671
  45. package/api-docs/GraphQLApiLambda.jpg +0 -0
  46. package/api-docs/GraphQlApiLambdaEnvironment.html +0 -238
  47. package/api-docs/GraphQlApiLambdaProps.html +0 -238
  48. package/api-docs/GraphWidgetProps.html +0 -238
  49. package/api-docs/HealthCheck.html +0 -238
  50. package/api-docs/IamManager.html +0 -3821
  51. package/api-docs/LambdaEdgeProps.html +0 -238
  52. package/api-docs/LambdaEnvironment.html +0 -238
  53. package/api-docs/LambdaManager.html +0 -2378
  54. package/api-docs/LambdaProps.html +0 -238
  55. package/api-docs/LifecycleRule.html +0 -238
  56. package/api-docs/LogManager.html +0 -955
  57. package/api-docs/LogProps.html +0 -238
  58. package/api-docs/LogQueryWidgetProps.html +0 -238
  59. package/api-docs/MetricFilterProps.html +0 -238
  60. package/api-docs/MetricProps.html +0 -238
  61. package/api-docs/NumericWidgetProps.html +0 -238
  62. package/api-docs/Route53Manager.html +0 -1460
  63. package/api-docs/Route53Props.html +0 -238
  64. package/api-docs/RuleProps.html +0 -238
  65. package/api-docs/S3BucketProps.html +0 -238
  66. package/api-docs/S3Manager.html +0 -1546
  67. package/api-docs/SSMParameterReader.html +0 -431
  68. package/api-docs/SSMParameterReaderProps.html +0 -238
  69. package/api-docs/SecretsManager.html +0 -1140
  70. package/api-docs/SiteWithEcsBackend.html +0 -2391
  71. package/api-docs/SiteWithEcsBackendProps.html +0 -238
  72. package/api-docs/SnsManager.html +0 -780
  73. package/api-docs/SsmManager.html +0 -955
  74. package/api-docs/StaticSite.html +0 -1358
  75. package/api-docs/StaticSiteProps.html +0 -238
  76. package/api-docs/SubscriptionProps.html +0 -238
  77. package/api-docs/TableProps.html +0 -238
  78. package/api-docs/TextWidgetProps.html +0 -238
  79. package/api-docs/VpcManager.html +0 -986
  80. package/api-docs/WafIPSetProps.html +0 -238
  81. package/api-docs/WafManager.html +0 -730
  82. package/api-docs/WafWebACLProps.html +0 -238
  83. package/api-docs/common_construct.ts.html +0 -279
  84. package/api-docs/common_stack.ts.html +0 -303
  85. package/api-docs/construct_api-to-eventbridge-target_api-destination-event.ts.html +0 -175
  86. package/api-docs/construct_api-to-eventbridge-target_api-destined-lambda.ts.html +0 -178
  87. package/api-docs/construct_api-to-eventbridge-target_api-destined-rest-api.ts.html +0 -190
  88. package/api-docs/construct_api-to-eventbridge-target_main.ts.html +0 -751
  89. package/api-docs/construct_graphql-api-lambda_main.ts.html +0 -408
  90. package/api-docs/construct_site-with-ecs-backend_main.ts.html +0 -544
  91. package/api-docs/construct_static-site_main.ts.html +0 -374
  92. package/api-docs/global.html +0 -1530
  93. package/api-docs/index.html +0 -208
  94. package/api-docs/logo.png +0 -0
  95. package/api-docs/manager_aws_acm-manager.ts.html +0 -236
  96. package/api-docs/manager_aws_api-manager.ts.html +0 -260
  97. package/api-docs/manager_aws_app-config-manager.ts.html +0 -310
  98. package/api-docs/manager_aws_cloudfront-manager.ts.html +0 -491
  99. package/api-docs/manager_aws_cloudtrail-manager.ts.html +0 -251
  100. package/api-docs/manager_aws_cloudwatch-manager.ts.html +0 -553
  101. package/api-docs/manager_aws_codebuild-manager.ts.html +0 -240
  102. package/api-docs/manager_aws_dynamodb-manager.ts.html +0 -219
  103. package/api-docs/manager_aws_ecr-manager.ts.html +0 -199
  104. package/api-docs/manager_aws_ecs-manager.ts.html +0 -259
  105. package/api-docs/manager_aws_eks-manager.ts.html +0 -260
  106. package/api-docs/manager_aws_event-manager.ts.html +0 -336
  107. package/api-docs/manager_aws_iam-manager.ts.html +0 -573
  108. package/api-docs/manager_aws_lambda-manager.ts.html +0 -400
  109. package/api-docs/manager_aws_log-manager.ts.html +0 -259
  110. package/api-docs/manager_aws_route53-manager.ts.html +0 -333
  111. package/api-docs/manager_aws_s3-manager.ts.html +0 -361
  112. package/api-docs/manager_aws_secrets-manager.ts.html +0 -274
  113. package/api-docs/manager_aws_sns-manager.ts.html +0 -246
  114. package/api-docs/manager_aws_ssm-manager.ts.html +0 -273
  115. package/api-docs/manager_aws_vpc-manager.ts.html +0 -244
  116. package/api-docs/manager_aws_waf-manager.ts.html +0 -232
  117. package/api-docs/scripts/app.min.js +0 -1
  118. package/api-docs/scripts/linenumber.js +0 -26
  119. package/api-docs/scripts/search.js +0 -39
  120. package/api-docs/styles/app.min.css +0 -1
  121. package/api-docs/styles/iframe.css +0 -13
  122. package/api-docs/styles/prettify-jsdoc.css +0 -111
  123. package/api-docs/styles/prettify-tomorrow.css +0 -132
  124. package/api-docs/styles/reset.css +0 -44
  125. package/api-docs/styles.css +0 -113
  126. package/api-docs/tutorial-Architecture.html +0 -151
  127. package/api-docs/tutorial-Build.html +0 -150
  128. package/api-docs/tutorial-CI-CD.html +0 -154
  129. package/api-docs/tutorial-Development.html +0 -227
  130. package/api-docs/types_aws_index.ts.html +0 -665
  131. package/api-docs/utils_aws_index.ts.html +0 -192
  132. package/api-docs/utils_index.ts.html +0 -227
  133. package/img/ApiToEventBridgeTarget.jpg +0 -0
  134. package/img/GraphQLApiLambda.jpg +0 -0
  135. package/img/logo.png +0 -0
  136. package/theme/styles.css +0 -113
@@ -1,260 +0,0 @@
1
-
2
-
3
- <!DOCTYPE html>
4
- <html lang="en">
5
-
6
- <head>
7
-
8
- <meta charset="utf-8">
9
- <meta name="viewport" content="width=device-width, initial-scale=1">
10
- <title>Gradient Edge CDK Utils manager/aws/eks-manager.ts</title>
11
-
12
- <script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js"></script>
13
- <script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
14
- <script src="./build/entry.js"></script>
15
- <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
16
- <!--[if lt IE 9]>
17
- <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
18
- <![endif]-->
19
- <link href="https://fonts.googleapis.com/css?family=Roboto:100,400,700|Inconsolata,700" rel="stylesheet">
20
- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.6.3/css/all.css" integrity="sha384-UHRtZLI+pbxtHCWp1t77Bi1L4ZtiqrqD80Kn4Z8NTSRyMA2Fd33n5dQ8lWUE00s/" crossorigin="anonymous">
21
- <link type="text/css" rel="stylesheet" href="https://jmblog.github.io/color-themes-for-google-code-prettify/themes/tomorrow-night.min.css">
22
- <link type="text/css" rel="stylesheet" href="styles/app.min.css">
23
- <link type="text/css" rel="stylesheet" href="styles/iframe.css">
24
- <link type="text/css" rel="stylesheet" href="styles.css">
25
- <script async defer src="https://buttons.github.io/buttons.js"></script>
26
-
27
-
28
- </head>
29
-
30
-
31
-
32
- <body class="layout small-header">
33
- <div id="stickyNavbarOverlay"></div>
34
-
35
-
36
- <div class="top-nav">
37
- <div class="inner">
38
- <a id="hamburger" role="button" class="navbar-burger" aria-label="menu" aria-expanded="false">
39
- <span aria-hidden="true"></span>
40
- <span aria-hidden="true"></span>
41
- <span aria-hidden="true"></span>
42
- </a>
43
- <div class="logo">
44
-
45
- <a class="image" href="index.html">
46
- <img src="logo.png" alt="logo">
47
- </a>
48
-
49
-
50
- <a href="index.html">
51
- <h1 class="navbar-item">Gradient Edge CDK Utils Documentation</h1>
52
- </a>
53
-
54
- </div>
55
- <div class="menu">
56
-
57
- <div class="navigation">
58
- <a
59
- href="index.html"
60
- class="link"
61
- >
62
- API Documentation
63
- </a>
64
-
65
- <div class="dropdown is-hoverable is-right">
66
- <a class="dropdown-trigger link">
67
- Tutorials
68
- <i class="fas fa-chevron-down fa-xs"></i>
69
- </a>
70
- <div class="dropdown-menu">
71
- <div class="dropdown-content">
72
-
73
- <a class="dropdown-item" href="tutorial-Architecture.html">
74
- Architecture
75
- </a>
76
-
77
- <a class="dropdown-item" href="tutorial-Build.html">
78
- Build
79
- </a>
80
-
81
- <a class="dropdown-item" href="tutorial-CI-CD.html">
82
- CI-CD
83
- </a>
84
-
85
- <a class="dropdown-item" href="tutorial-Development.html">
86
- Development
87
- </a>
88
-
89
- </div>
90
- </div>
91
- </div>
92
-
93
-
94
-
95
- <a
96
- class="link user-link "
97
- href="https://github.com/gradientedge/cdk-utils"
98
- >
99
- Github
100
- </a>
101
-
102
-
103
-
104
- </div>
105
- </div>
106
- </div>
107
- </div>
108
- <div id="main">
109
- <div
110
- class="sidebar "
111
- id="sidebarNav"
112
- >
113
-
114
- <div class="search-wrapper">
115
- <input id="search" type="text" placeholder="Search docs..." class="input">
116
- </div>
117
-
118
- <nav>
119
-
120
- <h2><a href="index.html">Documentation</a></h2><div class="category"></div><div class="category"><h2>cdk-utils.acm-manager</h2><h3>Classes / Construct</h3><ul><li><a href="AcmManager.html">AcmManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="AcmProps.html">AcmProps</a></li></ul></div><div class="category"><h2>cdk-utils.api-manager</h2><h3>Classes / Construct</h3><ul><li><a href="ApiManager.html">ApiManager</a></li></ul></div><div class="category"><h2>cdk-utils.api-to-eventbridge-target</h2><h3>Classes / member</h3><ul><li><a href="ApiDestinationEvent.html">ApiDestinationEvent</a></li><li><a href="ApiDestinedLambda.html">ApiDestinedLambda</a></li><li><a href="ApiDestinedRestApi.html">ApiDestinedRestApi</a></li></ul><h3>Classes / construct</h3><ul><li><a href="ApiToEventBridgeTarget.html">ApiToEventBridgeTarget</a></li></ul><h3>Interfaces / Types</h3><ul><li><a href="ApiDestinationEventType.html">ApiDestinationEventType</a></li><li><a href="ApiDestinedLambdaEnvironment.html">ApiDestinedLambdaEnvironment</a></li><li><a href="ApiDestinedLambdaType.html">ApiDestinedLambdaType</a></li><li><a href="ApiDestinedRestApiType.html">ApiDestinedRestApiType</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="ApiToEventBridgeTargetEventProps.html">ApiToEventBridgeTargetEventProps</a></li><li><a href="ApiToEventBridgeTargetLambdaProps.html">ApiToEventBridgeTargetLambdaProps</a></li><li><a href="ApiToEventBridgeTargetProps.html">ApiToEventBridgeTargetProps</a></li><li><a href="ApiToEventBridgeTargetRestApiProps.html">ApiToEventBridgeTargetRestApiProps</a></li></ul></div><div class="category"><h2>cdk-utils.app-config-manager</h2><h3>Classes / Construct</h3><ul><li><a href="AppConfigManager.html">AppConfigManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="AppConfigProps.html">AppConfigProps</a></li></ul><h3>Global</h3><ul><li><a href="global.html#ArnsByRegion">ArnsByRegion</a></li></ul></div><div class="category"><h2>cdk-utils.cloudfront-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CloudFrontManager.html">CloudFrontManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="CloudfrontFunctionProps.html">CloudfrontFunctionProps</a></li><li><a href="CloudFrontProps.html">CloudFrontProps</a></li><li><a href="DistributionProps.html">DistributionProps</a></li></ul></div><div class="category"><h2>cdk-utils.cloudtrail-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CloudTrailManager.html">CloudTrailManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="CloudTrailProps.html">CloudTrailProps</a></li></ul></div><div class="category"><h2>cdk-utils.cloudwatch-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CloudWatchManager.html">CloudWatchManager</a></li><li><a href="LogManager.html">LogManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="AlarmProps.html">AlarmProps</a></li><li><a href="AlarmStatusWidgetProps.html">AlarmStatusWidgetProps</a></li><li><a href="DashboardProps.html">DashboardProps</a></li><li><a href="GraphWidgetProps.html">GraphWidgetProps</a></li><li><a href="LogProps.html">LogProps</a></li><li><a href="LogQueryWidgetProps.html">LogQueryWidgetProps</a></li><li><a href="MetricFilterProps.html">MetricFilterProps</a></li><li><a href="MetricProps.html">MetricProps</a></li><li><a href="NumericWidgetProps.html">NumericWidgetProps</a></li><li><a href="TextWidgetProps.html">TextWidgetProps</a></li></ul><h3>Global</h3><ul><li><a href="global.html#CloudWatchWidgetType">CloudWatchWidgetType</a></li></ul></div><div class="category"><h2>cdk-utils.codebuild-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CodeBuildManager.html">CodeBuildManager</a></li></ul></div><div class="category"><h2>cdk-utils.common-construct</h2><h3>Classes / Construct</h3><ul><li><a href="CommonConstruct.html">CommonConstruct</a></li></ul></div><div class="category"><h2>cdk-utils.common-stack</h2><h3>Classes / Construct</h3><ul><li><a href="CommonStack.html">CommonStack</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="CommonStackProps.html">CommonStackProps</a></li></ul></div><div class="category"><h2>cdk-utils.dynamodb-manager</h2><h3>Classes / Construct</h3><ul><li><a href="DynamodbManager.html">DynamodbManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="TableProps.html">TableProps</a></li></ul></div><div class="category"><h2>cdk-utils.ecr-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EcrManager.html">EcrManager</a></li></ul></div><div class="category"><h2>cdk-utils.ecs-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EcsManager.html">EcsManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="EcsClusterProps.html">EcsClusterProps</a></li><li><a href="EcsTaskProps.html">EcsTaskProps</a></li></ul></div><div class="category"><h2>cdk-utils.eks-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EksManager.html">EksManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="EksClusterProps.html">EksClusterProps</a></li></ul></div><div class="category"><h2>cdk-utils.event-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EventManager.html">EventManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="EventBusProps.html">EventBusProps</a></li><li><a href="EventRuleProps.html">EventRuleProps</a></li><li><a href="RuleProps.html">RuleProps</a></li></ul></div><div class="category"><h2>cdk-utils.graphql-api-lambda</h2><h3>Classes / construct</h3><ul><li><a href="GraphQLApiLambda.html">GraphQLApiLambda</a></li></ul><h3>Interfaces / Types</h3><ul><li><a href="GraphQlApiLambdaEnvironment.html">GraphQlApiLambdaEnvironment</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="GraphQlApiLambdaProps.html">GraphQlApiLambdaProps</a></li></ul></div><div class="category"><h2>cdk-utils.iam-manager</h2><h3>Classes / Construct</h3><ul><li><a href="IamManager.html">IamManager</a></li></ul></div><div class="category"><h2>cdk-utils.lambda-manager</h2><h3>Classes / Construct</h3><ul><li><a href="LambdaManager.html">LambdaManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="LambdaEdgeProps.html">LambdaEdgeProps</a></li><li><a href="LambdaProps.html">LambdaProps</a></li></ul><h3>Interfaces / Types</h3><ul><li><a href="LambdaEnvironment.html">LambdaEnvironment</a></li></ul></div><div class="category"><h2>cdk-utils.route53-manager</h2><h3>Classes / Construct</h3><ul><li><a href="Route53Manager.html">Route53Manager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="Route53Props.html">Route53Props</a></li></ul></div><div class="category"><h2>cdk-utils.s3-manager</h2><h3>Classes / Construct</h3><ul><li><a href="S3Manager.html">S3Manager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="LifecycleRule.html">LifecycleRule</a></li><li><a href="S3BucketProps.html">S3BucketProps</a></li></ul></div><div class="category"><h2>cdk-utils.secrets-manager</h2><h3>Classes / Construct</h3><ul><li><a href="SecretsManager.html">SecretsManager</a></li></ul></div><div class="category"><h2>cdk-utils.site-with-ecs-backend</h2><h3>Classes / construct</h3><ul><li><a href="SiteWithEcsBackend.html">SiteWithEcsBackend</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="HealthCheck.html">HealthCheck</a></li><li><a href="SiteWithEcsBackendProps.html">SiteWithEcsBackendProps</a></li></ul></div><div class="category"><h2>cdk-utils.sns-manager</h2><h3>Classes / Construct</h3><ul><li><a href="SnsManager.html">SnsManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="SubscriptionProps.html">SubscriptionProps</a></li></ul></div><div class="category"><h2>cdk-utils.ssm-manager</h2><h3>Classes / Construct</h3><ul><li><a href="SsmManager.html">SsmManager</a></li><li><a href="SSMParameterReader.html">SSMParameterReader</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="SSMParameterReaderProps.html">SSMParameterReaderProps</a></li></ul></div><div class="category"><h2>cdk-utils.static-site</h2><h3>Classes / construct</h3><ul><li><a href="StaticSite.html">StaticSite</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="StaticSiteProps.html">StaticSiteProps</a></li></ul></div><div class="category"><h2>cdk-utils.utils</h2><h3>Global</h3><ul><li><a href="global.html#createCfnOutput">createCfnOutput</a></li><li><a href="global.html#defaultResponseObject">defaultResponseObject</a></li><li><a href="global.html#isDevStage">isDevStage</a></li><li><a href="global.html#isPrdStage">isPrdStage</a></li><li><a href="global.html#isTestStage">isTestStage</a></li><li><a href="global.html#isUatStage">isUatStage</a></li><li><a href="global.html#LogLevel">LogLevel</a></li><li><a href="global.html#redirectError">redirectError</a></li><li><a href="global.html#redirectSuccess">redirectSuccess</a></li></ul></div><div class="category"><h2>cdk-utils.vpc-manager</h2><h3>Classes / Construct</h3><ul><li><a href="VpcManager.html">VpcManager</a></li></ul><h3>Global</h3><ul><li><a href="global.html#CommonVpcIdentifier">CommonVpcIdentifier</a></li></ul></div><div class="category"><h2>cdk-utils.waf-manager</h2><h3>Classes / Construct</h3><ul><li><a href="WafManager.html">WafManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="WafIPSetProps.html">WafIPSetProps</a></li><li><a href="WafWebACLProps.html">WafWebACLProps</a></li></ul></div>
121
-
122
- </nav>
123
- </div>
124
- <div class="core" id="main-content-wrapper">
125
- <div class="content">
126
- <header class="page-title">
127
- <p>Source</p>
128
- <h1>manager/aws/eks-manager.ts</h1>
129
- </header>
130
-
131
-
132
-
133
-
134
-
135
- <section>
136
- <article>
137
- <pre class="prettyprint source linenums"><code>import * as ec2 from 'aws-cdk-lib/aws-ec2'
138
- import * as ecr from 'aws-cdk-lib/aws-ecr-assets'
139
- import * as eks from 'aws-cdk-lib/aws-eks'
140
- import * as common from '../../common'
141
- import * as types from '../../types'
142
- import * as utils from '../../utils'
143
-
144
- /**
145
- * @stability stable
146
- * @category cdk-utils.eks-manager
147
- * @subcategory Construct
148
- * @classdesc Provides operations on AWS Elastic Kubernetes Service.
149
- * - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
150
- * - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
151
- * @example
152
- * import * as common from '@gradientedge/cdk-utils'
153
- *
154
- * class CustomConstruct extends common.common.CommonConstruct {
155
- * constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
156
- * super(parent, id, props)
157
- * this.props = props
158
- * this.eksManager.createEksDeployment('MyEksDeployment', this, image, vpc)
159
- * }
160
- * }
161
- *
162
- * @see [CDK EKS Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_eks-readme.html}
163
- */
164
- export class EksManager {
165
- /**
166
- * @summary Method to create an eks deployment
167
- * @param {string} id scoped id of the resource
168
- * @param {common.CommonConstruct} scope scope in which this resource is defined
169
- * @param {types.EksClusterProps} props
170
- * @param {ecr.DockerImageAsset} image
171
- * @param {ec2.IVpc} vpc
172
- */
173
- public createEksDeployment(
174
- id: string,
175
- scope: common.CommonConstruct,
176
- props: types.EksClusterProps,
177
- image: ecr.DockerImageAsset,
178
- vpc: ec2.IVpc
179
- ) {
180
- if (!props) throw `EksCluster props undefined`
181
-
182
- const appLabel = { app: `${id}`.toLowerCase() }
183
-
184
- const deployment = {
185
- apiVersion: 'apps/v1',
186
- kind: 'Deployment',
187
- metadata: { name: `${id}`.toLowerCase() },
188
- spec: {
189
- selector: { matchLabels: appLabel },
190
- template: {
191
- metadata: { labels: appLabel },
192
- spec: {
193
- containers: [
194
- {
195
- name: `${id}`.toLowerCase(),
196
- image: image.imageUri,
197
- ports: [{ containerPort: props.appContainerPort }],
198
- },
199
- ],
200
- },
201
- },
202
- },
203
- }
204
-
205
- const service = {
206
- apiVersion: 'v1',
207
- kind: 'Service',
208
- metadata: { name: `${id}`.toLowerCase() },
209
- spec: {
210
- type: 'LoadBalancer',
211
- ports: [
212
- {
213
- name: 'http-port',
214
- protocol: 'TCP',
215
- port: 80,
216
- targetPort: props.appContainerPort,
217
- },
218
- ],
219
- selector: appLabel,
220
- },
221
- }
222
-
223
- const cluster = new eks.Cluster(scope, `${id}Cluster`, {
224
- clusterName: `${id.toLowerCase()}-${scope.props.stage}`,
225
- defaultCapacity: props.appCapacity,
226
- defaultCapacityInstance: ec2.InstanceType.of(ec2.InstanceClass.T3, ec2.InstanceSize.LARGE),
227
- version: eks.KubernetesVersion.V1_18,
228
- vpc,
229
- })
230
-
231
- cluster.addManifest(`${id}Pod`, service, deployment)
232
-
233
- utils.createCfnOutput(`${id}-clusterArn`, scope, cluster.clusterArn)
234
- utils.createCfnOutput(`${id}-clusterEndpoint`, scope, cluster.clusterEndpoint)
235
-
236
- return cluster
237
- }
238
- }
239
- </code></pre>
240
- </article>
241
- </section>
242
-
243
-
244
-
245
-
246
- </div>
247
-
248
- </div>
249
- <div id="side-nav" class="side-nav">
250
- </div>
251
- </div>
252
- <script src="scripts/app.min.js"></script>
253
- <script>PR.prettyPrint();</script>
254
- <script src="scripts/linenumber.js"> </script>
255
-
256
- <script src="scripts/search.js"> </script>
257
-
258
-
259
- </body>
260
- </html>
@@ -1,336 +0,0 @@
1
-
2
-
3
- <!DOCTYPE html>
4
- <html lang="en">
5
-
6
- <head>
7
-
8
- <meta charset="utf-8">
9
- <meta name="viewport" content="width=device-width, initial-scale=1">
10
- <title>Gradient Edge CDK Utils manager/aws/event-manager.ts</title>
11
-
12
- <script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js"></script>
13
- <script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
14
- <script src="./build/entry.js"></script>
15
- <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
16
- <!--[if lt IE 9]>
17
- <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
18
- <![endif]-->
19
- <link href="https://fonts.googleapis.com/css?family=Roboto:100,400,700|Inconsolata,700" rel="stylesheet">
20
- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.6.3/css/all.css" integrity="sha384-UHRtZLI+pbxtHCWp1t77Bi1L4ZtiqrqD80Kn4Z8NTSRyMA2Fd33n5dQ8lWUE00s/" crossorigin="anonymous">
21
- <link type="text/css" rel="stylesheet" href="https://jmblog.github.io/color-themes-for-google-code-prettify/themes/tomorrow-night.min.css">
22
- <link type="text/css" rel="stylesheet" href="styles/app.min.css">
23
- <link type="text/css" rel="stylesheet" href="styles/iframe.css">
24
- <link type="text/css" rel="stylesheet" href="styles.css">
25
- <script async defer src="https://buttons.github.io/buttons.js"></script>
26
-
27
-
28
- </head>
29
-
30
-
31
-
32
- <body class="layout small-header">
33
- <div id="stickyNavbarOverlay"></div>
34
-
35
-
36
- <div class="top-nav">
37
- <div class="inner">
38
- <a id="hamburger" role="button" class="navbar-burger" aria-label="menu" aria-expanded="false">
39
- <span aria-hidden="true"></span>
40
- <span aria-hidden="true"></span>
41
- <span aria-hidden="true"></span>
42
- </a>
43
- <div class="logo">
44
-
45
- <a class="image" href="index.html">
46
- <img src="logo.png" alt="logo">
47
- </a>
48
-
49
-
50
- <a href="index.html">
51
- <h1 class="navbar-item">Gradient Edge CDK Utils Documentation</h1>
52
- </a>
53
-
54
- </div>
55
- <div class="menu">
56
-
57
- <div class="navigation">
58
- <a
59
- href="index.html"
60
- class="link"
61
- >
62
- API Documentation
63
- </a>
64
-
65
- <div class="dropdown is-hoverable is-right">
66
- <a class="dropdown-trigger link">
67
- Tutorials
68
- <i class="fas fa-chevron-down fa-xs"></i>
69
- </a>
70
- <div class="dropdown-menu">
71
- <div class="dropdown-content">
72
-
73
- <a class="dropdown-item" href="tutorial-Architecture.html">
74
- Architecture
75
- </a>
76
-
77
- <a class="dropdown-item" href="tutorial-Build.html">
78
- Build
79
- </a>
80
-
81
- <a class="dropdown-item" href="tutorial-CI-CD.html">
82
- CI-CD
83
- </a>
84
-
85
- <a class="dropdown-item" href="tutorial-Development.html">
86
- Development
87
- </a>
88
-
89
- </div>
90
- </div>
91
- </div>
92
-
93
-
94
-
95
- <a
96
- class="link user-link "
97
- href="https://github.com/gradientedge/cdk-utils"
98
- >
99
- Github
100
- </a>
101
-
102
-
103
-
104
- </div>
105
- </div>
106
- </div>
107
- </div>
108
- <div id="main">
109
- <div
110
- class="sidebar "
111
- id="sidebarNav"
112
- >
113
-
114
- <div class="search-wrapper">
115
- <input id="search" type="text" placeholder="Search docs..." class="input">
116
- </div>
117
-
118
- <nav>
119
-
120
- <h2><a href="index.html">Documentation</a></h2><div class="category"></div><div class="category"><h2>cdk-utils.acm-manager</h2><h3>Classes / Construct</h3><ul><li><a href="AcmManager.html">AcmManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="AcmProps.html">AcmProps</a></li></ul></div><div class="category"><h2>cdk-utils.api-manager</h2><h3>Classes / Construct</h3><ul><li><a href="ApiManager.html">ApiManager</a></li></ul></div><div class="category"><h2>cdk-utils.api-to-eventbridge-target</h2><h3>Classes / member</h3><ul><li><a href="ApiDestinationEvent.html">ApiDestinationEvent</a></li><li><a href="ApiDestinedLambda.html">ApiDestinedLambda</a></li><li><a href="ApiDestinedRestApi.html">ApiDestinedRestApi</a></li></ul><h3>Classes / construct</h3><ul><li><a href="ApiToEventBridgeTarget.html">ApiToEventBridgeTarget</a></li></ul><h3>Interfaces / Types</h3><ul><li><a href="ApiDestinationEventType.html">ApiDestinationEventType</a></li><li><a href="ApiDestinedLambdaEnvironment.html">ApiDestinedLambdaEnvironment</a></li><li><a href="ApiDestinedLambdaType.html">ApiDestinedLambdaType</a></li><li><a href="ApiDestinedRestApiType.html">ApiDestinedRestApiType</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="ApiToEventBridgeTargetEventProps.html">ApiToEventBridgeTargetEventProps</a></li><li><a href="ApiToEventBridgeTargetLambdaProps.html">ApiToEventBridgeTargetLambdaProps</a></li><li><a href="ApiToEventBridgeTargetProps.html">ApiToEventBridgeTargetProps</a></li><li><a href="ApiToEventBridgeTargetRestApiProps.html">ApiToEventBridgeTargetRestApiProps</a></li></ul></div><div class="category"><h2>cdk-utils.app-config-manager</h2><h3>Classes / Construct</h3><ul><li><a href="AppConfigManager.html">AppConfigManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="AppConfigProps.html">AppConfigProps</a></li></ul><h3>Global</h3><ul><li><a href="global.html#ArnsByRegion">ArnsByRegion</a></li></ul></div><div class="category"><h2>cdk-utils.cloudfront-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CloudFrontManager.html">CloudFrontManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="CloudfrontFunctionProps.html">CloudfrontFunctionProps</a></li><li><a href="CloudFrontProps.html">CloudFrontProps</a></li><li><a href="DistributionProps.html">DistributionProps</a></li></ul></div><div class="category"><h2>cdk-utils.cloudtrail-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CloudTrailManager.html">CloudTrailManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="CloudTrailProps.html">CloudTrailProps</a></li></ul></div><div class="category"><h2>cdk-utils.cloudwatch-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CloudWatchManager.html">CloudWatchManager</a></li><li><a href="LogManager.html">LogManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="AlarmProps.html">AlarmProps</a></li><li><a href="AlarmStatusWidgetProps.html">AlarmStatusWidgetProps</a></li><li><a href="DashboardProps.html">DashboardProps</a></li><li><a href="GraphWidgetProps.html">GraphWidgetProps</a></li><li><a href="LogProps.html">LogProps</a></li><li><a href="LogQueryWidgetProps.html">LogQueryWidgetProps</a></li><li><a href="MetricFilterProps.html">MetricFilterProps</a></li><li><a href="MetricProps.html">MetricProps</a></li><li><a href="NumericWidgetProps.html">NumericWidgetProps</a></li><li><a href="TextWidgetProps.html">TextWidgetProps</a></li></ul><h3>Global</h3><ul><li><a href="global.html#CloudWatchWidgetType">CloudWatchWidgetType</a></li></ul></div><div class="category"><h2>cdk-utils.codebuild-manager</h2><h3>Classes / Construct</h3><ul><li><a href="CodeBuildManager.html">CodeBuildManager</a></li></ul></div><div class="category"><h2>cdk-utils.common-construct</h2><h3>Classes / Construct</h3><ul><li><a href="CommonConstruct.html">CommonConstruct</a></li></ul></div><div class="category"><h2>cdk-utils.common-stack</h2><h3>Classes / Construct</h3><ul><li><a href="CommonStack.html">CommonStack</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="CommonStackProps.html">CommonStackProps</a></li></ul></div><div class="category"><h2>cdk-utils.dynamodb-manager</h2><h3>Classes / Construct</h3><ul><li><a href="DynamodbManager.html">DynamodbManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="TableProps.html">TableProps</a></li></ul></div><div class="category"><h2>cdk-utils.ecr-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EcrManager.html">EcrManager</a></li></ul></div><div class="category"><h2>cdk-utils.ecs-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EcsManager.html">EcsManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="EcsClusterProps.html">EcsClusterProps</a></li><li><a href="EcsTaskProps.html">EcsTaskProps</a></li></ul></div><div class="category"><h2>cdk-utils.eks-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EksManager.html">EksManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="EksClusterProps.html">EksClusterProps</a></li></ul></div><div class="category"><h2>cdk-utils.event-manager</h2><h3>Classes / Construct</h3><ul><li><a href="EventManager.html">EventManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="EventBusProps.html">EventBusProps</a></li><li><a href="EventRuleProps.html">EventRuleProps</a></li><li><a href="RuleProps.html">RuleProps</a></li></ul></div><div class="category"><h2>cdk-utils.graphql-api-lambda</h2><h3>Classes / construct</h3><ul><li><a href="GraphQLApiLambda.html">GraphQLApiLambda</a></li></ul><h3>Interfaces / Types</h3><ul><li><a href="GraphQlApiLambdaEnvironment.html">GraphQlApiLambdaEnvironment</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="GraphQlApiLambdaProps.html">GraphQlApiLambdaProps</a></li></ul></div><div class="category"><h2>cdk-utils.iam-manager</h2><h3>Classes / Construct</h3><ul><li><a href="IamManager.html">IamManager</a></li></ul></div><div class="category"><h2>cdk-utils.lambda-manager</h2><h3>Classes / Construct</h3><ul><li><a href="LambdaManager.html">LambdaManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="LambdaEdgeProps.html">LambdaEdgeProps</a></li><li><a href="LambdaProps.html">LambdaProps</a></li></ul><h3>Interfaces / Types</h3><ul><li><a href="LambdaEnvironment.html">LambdaEnvironment</a></li></ul></div><div class="category"><h2>cdk-utils.route53-manager</h2><h3>Classes / Construct</h3><ul><li><a href="Route53Manager.html">Route53Manager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="Route53Props.html">Route53Props</a></li></ul></div><div class="category"><h2>cdk-utils.s3-manager</h2><h3>Classes / Construct</h3><ul><li><a href="S3Manager.html">S3Manager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="LifecycleRule.html">LifecycleRule</a></li><li><a href="S3BucketProps.html">S3BucketProps</a></li></ul></div><div class="category"><h2>cdk-utils.secrets-manager</h2><h3>Classes / Construct</h3><ul><li><a href="SecretsManager.html">SecretsManager</a></li></ul></div><div class="category"><h2>cdk-utils.site-with-ecs-backend</h2><h3>Classes / construct</h3><ul><li><a href="SiteWithEcsBackend.html">SiteWithEcsBackend</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="HealthCheck.html">HealthCheck</a></li><li><a href="SiteWithEcsBackendProps.html">SiteWithEcsBackendProps</a></li></ul></div><div class="category"><h2>cdk-utils.sns-manager</h2><h3>Classes / Construct</h3><ul><li><a href="SnsManager.html">SnsManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="SubscriptionProps.html">SubscriptionProps</a></li></ul></div><div class="category"><h2>cdk-utils.ssm-manager</h2><h3>Classes / Construct</h3><ul><li><a href="SsmManager.html">SsmManager</a></li><li><a href="SSMParameterReader.html">SSMParameterReader</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="SSMParameterReaderProps.html">SSMParameterReaderProps</a></li></ul></div><div class="category"><h2>cdk-utils.static-site</h2><h3>Classes / construct</h3><ul><li><a href="StaticSite.html">StaticSite</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="StaticSiteProps.html">StaticSiteProps</a></li></ul></div><div class="category"><h2>cdk-utils.utils</h2><h3>Global</h3><ul><li><a href="global.html#createCfnOutput">createCfnOutput</a></li><li><a href="global.html#defaultResponseObject">defaultResponseObject</a></li><li><a href="global.html#isDevStage">isDevStage</a></li><li><a href="global.html#isPrdStage">isPrdStage</a></li><li><a href="global.html#isTestStage">isTestStage</a></li><li><a href="global.html#isUatStage">isUatStage</a></li><li><a href="global.html#LogLevel">LogLevel</a></li><li><a href="global.html#redirectError">redirectError</a></li><li><a href="global.html#redirectSuccess">redirectSuccess</a></li></ul></div><div class="category"><h2>cdk-utils.vpc-manager</h2><h3>Classes / Construct</h3><ul><li><a href="VpcManager.html">VpcManager</a></li></ul><h3>Global</h3><ul><li><a href="global.html#CommonVpcIdentifier">CommonVpcIdentifier</a></li></ul></div><div class="category"><h2>cdk-utils.waf-manager</h2><h3>Classes / Construct</h3><ul><li><a href="WafManager.html">WafManager</a></li></ul><h3>Interfaces / Properties</h3><ul><li><a href="WafIPSetProps.html">WafIPSetProps</a></li><li><a href="WafWebACLProps.html">WafWebACLProps</a></li></ul></div>
121
-
122
- </nav>
123
- </div>
124
- <div class="core" id="main-content-wrapper">
125
- <div class="content">
126
- <header class="page-title">
127
- <p>Source</p>
128
- <h1>manager/aws/event-manager.ts</h1>
129
- </header>
130
-
131
-
132
-
133
-
134
-
135
- <section>
136
- <article>
137
- <pre class="prettyprint source linenums"><code>import * as ecs from 'aws-cdk-lib/aws-ecs'
138
- import * as events from 'aws-cdk-lib/aws-events'
139
- import * as iam from 'aws-cdk-lib/aws-iam'
140
- import * as lambda from 'aws-cdk-lib/aws-lambda'
141
- import * as common from '../../common'
142
- import * as types from '../../types'
143
- import * as utils from '../../utils'
144
-
145
- /**
146
- * @stability stable
147
- * @category cdk-utils.event-manager
148
- * @subcategory Construct
149
- * @classdesc Provides operations on AWS EventBridge.
150
- * - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
151
- * - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
152
- * @example
153
- * import * as common from '@gradientedge/cdk-utils'
154
- *
155
- * class CustomConstruct extends common.common.CommonConstruct {
156
- * constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
157
- * super(parent, id, props)
158
- * this.props = props
159
- * this.eventManager.createLambdaRule('MyLambdaRule', this, lambdaFunction)
160
- * }
161
- * }
162
- *
163
- * @see [CDK EventBridge Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_events-readme.html}
164
- */
165
- export class EventManager {
166
- /**
167
- * Method to create an event bus
168
- * @param {string} id scoped id of the resource
169
- * @param {common.CommonConstruct} scope scope in which this resource is defined
170
- * @param {types.EventBusProps} props event bus properties
171
- */
172
- public createEventBus(id: string, scope: common.CommonConstruct, props: types.EventBusProps) {
173
- if (!props) throw 'EventBus props undefined'
174
-
175
- const eventBus = new events.EventBus(scope, `${id}`, {
176
- eventBusName: `${props.eventBusName}-${scope.props.stage}`,
177
- })
178
-
179
- utils.createCfnOutput(`${id}-eventBusName`, scope, eventBus.eventBusName)
180
- utils.createCfnOutput(`${id}-eventBusArn`, scope, eventBus.eventBusArn)
181
-
182
- return eventBus
183
- }
184
-
185
- /**
186
- * Method to create an event rule
187
- * @param {string} id scoped id of the resource
188
- * @param {common.CommonConstruct} scope scope in which this resource is defined
189
- * @param {types.EventRuleProps} props event rule properties
190
- * @param {events.IEventBus?} eventBus optional custom event bus
191
- * @param {events.IRuleTarget[]?} targets optional event targets
192
- */
193
- public createRule(
194
- id: string,
195
- scope: common.CommonConstruct,
196
- props: types.EventRuleProps,
197
- eventBus?: events.IEventBus,
198
- targets?: events.IRuleTarget[]
199
- ) {
200
- if (!props) throw `EventRule props undefined`
201
-
202
- const rule = new events.Rule(scope, `${id}`, {
203
- eventBus: eventBus,
204
- description: props.description,
205
- ruleName: `${props.ruleName}-${scope.props.stage}`,
206
- eventPattern: props.eventPattern,
207
- })
208
-
209
- if (targets &amp;&amp; targets.length > 0) {
210
- targets.forEach(target => {
211
- rule.addTarget(target)
212
- })
213
- }
214
-
215
- utils.createCfnOutput(`${id}-ruleArn`, scope, rule.ruleArn)
216
- utils.createCfnOutput(`${id}-ruleName`, scope, rule.ruleName)
217
-
218
- return rule
219
- }
220
- /**
221
- * @summary Method to create an eventbridge rule with lambda target
222
- * @param {string} id scoped id of the resource
223
- * @param {common.CommonConstruct} scope scope in which this resource is defined
224
- * @param {types.RuleProps} props
225
- * @param {lambda.Function} lambdaFunction
226
- * @param {string} eventBusName
227
- * @param {any} eventPattern
228
- * @param {string} scheduleExpression
229
- */
230
- public createLambdaRule(
231
- id: string,
232
- scope: common.CommonConstruct,
233
- props: types.RuleProps,
234
- lambdaFunction: lambda.Function,
235
- eventBusName?: string,
236
- eventPattern?: any,
237
- scheduleExpression?: string
238
- ) {
239
- if (!props) throw `EventRule props undefined`
240
-
241
- const eventRule = new events.CfnRule(scope, `${id}`, {
242
- description: 'Rule to send notification to lambda function target',
243
- eventBusName: eventBusName,
244
- eventPattern: eventPattern,
245
- scheduleExpression: scheduleExpression,
246
- name: `${props.name}-${scope.props.stage}`,
247
- state: props.state,
248
- targets: [{ arn: lambdaFunction.functionArn, id: `${id}-${scope.props.stage}` }],
249
- })
250
-
251
- new lambda.CfnPermission(scope, `${id}LambdaPermission`, {
252
- action: 'lambda:InvokeFunction',
253
- functionName: lambdaFunction.functionName,
254
- principal: 'events.amazonaws.com',
255
- sourceArn: eventRule.attrArn,
256
- })
257
-
258
- utils.createCfnOutput(`${id}-ruleArn`, scope, eventRule.attrArn)
259
- utils.createCfnOutput(`${id}-ruleName`, scope, eventRule.name)
260
-
261
- return eventRule
262
- }
263
-
264
- /**
265
- * @summary Method to create an eventbridge rule with fargate task target
266
- * @param {string} id scoped id of the resource
267
- * @param {common.CommonConstruct} scope scope in which this resource is defined
268
- * @param {types.RuleProps} props
269
- * @param {ecs.ICluster} cluster
270
- * @param {ecs.ITaskDefinition} task
271
- * @param {string[]} subnetIds
272
- * @param {iam.Role | iam.CfnRole} role
273
- * @param {any} eventPattern
274
- */
275
- public createFargateTaskRule(
276
- id: string,
277
- scope: common.CommonConstruct,
278
- props: types.RuleProps,
279
- cluster: ecs.ICluster,
280
- task: ecs.ITaskDefinition,
281
- subnetIds: string[],
282
- role: iam.Role | iam.CfnRole,
283
- eventPattern?: any
284
- ) {
285
- if (!props) throw `EventRule props undefined`
286
-
287
- const eventRule = new events.CfnRule(scope, `${id}`, {
288
- description: 'Rule to send notification on new objects in data bucket to ecs task target',
289
- eventPattern: eventPattern,
290
- name: `${props.name}-${scope.props.stage}`,
291
- state: props.state,
292
- targets: [
293
- {
294
- arn: cluster.clusterArn,
295
- id: `${id}-${scope.props.stage}`,
296
- ecsParameters: {
297
- launchType: 'FARGATE',
298
- networkConfiguration: {
299
- awsVpcConfiguration: { assignPublicIp: 'ENABLED', subnets: subnetIds },
300
- },
301
- taskCount: 1,
302
- taskDefinitionArn: task.taskDefinitionArn,
303
- },
304
- roleArn: role instanceof iam.Role ? role.roleArn : role.attrArn,
305
- },
306
- ],
307
- })
308
-
309
- utils.createCfnOutput(`${id}-ruleArn`, scope, eventRule.attrArn)
310
- utils.createCfnOutput(`${id}-ruleName`, scope, eventRule.name)
311
-
312
- return eventRule
313
- }
314
- }
315
- </code></pre>
316
- </article>
317
- </section>
318
-
319
-
320
-
321
-
322
- </div>
323
-
324
- </div>
325
- <div id="side-nav" class="side-nav">
326
- </div>
327
- </div>
328
- <script src="scripts/app.min.js"></script>
329
- <script>PR.prettyPrint();</script>
330
- <script src="scripts/linenumber.js"> </script>
331
-
332
- <script src="scripts/search.js"> </script>
333
-
334
-
335
- </body>
336
- </html>