@gradientedge/cdk-utils 4.1.0 → 4.2.1
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.
- package/README.md +37 -9
- package/dist/index.d.ts +3 -25
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -25
- package/dist/index.js.map +1 -1
- package/dist/src/lib/common/commonConstruct.d.ts +30 -50
- package/dist/src/lib/common/commonConstruct.d.ts.map +1 -1
- package/dist/src/lib/common/commonConstruct.js +53 -54
- package/dist/src/lib/common/commonConstruct.js.map +1 -1
- package/dist/src/lib/common/commonStack.d.ts +3 -2
- package/dist/src/lib/common/commonStack.d.ts.map +1 -1
- package/dist/src/lib/common/commonStack.js +2 -1
- package/dist/src/lib/common/commonStack.js.map +1 -1
- package/dist/src/lib/common/index.d.ts +3 -0
- package/dist/src/lib/common/index.d.ts.map +1 -0
- package/dist/src/lib/common/index.js +15 -0
- package/dist/src/lib/common/index.js.map +1 -0
- package/dist/src/lib/construct/graphQLApiLambda.d.ts +6 -5
- package/dist/src/lib/construct/graphQLApiLambda.d.ts.map +1 -1
- package/dist/src/lib/construct/graphQLApiLambda.js +3 -2
- package/dist/src/lib/construct/graphQLApiLambda.js.map +1 -1
- package/dist/src/lib/construct/index.d.ts +4 -0
- package/dist/src/lib/construct/index.d.ts.map +1 -0
- package/dist/src/lib/construct/index.js +16 -0
- package/dist/src/lib/construct/index.js.map +1 -0
- package/dist/src/lib/construct/siteWithEcsBackend.d.ts +21 -8
- package/dist/src/lib/construct/siteWithEcsBackend.d.ts.map +1 -1
- package/dist/src/lib/construct/siteWithEcsBackend.js +33 -5
- package/dist/src/lib/construct/siteWithEcsBackend.js.map +1 -1
- package/dist/src/lib/construct/staticSite.d.ts +18 -5
- package/dist/src/lib/construct/staticSite.d.ts.map +1 -1
- package/dist/src/lib/construct/staticSite.js +31 -2
- package/dist/src/lib/construct/staticSite.js.map +1 -1
- package/dist/src/lib/manager/{acmManager.d.ts → aws/acmManager.d.ts} +9 -8
- package/dist/src/lib/manager/aws/acmManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{acmManager.js → aws/acmManager.js} +9 -8
- package/dist/src/lib/manager/aws/acmManager.js.map +1 -0
- package/dist/src/lib/manager/{apiManager.d.ts → aws/apiManager.d.ts} +12 -11
- package/dist/src/lib/manager/aws/apiManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{apiManager.js → aws/apiManager.js} +12 -11
- package/dist/src/lib/manager/aws/apiManager.js.map +1 -0
- package/dist/src/lib/manager/{appConfigManager.d.ts → aws/appConfigManager.d.ts} +18 -17
- package/dist/src/lib/manager/aws/appConfigManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{appConfigManager.js → aws/appConfigManager.js} +20 -19
- package/dist/src/lib/manager/aws/appConfigManager.js.map +1 -0
- package/dist/src/lib/manager/aws/cloudFrontManager.d.ts +112 -0
- package/dist/src/lib/manager/aws/cloudFrontManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{cloudFrontManager.js → aws/cloudFrontManager.js} +49 -25
- package/dist/src/lib/manager/aws/cloudFrontManager.js.map +1 -0
- package/dist/src/lib/manager/{cloudTrailManager.d.ts → aws/cloudTrailManager.d.ts} +10 -9
- package/dist/src/lib/manager/aws/cloudTrailManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{cloudTrailManager.js → aws/cloudTrailManager.js} +10 -9
- package/dist/src/lib/manager/aws/cloudTrailManager.js.map +1 -0
- package/dist/src/lib/manager/aws/cloudWatchManager.d.ts +121 -0
- package/dist/src/lib/manager/aws/cloudWatchManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{cloudWatchManager.js → aws/cloudWatchManager.js} +48 -36
- package/dist/src/lib/manager/aws/cloudWatchManager.js.map +1 -0
- package/dist/src/lib/manager/aws/codeBuildManager.d.ts +40 -0
- package/dist/src/lib/manager/aws/codeBuildManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{codeBuildManager.js → aws/codeBuildManager.js} +17 -1
- package/dist/src/lib/manager/aws/codeBuildManager.js.map +1 -0
- package/dist/src/lib/manager/{ecrManager.d.ts → aws/ecrManager.d.ts} +8 -7
- package/dist/src/lib/manager/aws/ecrManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{ecrManager.js → aws/ecrManager.js} +8 -7
- package/dist/src/lib/manager/aws/ecrManager.js.map +1 -0
- package/dist/src/lib/manager/{ecsManager.d.ts → aws/ecsManager.d.ts} +13 -12
- package/dist/src/lib/manager/aws/ecsManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{ecsManager.js → aws/ecsManager.js} +13 -12
- package/dist/src/lib/manager/aws/ecsManager.js.map +1 -0
- package/dist/src/lib/manager/{eksManager.d.ts → aws/eksManager.d.ts} +10 -9
- package/dist/src/lib/manager/aws/eksManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{eksManager.js → aws/eksManager.js} +10 -9
- package/dist/src/lib/manager/aws/eksManager.js.map +1 -0
- package/dist/src/lib/manager/{eventManager.d.ts → aws/eventManager.d.ts} +13 -12
- package/dist/src/lib/manager/aws/eventManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{eventManager.js → aws/eventManager.js} +14 -13
- package/dist/src/lib/manager/aws/eventManager.js.map +1 -0
- package/dist/src/lib/manager/aws/iamManager.d.ts +156 -0
- package/dist/src/lib/manager/aws/iamManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{iamManager.js → aws/iamManager.js} +37 -35
- package/dist/src/lib/manager/aws/iamManager.js.map +1 -0
- package/dist/src/lib/manager/aws/index.d.ts +22 -0
- package/dist/src/lib/manager/aws/index.d.ts.map +1 -0
- package/dist/src/lib/manager/aws/index.js +34 -0
- package/dist/src/lib/manager/aws/index.js.map +1 -0
- package/dist/src/lib/manager/{lambdaManager.d.ts → aws/lambdaManager.d.ts} +21 -20
- package/dist/src/lib/manager/aws/lambdaManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{lambdaManager.js → aws/lambdaManager.js} +21 -20
- package/dist/src/lib/manager/aws/lambdaManager.js.map +1 -0
- package/dist/src/lib/manager/aws/logManager.d.ts +51 -0
- package/dist/src/lib/manager/aws/logManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{logManager.js → aws/logManager.js} +14 -13
- package/dist/src/lib/manager/aws/logManager.js.map +1 -0
- package/dist/src/lib/manager/{route53Manager.d.ts → aws/route53Manager.d.ts} +18 -17
- package/dist/src/lib/manager/aws/route53Manager.d.ts.map +1 -0
- package/dist/src/lib/manager/{route53Manager.js → aws/route53Manager.js} +19 -18
- package/dist/src/lib/manager/aws/route53Manager.js.map +1 -0
- package/dist/src/lib/manager/aws/s3Manager.d.ts +73 -0
- package/dist/src/lib/manager/aws/s3Manager.d.ts.map +1 -0
- package/dist/src/lib/manager/{s3Manager.js → aws/s3Manager.js} +17 -16
- package/dist/src/lib/manager/aws/s3Manager.js.map +1 -0
- package/dist/src/lib/manager/{secretsManager.d.ts → aws/secretsManager.d.ts} +8 -7
- package/dist/src/lib/manager/aws/secretsManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{secretsManager.js → aws/secretsManager.js} +6 -5
- package/dist/src/lib/manager/aws/secretsManager.js.map +1 -0
- package/dist/src/lib/manager/aws/snsManager.d.ts +42 -0
- package/dist/src/lib/manager/aws/snsManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{snsManager.js → aws/snsManager.js} +14 -13
- package/dist/src/lib/manager/aws/snsManager.js.map +1 -0
- package/dist/src/lib/manager/aws/ssmManager.d.ts +64 -0
- package/dist/src/lib/manager/aws/ssmManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{ssmManager.js → aws/ssmManager.js} +15 -14
- package/dist/src/lib/manager/aws/ssmManager.js.map +1 -0
- package/dist/src/lib/manager/{vpcManager.d.ts → aws/vpcManager.d.ts} +12 -11
- package/dist/src/lib/manager/aws/vpcManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{vpcManager.js → aws/vpcManager.js} +15 -14
- package/dist/src/lib/manager/aws/vpcManager.js.map +1 -0
- package/dist/src/lib/manager/aws/wafManager.d.ts +39 -0
- package/dist/src/lib/manager/aws/wafManager.d.ts.map +1 -0
- package/dist/src/lib/manager/{wafManager.js → aws/wafManager.js} +14 -13
- package/dist/src/lib/manager/aws/wafManager.js.map +1 -0
- package/dist/src/lib/manager/index.d.ts +2 -0
- package/dist/src/lib/manager/index.d.ts.map +1 -0
- package/dist/src/lib/manager/index.js +14 -0
- package/dist/src/lib/manager/index.js.map +1 -0
- package/dist/src/lib/{types.d.ts → types/aws/index.d.ts} +27 -16
- package/dist/src/lib/types/aws/index.d.ts.map +1 -0
- package/dist/src/lib/{types.js → types/aws/index.js} +1 -1
- package/dist/src/lib/types/aws/index.js.map +1 -0
- package/dist/src/lib/types/index.d.ts +2 -0
- package/dist/src/lib/types/index.d.ts.map +1 -0
- package/dist/src/lib/types/index.js +14 -0
- package/dist/src/lib/types/index.js.map +1 -0
- package/dist/src/lib/utils/aws/index.d.ts +16 -0
- package/dist/src/lib/utils/aws/index.d.ts.map +1 -0
- package/dist/src/lib/utils/aws/index.js +50 -0
- package/dist/src/lib/utils/aws/index.js.map +1 -0
- package/dist/src/lib/{utils.d.ts → utils/index.d.ts} +2 -26
- package/dist/src/lib/utils/index.d.ts.map +1 -0
- package/dist/src/lib/utils/index.js +85 -0
- package/dist/src/lib/utils/index.js.map +1 -0
- package/index.ts +3 -25
- package/package.json +28 -19
- package/src/lib/common/commonConstruct.ts +58 -78
- package/src/lib/common/commonStack.ts +3 -2
- package/src/lib/common/index.ts +2 -0
- package/src/lib/construct/graphQLApiLambda.ts +6 -5
- package/src/lib/construct/index.ts +3 -0
- package/src/lib/construct/siteWithEcsBackend.ts +45 -10
- package/src/lib/construct/staticSite.ts +41 -6
- package/src/lib/manager/{acmManager.ts → aws/acmManager.ts} +13 -12
- package/src/lib/manager/{apiManager.ts → aws/apiManager.ts} +16 -15
- package/src/lib/manager/{appConfigManager.ts → aws/appConfigManager.ts} +32 -27
- package/src/lib/manager/{cloudFrontManager.ts → aws/cloudFrontManager.ts} +69 -40
- package/src/lib/manager/{cloudTrailManager.ts → aws/cloudTrailManager.ts} +14 -13
- package/src/lib/manager/{cloudWatchManager.ts → aws/cloudWatchManager.ts} +80 -57
- package/src/lib/manager/{codeBuildManager.ts → aws/codeBuildManager.ts} +20 -4
- package/src/lib/manager/{ecrManager.ts → aws/ecrManager.ts} +10 -9
- package/src/lib/manager/{ecsManager.ts → aws/ecsManager.ts} +18 -17
- package/src/lib/manager/{eksManager.ts → aws/eksManager.ts} +14 -13
- package/src/lib/manager/{eventManager.ts → aws/eventManager.ts} +20 -19
- package/src/lib/manager/{iamManager.ts → aws/iamManager.ts} +67 -55
- package/src/lib/manager/aws/index.ts +21 -0
- package/src/lib/manager/{lambdaManager.ts → aws/lambdaManager.ts} +31 -30
- package/src/lib/manager/{logManager.ts → aws/logManager.ts} +24 -18
- package/src/lib/manager/{route53Manager.ts → aws/route53Manager.ts} +26 -25
- package/src/lib/manager/{s3Manager.ts → aws/s3Manager.ts} +26 -25
- package/src/lib/manager/{secretsManager.ts → aws/secretsManager.ts} +13 -7
- package/src/lib/manager/{snsManager.ts → aws/snsManager.ts} +20 -19
- package/src/lib/manager/{ssmManager.ts → aws/ssmManager.ts} +26 -20
- package/src/lib/manager/{vpcManager.ts → aws/vpcManager.ts} +19 -18
- package/src/lib/manager/{wafManager.ts → aws/wafManager.ts} +18 -17
- package/src/lib/manager/index.ts +1 -0
- package/src/lib/{types.ts → types/aws/index.ts} +27 -15
- package/src/lib/types/index.ts +1 -0
- package/src/lib/utils/aws/index.ts +34 -0
- package/src/lib/{utils.ts → utils/index.ts} +1 -45
- package/dist/src/lib/manager/acmManager.d.ts.map +0 -1
- package/dist/src/lib/manager/acmManager.js.map +0 -1
- package/dist/src/lib/manager/apiManager.d.ts.map +0 -1
- package/dist/src/lib/manager/apiManager.js.map +0 -1
- package/dist/src/lib/manager/appConfigManager.d.ts.map +0 -1
- package/dist/src/lib/manager/appConfigManager.js.map +0 -1
- package/dist/src/lib/manager/cloudFrontManager.d.ts +0 -100
- package/dist/src/lib/manager/cloudFrontManager.d.ts.map +0 -1
- package/dist/src/lib/manager/cloudFrontManager.js.map +0 -1
- package/dist/src/lib/manager/cloudTrailManager.d.ts.map +0 -1
- package/dist/src/lib/manager/cloudTrailManager.js.map +0 -1
- package/dist/src/lib/manager/cloudWatchManager.d.ts +0 -120
- package/dist/src/lib/manager/cloudWatchManager.d.ts.map +0 -1
- package/dist/src/lib/manager/cloudWatchManager.js.map +0 -1
- package/dist/src/lib/manager/codeBuildManager.d.ts +0 -25
- package/dist/src/lib/manager/codeBuildManager.d.ts.map +0 -1
- package/dist/src/lib/manager/codeBuildManager.js.map +0 -1
- package/dist/src/lib/manager/ecrManager.d.ts.map +0 -1
- package/dist/src/lib/manager/ecrManager.js.map +0 -1
- package/dist/src/lib/manager/ecsManager.d.ts.map +0 -1
- package/dist/src/lib/manager/ecsManager.js.map +0 -1
- package/dist/src/lib/manager/eksManager.d.ts.map +0 -1
- package/dist/src/lib/manager/eksManager.js.map +0 -1
- package/dist/src/lib/manager/eventManager.d.ts.map +0 -1
- package/dist/src/lib/manager/eventManager.js.map +0 -1
- package/dist/src/lib/manager/iamManager.d.ts +0 -154
- package/dist/src/lib/manager/iamManager.d.ts.map +0 -1
- package/dist/src/lib/manager/iamManager.js.map +0 -1
- package/dist/src/lib/manager/lambdaManager.d.ts.map +0 -1
- package/dist/src/lib/manager/lambdaManager.js.map +0 -1
- package/dist/src/lib/manager/logManager.d.ts +0 -50
- package/dist/src/lib/manager/logManager.d.ts.map +0 -1
- package/dist/src/lib/manager/logManager.js.map +0 -1
- package/dist/src/lib/manager/route53Manager.d.ts.map +0 -1
- package/dist/src/lib/manager/route53Manager.js.map +0 -1
- package/dist/src/lib/manager/s3Manager.d.ts +0 -72
- package/dist/src/lib/manager/s3Manager.d.ts.map +0 -1
- package/dist/src/lib/manager/s3Manager.js.map +0 -1
- package/dist/src/lib/manager/secretsManager.d.ts.map +0 -1
- package/dist/src/lib/manager/secretsManager.js.map +0 -1
- package/dist/src/lib/manager/snsManager.d.ts +0 -41
- package/dist/src/lib/manager/snsManager.d.ts.map +0 -1
- package/dist/src/lib/manager/snsManager.js.map +0 -1
- package/dist/src/lib/manager/ssmManager.d.ts +0 -63
- package/dist/src/lib/manager/ssmManager.d.ts.map +0 -1
- package/dist/src/lib/manager/ssmManager.js.map +0 -1
- package/dist/src/lib/manager/vpcManager.d.ts.map +0 -1
- package/dist/src/lib/manager/vpcManager.js.map +0 -1
- package/dist/src/lib/manager/wafManager.d.ts +0 -38
- package/dist/src/lib/manager/wafManager.d.ts.map +0 -1
- package/dist/src/lib/manager/wafManager.js.map +0 -1
- package/dist/src/lib/types.d.ts.map +0 -1
- package/dist/src/lib/types.js.map +0 -1
- package/dist/src/lib/utils.d.ts.map +0 -1
- package/dist/src/lib/utils.js +0 -131
- package/dist/src/lib/utils.js.map +0 -1
|
@@ -22,31 +22,32 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
22
22
|
exports.SnsManager = void 0;
|
|
23
23
|
const sns = __importStar(require("aws-cdk-lib/aws-sns"));
|
|
24
24
|
const subs = __importStar(require("aws-cdk-lib/aws-sns-subscriptions"));
|
|
25
|
-
const
|
|
25
|
+
const utils = __importStar(require("../../utils"));
|
|
26
26
|
/**
|
|
27
27
|
* @stability stable
|
|
28
28
|
* @category Application Integration
|
|
29
29
|
* @summary Provides operations on AWS Simple Notification Service.
|
|
30
|
-
* - A new instance of this class is injected into {@link CommonConstruct} constructor.
|
|
31
|
-
* - If a custom construct extends {@link CommonConstruct}, an instance is available within the context.
|
|
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
32
|
* @example
|
|
33
33
|
* import * as common from '@gradientedge/cdk-utils'
|
|
34
34
|
*
|
|
35
|
-
* class CustomConstruct extends common.CommonConstruct {
|
|
35
|
+
* class CustomConstruct extends common.common.CommonConstruct {
|
|
36
36
|
* constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
|
|
37
37
|
* super(parent, id, props)
|
|
38
38
|
* this.props = props
|
|
39
39
|
* this.snsManager.createEmailNotificationService('MySns', 'eu-west-1', ['test@example.com'])
|
|
40
|
+
* }
|
|
40
41
|
* }
|
|
41
42
|
*
|
|
42
|
-
* @see [CDK Simple Notification Service Module]{@link https://docs.aws.amazon.com/cdk/api/
|
|
43
|
+
* @see [CDK Simple Notification Service Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sns-readme.html}
|
|
43
44
|
*/
|
|
44
45
|
class SnsManager {
|
|
45
46
|
/**
|
|
46
47
|
* @summary Method to create an email notification service
|
|
47
48
|
* @param {string} id scoped id of the resource
|
|
48
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
49
|
-
* @param {SubscriptionProps} props
|
|
49
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
50
|
+
* @param {types.SubscriptionProps} props
|
|
50
51
|
* @param {string[]} emails
|
|
51
52
|
*/
|
|
52
53
|
createEmailNotificationService(id, scope, props, emails) {
|
|
@@ -60,15 +61,15 @@ class SnsManager {
|
|
|
60
61
|
if (emails && emails.length > 0) {
|
|
61
62
|
emails.forEach((email) => topic.addSubscription(new subs.EmailSubscription(email)));
|
|
62
63
|
}
|
|
63
|
-
|
|
64
|
-
|
|
64
|
+
utils.createCfnOutput(`${id}-subscriptionArn`, scope, topic.topicArn);
|
|
65
|
+
utils.createCfnOutput(`${id}-subscriptionName`, scope, topic.topicName);
|
|
65
66
|
return topic;
|
|
66
67
|
}
|
|
67
68
|
/**
|
|
68
69
|
* @summary Method to create a lambda notification service
|
|
69
70
|
* @param {string} id scoped id of the resource
|
|
70
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
71
|
-
* @param {SubscriptionProps} props
|
|
71
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
72
|
+
* @param {types.SubscriptionProps} props
|
|
72
73
|
* @param {lambda.Function} lambdaFunction
|
|
73
74
|
*/
|
|
74
75
|
createLambdaNotificationService(id, scope, props, lambdaFunction) {
|
|
@@ -80,8 +81,8 @@ class SnsManager {
|
|
|
80
81
|
fifo: props.fifo,
|
|
81
82
|
});
|
|
82
83
|
topic.addSubscription(new subs.LambdaSubscription(lambdaFunction));
|
|
83
|
-
|
|
84
|
-
|
|
84
|
+
utils.createCfnOutput(`${id}-subscriptionArn`, scope, topic.topicArn);
|
|
85
|
+
utils.createCfnOutput(`${id}-subscriptionName`, scope, topic.topicName);
|
|
85
86
|
return topic;
|
|
86
87
|
}
|
|
87
88
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snsManager.js","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/snsManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,yDAA0C;AAC1C,wEAAyD;AAGzD,mDAAoC;AAEpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAa,UAAU;IACrB;;;;;;OAMG;IACI,8BAA8B,CACnC,EAAU,EACV,KAA6B,EAC7B,KAA8B,EAC9B,MAAgB;QAEhB,IAAI,CAAC,KAAK;YAAE,MAAM,8BAA8B,CAAA;QAEhD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,EAAE;YACrC,WAAW,EAAE,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;YACtD,SAAS,EAAE,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;YACpD,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC,CAAA;QAEF,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,MAAM,CAAC,OAAO,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;SAC5F;QAED,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;QACrE,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,mBAAmB,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;QAEvE,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;;;OAMG;IACI,+BAA+B,CACpC,EAAU,EACV,KAA6B,EAC7B,KAA8B,EAC9B,cAA+B;QAE/B,IAAI,CAAC,KAAK;YAAE,MAAM,8BAA8B,CAAA;QAEhD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,EAAE;YACrC,WAAW,EAAE,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;YACtD,SAAS,EAAE,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;YACpD,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC,CAAA;QAEF,KAAK,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAAA;QAElE,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;QACrE,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,mBAAmB,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;QAEvE,OAAO,KAAK,CAAA;IACd,CAAC;CACF;AA5DD,gCA4DC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import * as ssm from 'aws-cdk-lib/aws-ssm';
|
|
2
|
+
import * as cr from 'aws-cdk-lib/custom-resources';
|
|
3
|
+
import * as common from '../../common';
|
|
4
|
+
import * as types from '../../types';
|
|
5
|
+
/**
|
|
6
|
+
* @stability stable
|
|
7
|
+
* @category Management & Governance
|
|
8
|
+
* @summary Provides operations on AWS Systems Manager.
|
|
9
|
+
* - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
|
|
10
|
+
* - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
|
|
11
|
+
* @example
|
|
12
|
+
* import { common.CommonConstruct } from '@gradientedge/cdk-utils'
|
|
13
|
+
*
|
|
14
|
+
* class CustomConstruct extends common.CommonConstruct {
|
|
15
|
+
* constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
|
|
16
|
+
* super(parent, id, props)
|
|
17
|
+
* this.props = props
|
|
18
|
+
* this.acmManager.writeStringToParameters('MyParameter', this, ...props)
|
|
19
|
+
* }
|
|
20
|
+
* }
|
|
21
|
+
*
|
|
22
|
+
* @see [CDK Systems Manager Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ssm-readme.html}
|
|
23
|
+
*/
|
|
24
|
+
export declare class SsmManager {
|
|
25
|
+
/**
|
|
26
|
+
* Method to write a string parameter to the parameters store
|
|
27
|
+
* @param {string} id scoped id of the resource
|
|
28
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
29
|
+
* @param {ssm.StringParameterProps} props parameter props
|
|
30
|
+
*/
|
|
31
|
+
writeStringToParameters(id: string, scope: common.CommonConstruct, props: ssm.StringParameterProps): ssm.StringParameter;
|
|
32
|
+
/**
|
|
33
|
+
* Method to read a string parameter from the parameters store
|
|
34
|
+
* @param {string} id scoped id of the resource
|
|
35
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
36
|
+
* @param {string} parameterName parameter name to lookup
|
|
37
|
+
*/
|
|
38
|
+
readStringParameter(id: string, scope: common.CommonConstruct, parameterName: string): string;
|
|
39
|
+
/**
|
|
40
|
+
* Method to read a string parameter from the parameters store in a given region
|
|
41
|
+
* @param {string} id scoped id of the resource
|
|
42
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
43
|
+
* @param {string} parameterName parameter name to lookup
|
|
44
|
+
* @param {string} region region name to lookup parameter
|
|
45
|
+
*/
|
|
46
|
+
readStringParameterFromRegion(id: string, scope: common.CommonConstruct, parameterName: string, region: string): string;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
*
|
|
50
|
+
*/
|
|
51
|
+
export declare class SSMParameterReader extends cr.AwsCustomResource {
|
|
52
|
+
/**
|
|
53
|
+
*
|
|
54
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
55
|
+
* @param {string} name parameter name
|
|
56
|
+
* @param {types.SSMParameterReaderProps} props
|
|
57
|
+
*/
|
|
58
|
+
constructor(scope: common.CommonConstruct, name: string, props: types.SSMParameterReaderProps);
|
|
59
|
+
/**
|
|
60
|
+
*
|
|
61
|
+
*/
|
|
62
|
+
getParameterValue(): string;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=ssmManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ssmManager.d.ts","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/ssmManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,EAAE,MAAM,8BAA8B,CAAA;AAClD,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AAGpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,UAAU;IACrB;;;;;OAKG;IACI,uBAAuB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,CAAC,oBAAoB;IAezG;;;;;OAKG;IACI,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,aAAa,EAAE,MAAM;IAM3F;;;;;;OAMG;IACI,6BAA6B,CAClC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,CAAC,eAAe,EAC7B,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM;CAUjB;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,EAAE,CAAC,iBAAiB;IAC1D;;;;;OAKG;gBACS,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,uBAAuB;IAmB7F;;OAEG;IACI,iBAAiB,IAAI,MAAM;CAGnC"}
|
|
@@ -21,31 +21,32 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
22
|
exports.SSMParameterReader = exports.SsmManager = void 0;
|
|
23
23
|
const ssm = __importStar(require("aws-cdk-lib/aws-ssm"));
|
|
24
|
-
const utils_1 = require("../utils");
|
|
25
24
|
const cr = __importStar(require("aws-cdk-lib/custom-resources"));
|
|
25
|
+
const utils = __importStar(require("../../utils"));
|
|
26
26
|
/**
|
|
27
27
|
* @stability stable
|
|
28
28
|
* @category Management & Governance
|
|
29
29
|
* @summary Provides operations on AWS Systems Manager.
|
|
30
|
-
* - A new instance of this class is injected into {@link CommonConstruct} constructor.
|
|
31
|
-
* - If a custom construct extends {@link CommonConstruct}, an instance is available within the context.
|
|
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
32
|
* @example
|
|
33
|
-
* import { CommonConstruct } from '@gradientedge/cdk-utils'
|
|
33
|
+
* import { common.CommonConstruct } from '@gradientedge/cdk-utils'
|
|
34
34
|
*
|
|
35
|
-
* class CustomConstruct extends CommonConstruct {
|
|
35
|
+
* class CustomConstruct extends common.CommonConstruct {
|
|
36
36
|
* constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
|
|
37
37
|
* super(parent, id, props)
|
|
38
38
|
* this.props = props
|
|
39
39
|
* this.acmManager.writeStringToParameters('MyParameter', this, ...props)
|
|
40
|
+
* }
|
|
40
41
|
* }
|
|
41
42
|
*
|
|
42
|
-
* @see [CDK Systems Manager Module]{@link https://docs.aws.amazon.com/cdk/api/
|
|
43
|
+
* @see [CDK Systems Manager Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ssm-readme.html}
|
|
43
44
|
*/
|
|
44
45
|
class SsmManager {
|
|
45
46
|
/**
|
|
46
47
|
* Method to write a string parameter to the parameters store
|
|
47
48
|
* @param {string} id scoped id of the resource
|
|
48
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
49
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
49
50
|
* @param {ssm.StringParameterProps} props parameter props
|
|
50
51
|
*/
|
|
51
52
|
writeStringToParameters(id, scope, props) {
|
|
@@ -56,14 +57,14 @@ class SsmManager {
|
|
|
56
57
|
description: `${props.description} - ${scope.props.stage} stage`,
|
|
57
58
|
stringValue: props.stringValue,
|
|
58
59
|
});
|
|
59
|
-
|
|
60
|
-
|
|
60
|
+
utils.createCfnOutput(`${id}-parameterArn`, scope, parameter.parameterArn);
|
|
61
|
+
utils.createCfnOutput(`${id}-parameterName`, scope, parameter.parameterName);
|
|
61
62
|
return parameter;
|
|
62
63
|
}
|
|
63
64
|
/**
|
|
64
65
|
* Method to read a string parameter from the parameters store
|
|
65
66
|
* @param {string} id scoped id of the resource
|
|
66
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
67
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
67
68
|
* @param {string} parameterName parameter name to lookup
|
|
68
69
|
*/
|
|
69
70
|
readStringParameter(id, scope, parameterName) {
|
|
@@ -74,7 +75,7 @@ class SsmManager {
|
|
|
74
75
|
/**
|
|
75
76
|
* Method to read a string parameter from the parameters store in a given region
|
|
76
77
|
* @param {string} id scoped id of the resource
|
|
77
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
78
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
78
79
|
* @param {string} parameterName parameter name to lookup
|
|
79
80
|
* @param {string} region region name to lookup parameter
|
|
80
81
|
*/
|
|
@@ -96,9 +97,9 @@ exports.SsmManager = SsmManager;
|
|
|
96
97
|
class SSMParameterReader extends cr.AwsCustomResource {
|
|
97
98
|
/**
|
|
98
99
|
*
|
|
99
|
-
* @param scope
|
|
100
|
-
* @param name
|
|
101
|
-
* @param props
|
|
100
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
101
|
+
* @param {string} name parameter name
|
|
102
|
+
* @param {types.SSMParameterReaderProps} props
|
|
102
103
|
*/
|
|
103
104
|
constructor(scope, name, props) {
|
|
104
105
|
const { parameterName, region } = props;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ssmManager.js","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/ssmManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,yDAA0C;AAC1C,iEAAkD;AAGlD,mDAAoC;AAEpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAa,UAAU;IACrB;;;;;OAKG;IACI,uBAAuB,CAAC,EAAU,EAAE,KAA6B,EAAE,KAA+B;QACvG,IAAI,CAAC,KAAK;YAAE,MAAM,2BAA2B,CAAA;QAE7C,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACxD,aAAa,EAAE,GAAG,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;YAC5D,WAAW,EAAE,GAAG,KAAK,CAAC,WAAW,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,QAAQ;YAChE,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC,CAAA;QAEF,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,SAAS,CAAC,YAAY,CAAC,CAAA;QAC1E,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,CAAA;QAE5E,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;;;;OAKG;IACI,mBAAmB,CAAC,EAAU,EAAE,KAA6B,EAAE,aAAqB;QACzF,IAAI,CAAC,aAAa,IAAI,aAAa,IAAI,EAAE;YAAE,MAAM,wBAAwB,CAAA;QAEzE,OAAO,GAAG,CAAC,eAAe,CAAC,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC,WAAW,CAAA;IAC/F,CAAC;IAED;;;;;;OAMG;IACI,6BAA6B,CAClC,EAAU,EACV,KAA6B,EAC7B,aAAqB,EACrB,MAAc;QAEd,IAAI,CAAC,aAAa,IAAI,aAAa,IAAI,EAAE;YAAE,MAAM,wBAAwB,CAAA;QACzE,IAAI,CAAC,MAAM,IAAI,MAAM,IAAI,EAAE;YAAE,MAAM,gBAAgB,CAAA;QAEnD,OAAO,IAAI,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAC5C,aAAa,EAAE,aAAa;YAC5B,MAAM,EAAE,MAAM;SACf,CAAC,CAAC,iBAAiB,EAAE,CAAA;IACxB,CAAC;CACF;AAvDD,gCAuDC;AAED;;GAEG;AACH,MAAa,kBAAmB,SAAQ,EAAE,CAAC,iBAAiB;IAC1D;;;;;OAKG;IACH,YAAY,KAA6B,EAAE,IAAY,EAAE,KAAoC;QAC3F,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;QAEvC,MAAM,aAAa,GAAkB;YACnC,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,cAAc;YACtB,UAAU,EAAE;gBACV,IAAI,EAAE,GAAG,aAAa,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;aAC9C;YACD,MAAM;YACN,kBAAkB,EAAE,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;SACpE,CAAA;QAED,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE;YACjB,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,EAAE,CAAC,uBAAuB,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,uBAAuB,CAAC,YAAY,EAAE,CAAC;SACxG,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACI,iBAAiB;QACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAA;IACjD,CAAC;CACF;AAhCD,gDAgCC"}
|
|
@@ -1,43 +1,44 @@
|
|
|
1
1
|
import * as cdk from 'aws-cdk-lib';
|
|
2
2
|
import * as ec2 from 'aws-cdk-lib/aws-ec2';
|
|
3
|
-
import
|
|
3
|
+
import * as common from '../../common';
|
|
4
4
|
/**
|
|
5
5
|
* @category Networking & Content Delivery
|
|
6
6
|
* @summary Provides operations on AWS VPC.
|
|
7
|
-
* - A new instance of this class is injected into {@link CommonConstruct} constructor.
|
|
8
|
-
* - If a custom construct extends {@link CommonConstruct}, an instance is available within the context.
|
|
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
9
|
* @example
|
|
10
10
|
* import * as common from '@gradientedge/cdk-utils'
|
|
11
11
|
*
|
|
12
|
-
* class CustomConstruct extends common.CommonConstruct {
|
|
12
|
+
* class CustomConstruct extends common.common.CommonConstruct {
|
|
13
13
|
* constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
|
|
14
14
|
* super(parent, id, props)
|
|
15
15
|
* this.props = props
|
|
16
16
|
* this.vpcManager.createVpc('MyVPC', this)
|
|
17
|
+
* }
|
|
17
18
|
* }
|
|
18
19
|
*
|
|
19
|
-
* @see [CDK VPC Module]{@link https://docs.aws.amazon.com/cdk/api/
|
|
20
|
+
* @see [CDK VPC Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.@aws-cdk_aws-ec2.Vpc.html}
|
|
20
21
|
*/
|
|
21
22
|
export declare class VpcManager {
|
|
22
23
|
/**
|
|
23
24
|
* @summary Method to create a new vpc
|
|
24
25
|
* @param {string} id scoped id of the resource
|
|
25
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
26
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
26
27
|
* @param {ec2.VpcProps} props
|
|
27
28
|
*/
|
|
28
|
-
createVpc(id: string, scope: CommonConstruct, props: ec2.VpcProps): cdk.aws_ec2.Vpc;
|
|
29
|
+
createVpc(id: string, scope: common.CommonConstruct, props: ec2.VpcProps): cdk.aws_ec2.Vpc;
|
|
29
30
|
/**
|
|
30
31
|
* @summary Method to create a common vpc
|
|
31
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
32
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
32
33
|
* @param {ec2.VpcProps} props
|
|
33
34
|
* @param {string?} vpcIdentifier optional identifier for VPC
|
|
34
35
|
*/
|
|
35
|
-
createCommonVpc(scope: CommonConstruct, props: ec2.VpcProps, vpcIdentifier?: string): cdk.aws_ec2.Vpc;
|
|
36
|
+
createCommonVpc(scope: common.CommonConstruct, props: ec2.VpcProps, vpcIdentifier?: string): cdk.aws_ec2.Vpc;
|
|
36
37
|
/**
|
|
37
38
|
* @summary Method to retrieve a common vpc
|
|
38
39
|
* @param {string} id scoped id of the resource
|
|
39
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
40
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
40
41
|
*/
|
|
41
|
-
retrieveCommonVpc(id: string, scope: CommonConstruct): cdk.aws_ec2.IVpc;
|
|
42
|
+
retrieveCommonVpc(id: string, scope: common.CommonConstruct): cdk.aws_ec2.IVpc;
|
|
42
43
|
}
|
|
43
44
|
//# sourceMappingURL=vpcManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vpcManager.d.ts","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/vpcManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAA;AAClC,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AAStC;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,UAAU;IACrB;;;;;OAKG;IACI,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ;IAwB/E;;;;;OAKG;IACI,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,MAAM;IAOjG;;;;OAIG;IACI,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe;CAGnE"}
|
|
@@ -22,7 +22,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
22
22
|
exports.VpcManager = void 0;
|
|
23
23
|
const cdk = __importStar(require("aws-cdk-lib"));
|
|
24
24
|
const ec2 = __importStar(require("aws-cdk-lib/aws-ec2"));
|
|
25
|
-
const
|
|
25
|
+
const utils = __importStar(require("../../utils"));
|
|
26
26
|
/**
|
|
27
27
|
* @stability stable
|
|
28
28
|
* @category Utils
|
|
@@ -31,25 +31,26 @@ const CommonVpcIdentifier = 'CommonVpc';
|
|
|
31
31
|
/**
|
|
32
32
|
* @category Networking & Content Delivery
|
|
33
33
|
* @summary Provides operations on AWS VPC.
|
|
34
|
-
* - A new instance of this class is injected into {@link CommonConstruct} constructor.
|
|
35
|
-
* - If a custom construct extends {@link CommonConstruct}, an instance is available within the context.
|
|
34
|
+
* - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
|
|
35
|
+
* - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
|
|
36
36
|
* @example
|
|
37
37
|
* import * as common from '@gradientedge/cdk-utils'
|
|
38
38
|
*
|
|
39
|
-
* class CustomConstruct extends common.CommonConstruct {
|
|
39
|
+
* class CustomConstruct extends common.common.CommonConstruct {
|
|
40
40
|
* constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
|
|
41
41
|
* super(parent, id, props)
|
|
42
42
|
* this.props = props
|
|
43
43
|
* this.vpcManager.createVpc('MyVPC', this)
|
|
44
|
+
* }
|
|
44
45
|
* }
|
|
45
46
|
*
|
|
46
|
-
* @see [CDK VPC Module]{@link https://docs.aws.amazon.com/cdk/api/
|
|
47
|
+
* @see [CDK VPC Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.@aws-cdk_aws-ec2.Vpc.html}
|
|
47
48
|
*/
|
|
48
49
|
class VpcManager {
|
|
49
50
|
/**
|
|
50
51
|
* @summary Method to create a new vpc
|
|
51
52
|
* @param {string} id scoped id of the resource
|
|
52
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
53
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
53
54
|
* @param {ec2.VpcProps} props
|
|
54
55
|
*/
|
|
55
56
|
createVpc(id, scope, props) {
|
|
@@ -58,17 +59,17 @@ class VpcManager {
|
|
|
58
59
|
const vpc = new ec2.Vpc(scope, `${id}`, {
|
|
59
60
|
maxAzs: props.maxAzs,
|
|
60
61
|
});
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
62
|
+
utils.createCfnOutput(`${id}Id`, scope, vpc.vpcId);
|
|
63
|
+
utils.createCfnOutput(`${id}PublicSubnetIds`, scope, vpc.publicSubnets.map(subnet => subnet.subnetId).toString());
|
|
64
|
+
utils.createCfnOutput(`${id}PrivateSubnetIds`, scope, vpc.privateSubnets.map(subnet => subnet.subnetId).toString());
|
|
65
|
+
utils.createCfnOutput(`${id}PublicSubnetRouteTableIds`, scope, vpc.publicSubnets.map(subnet => subnet.routeTable.routeTableId).toString());
|
|
66
|
+
utils.createCfnOutput(`${id}PrivateSubnetRouteTableIds`, scope, vpc.privateSubnets.map(subnet => subnet.routeTable.routeTableId).toString());
|
|
67
|
+
utils.createCfnOutput(`${id}AvailabilityZones`, scope, vpc.availabilityZones.toString());
|
|
67
68
|
return vpc;
|
|
68
69
|
}
|
|
69
70
|
/**
|
|
70
71
|
* @summary Method to create a common vpc
|
|
71
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
72
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
72
73
|
* @param {ec2.VpcProps} props
|
|
73
74
|
* @param {string?} vpcIdentifier optional identifier for VPC
|
|
74
75
|
*/
|
|
@@ -80,7 +81,7 @@ class VpcManager {
|
|
|
80
81
|
/**
|
|
81
82
|
* @summary Method to retrieve a common vpc
|
|
82
83
|
* @param {string} id scoped id of the resource
|
|
83
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
84
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
84
85
|
*/
|
|
85
86
|
retrieveCommonVpc(id, scope) {
|
|
86
87
|
return ec2.Vpc.fromLookup(scope, `${id}`, { vpcName: CommonVpcIdentifier });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vpcManager.js","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/vpcManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAkC;AAClC,yDAA0C;AAE1C,mDAAoC;AAEpC;;;GAGG;AACH,MAAM,mBAAmB,GAAG,WAAW,CAAA;AAEvC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAa,UAAU;IACrB;;;;;OAKG;IACI,SAAS,CAAC,EAAU,EAAE,KAA6B,EAAE,KAAmB;QAC7E,IAAI,CAAC,KAAK;YAAE,MAAM,qBAAqB,CAAA;QACvC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC,CAAA;QAEF,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAA;QAClD,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;QACjH,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;QACnH,KAAK,CAAC,eAAe,CACnB,GAAG,EAAE,2BAA2B,EAChC,KAAK,EACL,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAC3E,CAAA;QACD,KAAK,CAAC,eAAe,CACnB,GAAG,EAAE,4BAA4B,EACjC,KAAK,EACL,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAC5E,CAAA;QACD,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,mBAAmB,EAAE,KAAK,EAAE,GAAG,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAA;QAExF,OAAO,GAAG,CAAA;IACZ,CAAC;IAED;;;;;OAKG;IACI,eAAe,CAAC,KAA6B,EAAE,KAAmB,EAAE,aAAsB;QAC/F,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;QAC7D,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,IAAI,mBAAmB,CAAC,CAAA;QAElE,OAAO,GAAG,CAAA;IACZ,CAAC;IAED;;;;OAIG;IACI,iBAAiB,CAAC,EAAU,EAAE,KAA6B;QAChE,OAAO,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAA;IAC7E,CAAC;CACF;AApDD,gCAoDC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import * as wafv2 from 'aws-cdk-lib/aws-wafv2';
|
|
2
|
+
import * as common from '../../common';
|
|
3
|
+
import * as types from '../../types';
|
|
4
|
+
/**
|
|
5
|
+
* @stability stable
|
|
6
|
+
* @category Security, Identity & Compliance
|
|
7
|
+
* @summary Provides operations on AWS WAF.
|
|
8
|
+
* - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
|
|
9
|
+
* - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
|
|
10
|
+
* @example
|
|
11
|
+
* import * as common from '@gradientedge/cdk-utils'
|
|
12
|
+
*
|
|
13
|
+
* class CustomConstruct extends common.common.CommonConstruct {
|
|
14
|
+
* constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
|
|
15
|
+
* super(parent, id, props)
|
|
16
|
+
* this.props = props
|
|
17
|
+
* this.wafManager.createWebAcl('MyWebAcl', this)
|
|
18
|
+
* }
|
|
19
|
+
* }
|
|
20
|
+
*
|
|
21
|
+
* @see [CDK WAF Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_waf-readme.html}
|
|
22
|
+
*/
|
|
23
|
+
export declare class WafManager {
|
|
24
|
+
/**
|
|
25
|
+
* @summary Method to create an ip set
|
|
26
|
+
* @param {string} id scoped id of the resource
|
|
27
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
28
|
+
* @param {types.WafIPSetProps} props
|
|
29
|
+
*/
|
|
30
|
+
createIpSet(id: string, scope: common.CommonConstruct, props: types.WafIPSetProps): wafv2.CfnIPSet;
|
|
31
|
+
/**
|
|
32
|
+
* @summary Method to create a web acl
|
|
33
|
+
* @param {string} id scoped id of the resource
|
|
34
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
35
|
+
* @param {types.WafWebACLProps} props
|
|
36
|
+
*/
|
|
37
|
+
createWebAcl(id: string, scope: common.CommonConstruct, props: types.WafWebACLProps): wafv2.CfnWebACL;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=wafManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wafManager.d.ts","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/wafManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,uBAAuB,CAAA;AAC9C,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AAGpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,UAAU;IACrB;;;;;OAKG;IACI,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,aAAa;IAiBxF;;;;;OAKG;IACI,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,cAAc;CAkB3F"}
|
|
@@ -21,31 +21,32 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
22
|
exports.WafManager = void 0;
|
|
23
23
|
const wafv2 = __importStar(require("aws-cdk-lib/aws-wafv2"));
|
|
24
|
-
const
|
|
24
|
+
const utils = __importStar(require("../../utils"));
|
|
25
25
|
/**
|
|
26
26
|
* @stability stable
|
|
27
27
|
* @category Security, Identity & Compliance
|
|
28
28
|
* @summary Provides operations on AWS WAF.
|
|
29
|
-
* - A new instance of this class is injected into {@link CommonConstruct} constructor.
|
|
30
|
-
* - If a custom construct extends {@link CommonConstruct}, an instance is available within the context.
|
|
29
|
+
* - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
|
|
30
|
+
* - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
|
|
31
31
|
* @example
|
|
32
32
|
* import * as common from '@gradientedge/cdk-utils'
|
|
33
33
|
*
|
|
34
|
-
* class CustomConstruct extends common.CommonConstruct {
|
|
34
|
+
* class CustomConstruct extends common.common.CommonConstruct {
|
|
35
35
|
* constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
|
|
36
36
|
* super(parent, id, props)
|
|
37
37
|
* this.props = props
|
|
38
38
|
* this.wafManager.createWebAcl('MyWebAcl', this)
|
|
39
|
+
* }
|
|
39
40
|
* }
|
|
40
41
|
*
|
|
41
|
-
* @see [CDK WAF Module]{@link https://docs.aws.amazon.com/cdk/api/
|
|
42
|
+
* @see [CDK WAF Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_waf-readme.html}
|
|
42
43
|
*/
|
|
43
44
|
class WafManager {
|
|
44
45
|
/**
|
|
45
46
|
* @summary Method to create an ip set
|
|
46
47
|
* @param {string} id scoped id of the resource
|
|
47
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
48
|
-
* @param {WafIPSetProps} props
|
|
48
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
49
|
+
* @param {types.WafIPSetProps} props
|
|
49
50
|
*/
|
|
50
51
|
createIpSet(id, scope, props) {
|
|
51
52
|
if (!props)
|
|
@@ -57,15 +58,15 @@ class WafManager {
|
|
|
57
58
|
ipAddressVersion: props.ipAddressVersion,
|
|
58
59
|
scope: props.scope,
|
|
59
60
|
});
|
|
60
|
-
|
|
61
|
-
|
|
61
|
+
utils.createCfnOutput(`${id}-ipSetId`, scope, ipSet.attrId);
|
|
62
|
+
utils.createCfnOutput(`${id}-ipSetArn`, scope, ipSet.attrArn);
|
|
62
63
|
return ipSet;
|
|
63
64
|
}
|
|
64
65
|
/**
|
|
65
66
|
* @summary Method to create a web acl
|
|
66
67
|
* @param {string} id scoped id of the resource
|
|
67
|
-
* @param {CommonConstruct} scope scope in which this resource is defined
|
|
68
|
-
* @param {WafWebACLProps} props
|
|
68
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
69
|
+
* @param {types.WafWebACLProps} props
|
|
69
70
|
*/
|
|
70
71
|
createWebAcl(id, scope, props) {
|
|
71
72
|
if (!props)
|
|
@@ -79,8 +80,8 @@ class WafManager {
|
|
|
79
80
|
rules: props.rules,
|
|
80
81
|
tags: [{ key: 'service', value: scope.props.name }],
|
|
81
82
|
});
|
|
82
|
-
|
|
83
|
-
|
|
83
|
+
utils.createCfnOutput(`${id}-webAclId`, scope, webAcl.attrId);
|
|
84
|
+
utils.createCfnOutput(`${id}-webAclArn`, scope, webAcl.attrArn);
|
|
84
85
|
return webAcl;
|
|
85
86
|
}
|
|
86
87
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wafManager.js","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/wafManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,6DAA8C;AAG9C,mDAAoC;AAEpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAa,UAAU;IACrB;;;;;OAKG;IACI,WAAW,CAAC,EAAU,EAAE,KAA6B,EAAE,KAA0B;QACtF,IAAI,CAAC,KAAK;YAAE,MAAM,4BAA4B,CAAA;QAE9C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/C,IAAI,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;YACnF,WAAW,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,QAAQ;YAC5D,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAA;QAEF,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;QAC3D,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;QAE7D,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;;OAKG;IACI,YAAY,CAAC,EAAU,EAAE,KAA6B,EAAE,KAA2B;QACxF,IAAI,CAAC,KAAK;YAAE,MAAM,4BAA4B,CAAA;QAE9C,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACjD,IAAI,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;YACnF,WAAW,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,QAAQ;YAC7D,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SACpD,CAAC,CAAA;QAEF,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;QAC7D,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;QAE/D,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAhDD,gCAgDC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/manager/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
+
};
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
__exportStar(require("./aws"), exports);
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/manager/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAAqB"}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as cdk from 'aws-cdk-lib';
|
|
2
|
+
import * as apig from 'aws-cdk-lib/aws-apigateway';
|
|
2
3
|
import * as appconfig from 'aws-cdk-lib/aws-appconfig';
|
|
3
|
-
import * as
|
|
4
|
-
import * as
|
|
5
|
-
import * as
|
|
6
|
-
import * as logs from 'aws-cdk-lib/aws-logs';
|
|
4
|
+
import * as acm from 'aws-cdk-lib/aws-certificatemanager';
|
|
5
|
+
import * as cloudfront from 'aws-cdk-lib/aws-cloudfront';
|
|
6
|
+
import * as cloudtrail from 'aws-cdk-lib/aws-cloudtrail';
|
|
7
7
|
import * as watch from 'aws-cdk-lib/aws-cloudwatch';
|
|
8
|
-
import * as lambda from 'aws-cdk-lib/aws-lambda';
|
|
9
|
-
import * as ecsPatterns from 'aws-cdk-lib/aws-ecs-patterns';
|
|
10
|
-
import * as events from 'aws-cdk-lib/aws-events';
|
|
11
|
-
import * as eks from 'aws-cdk-lib/aws-eks';
|
|
12
8
|
import * as ec2 from 'aws-cdk-lib/aws-ec2';
|
|
13
9
|
import * as ecs from 'aws-cdk-lib/aws-ecs';
|
|
14
|
-
import * as
|
|
15
|
-
import * as
|
|
16
|
-
import * as acm from 'aws-cdk-lib/aws-certificatemanager';
|
|
17
|
-
import * as cdk from 'aws-cdk-lib';
|
|
18
|
-
import * as s3deploy from 'aws-cdk-lib/aws-s3-deployment';
|
|
19
|
-
import * as apig from 'aws-cdk-lib/aws-apigateway';
|
|
10
|
+
import * as ecsPatterns from 'aws-cdk-lib/aws-ecs-patterns';
|
|
11
|
+
import * as eks from 'aws-cdk-lib/aws-eks';
|
|
20
12
|
import * as elb from 'aws-cdk-lib/aws-elasticloadbalancingv2';
|
|
13
|
+
import * as events from 'aws-cdk-lib/aws-events';
|
|
14
|
+
import * as lambda from 'aws-cdk-lib/aws-lambda';
|
|
15
|
+
import * as logs from 'aws-cdk-lib/aws-logs';
|
|
16
|
+
import * as route53 from 'aws-cdk-lib/aws-route53';
|
|
17
|
+
import * as s3 from 'aws-cdk-lib/aws-s3';
|
|
18
|
+
import * as s3deploy from 'aws-cdk-lib/aws-s3-deployment';
|
|
19
|
+
import * as sns from 'aws-cdk-lib/aws-sns';
|
|
20
|
+
import * as wafv2 from 'aws-cdk-lib/aws-wafv2';
|
|
21
21
|
/**
|
|
22
22
|
* @category Management & Governance
|
|
23
23
|
*/
|
|
@@ -47,6 +47,8 @@ export interface SiteWithEcsBackendProps extends CommonStackProps {
|
|
|
47
47
|
siteCertificate: AcmProps;
|
|
48
48
|
siteCluster: EcsClusterProps;
|
|
49
49
|
siteDistribution: DistributionProps;
|
|
50
|
+
siteCloudfrontFunctionProps?: CloudfrontFunctionProps;
|
|
51
|
+
siteFunctionFilePath?: string;
|
|
50
52
|
siteEcsContainerImagePath: string;
|
|
51
53
|
siteLog: LogProps;
|
|
52
54
|
siteLogBucket: S3BucketProps;
|
|
@@ -65,6 +67,8 @@ export interface StaticSiteProps extends CommonStackProps {
|
|
|
65
67
|
siteBucket: S3BucketProps;
|
|
66
68
|
siteLogBucket: S3BucketProps;
|
|
67
69
|
siteDistribution?: DistributionProps;
|
|
70
|
+
siteCloudfrontFunctionProps?: CloudfrontFunctionProps;
|
|
71
|
+
siteFunctionFilePath?: string;
|
|
68
72
|
siteSource: s3deploy.ISource;
|
|
69
73
|
siteHostedZoneDomainName?: string;
|
|
70
74
|
siteRecordName?: string;
|
|
@@ -121,6 +125,13 @@ export interface SSMParameterReaderProps {
|
|
|
121
125
|
*/
|
|
122
126
|
export interface CloudFrontProps extends cloudfront.CloudFrontWebDistributionProps {
|
|
123
127
|
}
|
|
128
|
+
/**
|
|
129
|
+
* @category Networking & Content Delivery
|
|
130
|
+
*/
|
|
131
|
+
export interface CloudfrontFunctionProps extends cloudfront.FunctionProps {
|
|
132
|
+
functionFilePath: string;
|
|
133
|
+
eventType: string;
|
|
134
|
+
}
|
|
124
135
|
/**
|
|
125
136
|
* @category Networking & Content Delivery
|
|
126
137
|
*/
|
|
@@ -274,4 +285,4 @@ export interface WafIPSetProps extends wafv2.CfnIPSetProps {
|
|
|
274
285
|
*/
|
|
275
286
|
export interface WafWebACLProps extends wafv2.CfnWebACLProps {
|
|
276
287
|
}
|
|
277
|
-
//# sourceMappingURL=
|
|
288
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/types/aws/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAA;AAClC,OAAO,KAAK,IAAI,MAAM,4BAA4B,CAAA;AAClD,OAAO,KAAK,SAAS,MAAM,2BAA2B,CAAA;AACtD,OAAO,KAAK,GAAG,MAAM,oCAAoC,CAAA;AACzD,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,KAAK,MAAM,4BAA4B,CAAA;AACnD,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,WAAW,MAAM,8BAA8B,CAAA;AAC3D,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAC7D,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAA;AAC5C,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAA;AAClD,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAA;AACzD,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,uBAAuB,CAAA;AAE9C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,SAAS,CAAC,mBAAmB,CAAA;IAC1C,oBAAoB,EAAE,SAAS,CAAC,4BAA4B,CAAA;IAC5D,UAAU,EAAE,SAAS,CAAC,kBAAkB,CAAA;IACxC,kBAAkB,EAAE,SAAS,CAAC,0BAA0B,CAAA;IACxD,WAAW,EAAE,SAAS,CAAC,mBAAmB,CAAA;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,GAAG,CAAC,UAAU;IACtD,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC/D,mCAAmC,CAAC,EAAE,MAAM,CAAA;IAC5C,eAAe,EAAE,WAAW,CAAA;IAC5B,eAAe,EAAE,QAAQ,CAAA;IACzB,WAAW,EAAE,eAAe,CAAA;IAC5B,gBAAgB,EAAE,iBAAiB,CAAA;IACnC,2BAA2B,CAAC,EAAE,uBAAuB,CAAA;IACrD,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,yBAAyB,EAAE,MAAM,CAAA;IACjC,OAAO,EAAE,QAAQ,CAAA;IACjB,aAAa,EAAE,aAAa,CAAA;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,WAAW,CAAC,0CAA0C,CAAA;IAChE,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAA;IACrB,qBAAqB,EAAE,OAAO,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,eAAgB,SAAQ,gBAAgB;IACvD,oBAAoB,EAAE,OAAO,CAAA;IAC7B,eAAe,EAAE,QAAQ,CAAA;IACzB,UAAU,EAAE,aAAa,CAAA;IACzB,aAAa,EAAE,aAAa,CAAA;IAC5B,gBAAgB,CAAC,EAAE,iBAAiB,CAAA;IACpC,2BAA2B,CAAC,EAAE,uBAAuB,CAAA;IACrD,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,MAAM,CAAA;IACjC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,qBAAqB,EAAE,OAAO,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,WAAY,SAAQ,GAAG,CAAC,WAAW;IAClD,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,EAAE,EAAE,MAAM,CAAA;CACX;AAED,MAAM,WAAW,qBAAsB,SAAQ,gBAAgB;IAC7D,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,qBAAqB,EAAE,QAAQ,CAAA;IAC/B,cAAc,EAAE,IAAI,CAAC,kBAAkB,CAAA;IACvC,4BAA4B,CAAC,EAAE,MAAM,CAAC,SAAS,EAAE,CAAA;IACjD,iBAAiB,EAAE,MAAM,CAAA;IACzB,gBAAgB,EAAE,MAAM,CAAC,SAAS,CAAA;IAClC,UAAU,EAAE,WAAW,CAAA;IACvB,qBAAqB,EAAE,OAAO,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,GAAG,CAAC,gBAAgB;IACpD,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,sBAAsB,EAAE,OAAO,CAAA;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,UAAU,CAAC,8BAA8B;CAAG;AAErF;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,UAAU,CAAC,aAAa;IACvE,gBAAgB,EAAE,MAAM,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,UAAU,CAAC,iBAAiB;CAAG;AAE1E;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,UAAU,CAAC,aAAa;CAAG;AAEpE;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,KAAK,CAAC,cAAc;IAC1D,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,KAAK,CAAC,UAAU;IAClD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,WAAW,EAAE,CAAA;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,KAAK,CAAC,WAAW;IACpD,WAAW,EAAE,OAAO,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,KAAK,CAAC,eAAe;IAC5D,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,KAAK,CAAC,sBAAsB;IACtE,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,KAAK,CAAC,WAAW,EAAE,CAAA;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,KAAK,CAAC,gBAAgB;IAC9D,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,WAAW,EAAE,CAAA;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,KAAK,CAAC,sBAAsB;IAC1E,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,CAAA;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,KAAK,CAAC,mBAAmB;IACpE,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,GAAG,CAAC,YAAY;CAAG;AAE5D;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,GAAG,CAAC,mBAAmB;CAAG;AAEhE;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,GAAG,CAAC,YAAY;IACvD,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,MAAM,CAAC,YAAY;CAAG;AAEzD;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,MAAM,CAAC,aAAa;IACvD,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,UAAU,CAAC,YAAY,CAAC,iBAAiB;IAChF,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,IAAI,CAAC,aAAa;CAAG;AAEvD;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,iBAAiB;IAC/D,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,KAAK,CAAC,aAAa,CAAA;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,OAAO,CAAC,eAAe;IAC3D,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC;AAED,MAAM,WAAW,aAAc,SAAQ,EAAE,CAAC,aAAa;IACrD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,iCAAiC,CAAC,EAAE,MAAM,CAAA;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,EAAE,CAAC,WAAW;IACnD,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,cAAc,CAAC,EAAE,aAAa,EAAE,CAAA;IAChC,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,GAAG,CAAC,UAAU;CAAG;AAE5D;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,KAAK,CAAC,aAAa;CAAG;AAE7D;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,KAAK,CAAC,cAAc;CAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/lib/types/aws/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA"}
|