@gradientedge/cdk-utils 4.2.2 → 4.3.2
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/dist/src/lib/common/commonConstruct.d.ts +1 -0
- package/dist/src/lib/common/commonConstruct.d.ts.map +1 -1
- package/dist/src/lib/common/commonConstruct.js +2 -1
- package/dist/src/lib/common/commonConstruct.js.map +1 -1
- package/dist/src/lib/construct/graphQLApiLambda.d.ts +5 -5
- package/dist/src/lib/construct/graphQLApiLambda.d.ts.map +1 -1
- package/dist/src/lib/construct/graphQLApiLambda.js +6 -6
- package/dist/src/lib/construct/graphQLApiLambda.js.map +1 -1
- package/dist/src/lib/construct/siteWithEcsBackend.d.ts +1 -1
- package/dist/src/lib/construct/siteWithEcsBackend.d.ts.map +1 -1
- package/dist/src/lib/construct/siteWithEcsBackend.js +2 -2
- package/dist/src/lib/construct/siteWithEcsBackend.js.map +1 -1
- package/dist/src/lib/construct/staticSite.d.ts +1 -1
- package/dist/src/lib/construct/staticSite.d.ts.map +1 -1
- package/dist/src/lib/construct/staticSite.js +2 -2
- package/dist/src/lib/construct/staticSite.js.map +1 -1
- package/dist/src/lib/manager/aws/apiManager.d.ts.map +1 -1
- package/dist/src/lib/manager/aws/apiManager.js +1 -4
- package/dist/src/lib/manager/aws/apiManager.js.map +1 -1
- package/dist/src/lib/manager/aws/dynamodbManager.d.ts +32 -0
- package/dist/src/lib/manager/aws/dynamodbManager.d.ts.map +1 -0
- package/dist/src/lib/manager/aws/dynamodbManager.js +79 -0
- package/dist/src/lib/manager/aws/dynamodbManager.js.map +1 -0
- package/dist/src/lib/manager/aws/index.d.ts +1 -0
- package/dist/src/lib/manager/aws/index.d.ts.map +1 -1
- package/dist/src/lib/manager/aws/index.js +1 -0
- package/dist/src/lib/manager/aws/index.js.map +1 -1
- package/dist/src/lib/manager/aws/lambdaManager.d.ts +26 -24
- package/dist/src/lib/manager/aws/lambdaManager.d.ts.map +1 -1
- package/dist/src/lib/manager/aws/lambdaManager.js +41 -33
- package/dist/src/lib/manager/aws/lambdaManager.js.map +1 -1
- package/dist/src/lib/manager/aws/vpcManager.d.ts.map +1 -1
- package/dist/src/lib/manager/aws/vpcManager.js +1 -0
- package/dist/src/lib/manager/aws/vpcManager.js.map +1 -1
- package/dist/src/lib/types/aws/index.d.ts +6 -0
- package/dist/src/lib/types/aws/index.d.ts.map +1 -1
- package/package.json +6 -6
- package/src/lib/common/commonConstruct.ts +2 -1
- package/src/lib/construct/graphQLApiLambda.ts +5 -5
- package/src/lib/construct/siteWithEcsBackend.ts +1 -1
- package/src/lib/construct/staticSite.ts +1 -1
- package/src/lib/manager/aws/apiManager.ts +1 -4
- package/src/lib/manager/aws/dynamodbManager.ts +60 -0
- package/src/lib/manager/aws/index.ts +1 -0
- package/src/lib/manager/aws/lambdaManager.ts +49 -39
- package/src/lib/manager/aws/vpcManager.ts +1 -0
- package/src/lib/types/aws/index.ts +6 -0
|
@@ -79,30 +79,33 @@ class LambdaManager {
|
|
|
79
79
|
return lambdaLayer;
|
|
80
80
|
}
|
|
81
81
|
/**
|
|
82
|
-
* @summary Method to create a lambda function (
|
|
82
|
+
* @summary Method to create a lambda function (python)
|
|
83
83
|
* @param {string} id scoped id of the resource
|
|
84
84
|
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
85
85
|
* @param {types.LambdaProps} props
|
|
86
86
|
* @param {iam.Role | iam.CfnRole} role
|
|
87
87
|
* @param {lambda.ILayerVersion[]} layers
|
|
88
|
-
* @param {
|
|
89
|
-
* @param {string}
|
|
90
|
-
* @param {
|
|
91
|
-
* @param {
|
|
92
|
-
* @param {ec2.
|
|
93
|
-
* @param {
|
|
94
|
-
* @param {
|
|
88
|
+
* @param {string} entry path to lambda source
|
|
89
|
+
* @param {string?} index
|
|
90
|
+
* @param {string?} handler
|
|
91
|
+
* @param {Map<string, string>?} environment
|
|
92
|
+
* @param {ec2.IVpc?} vpc
|
|
93
|
+
* @param {ec2.ISecurityGroup[]?} securityGroups
|
|
94
|
+
* @param {efs.IAccessPoint?} accessPoint
|
|
95
|
+
* @param {string?} mountPath
|
|
96
|
+
* @param {ec2.SubnetSelection?} vpcSubnets
|
|
95
97
|
*/
|
|
96
|
-
|
|
98
|
+
createPythonLambdaFunction(id, scope, props, role, layers, entry, index, handler, environment, vpc, securityGroups, accessPoint, mountPath, vpcSubnets) {
|
|
97
99
|
if (!props)
|
|
98
100
|
throw `Lambda props undefined`;
|
|
99
101
|
const functionName = `${props.functionName}-${scope.props.stage}`;
|
|
100
|
-
const lambdaFunction = new
|
|
102
|
+
const lambdaFunction = new pylambda.PythonFunction(scope, `${id}`, {
|
|
101
103
|
allowPublicSubnet: !!vpc,
|
|
102
104
|
functionName: functionName,
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
105
|
+
index: index,
|
|
106
|
+
handler: handler,
|
|
107
|
+
runtime: lambda.Runtime.PYTHON_3_8,
|
|
108
|
+
entry: entry,
|
|
106
109
|
environment: {
|
|
107
110
|
REGION: scope.props.region,
|
|
108
111
|
...environment,
|
|
@@ -111,43 +114,45 @@ class LambdaManager {
|
|
|
111
114
|
layers: layers,
|
|
112
115
|
logRetention: props.logRetention,
|
|
113
116
|
memorySize: props.memorySize,
|
|
117
|
+
onFailure: props.onFailure,
|
|
118
|
+
onSuccess: props.onSuccess,
|
|
114
119
|
reservedConcurrentExecutions: props.reservedConcurrentExecutions,
|
|
115
120
|
role: role instanceof iam.Role ? role : undefined,
|
|
116
121
|
securityGroups: securityGroups,
|
|
117
122
|
timeout: props.timeoutInSecs ? cdk.Duration.seconds(props.timeoutInSecs) : cdk.Duration.minutes(1),
|
|
118
123
|
vpc: vpc,
|
|
124
|
+
vpcSubnets: vpcSubnets,
|
|
119
125
|
});
|
|
120
126
|
utils.createCfnOutput(`${id}-lambdaArn`, scope, lambdaFunction.functionArn);
|
|
121
127
|
utils.createCfnOutput(`${id}-lambdaName`, scope, lambdaFunction.functionName);
|
|
122
128
|
return lambdaFunction;
|
|
123
129
|
}
|
|
124
130
|
/**
|
|
125
|
-
* @summary Method to create a lambda function (
|
|
131
|
+
* @summary Method to create a lambda function (nodejs)
|
|
126
132
|
* @param {string} id scoped id of the resource
|
|
127
133
|
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
128
134
|
* @param {types.LambdaProps} props
|
|
129
135
|
* @param {iam.Role | iam.CfnRole} role
|
|
130
136
|
* @param {lambda.ILayerVersion[]} layers
|
|
131
|
-
* @param {
|
|
132
|
-
* @param {string}
|
|
133
|
-
* @param {string}
|
|
134
|
-
* @param {
|
|
135
|
-
* @param {ec2.
|
|
136
|
-
* @param {
|
|
137
|
-
* @param {
|
|
138
|
-
* @param {
|
|
137
|
+
* @param {lambda.AssetCode} code
|
|
138
|
+
* @param {string?} handler
|
|
139
|
+
* @param {Map<string, string>?} environment
|
|
140
|
+
* @param {ec2.IVpc?} vpc
|
|
141
|
+
* @param {ec2.ISecurityGroup[]?} securityGroups
|
|
142
|
+
* @param {efs.IAccessPoint?} accessPoint
|
|
143
|
+
* @param {string?} mountPath
|
|
144
|
+
* @param {ec2.SubnetSelection?} vpcSubnets
|
|
139
145
|
*/
|
|
140
|
-
|
|
146
|
+
createLambdaFunction(id, scope, props, role, layers, code, handler, environment, vpc, securityGroups, accessPoint, mountPath, vpcSubnets) {
|
|
141
147
|
if (!props)
|
|
142
148
|
throw `Lambda props undefined`;
|
|
143
149
|
const functionName = `${props.functionName}-${scope.props.stage}`;
|
|
144
|
-
const lambdaFunction = new
|
|
150
|
+
const lambdaFunction = new lambda.Function(scope, `${id}`, {
|
|
145
151
|
allowPublicSubnet: !!vpc,
|
|
146
152
|
functionName: functionName,
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
entry: entry,
|
|
153
|
+
handler: handler || 'index.lambda_handler',
|
|
154
|
+
runtime: lambda.Runtime.NODEJS_14_X,
|
|
155
|
+
code: code,
|
|
151
156
|
environment: {
|
|
152
157
|
REGION: scope.props.region,
|
|
153
158
|
...environment,
|
|
@@ -156,11 +161,14 @@ class LambdaManager {
|
|
|
156
161
|
layers: layers,
|
|
157
162
|
logRetention: props.logRetention,
|
|
158
163
|
memorySize: props.memorySize,
|
|
164
|
+
onFailure: props.onFailure,
|
|
165
|
+
onSuccess: props.onSuccess,
|
|
159
166
|
reservedConcurrentExecutions: props.reservedConcurrentExecutions,
|
|
160
167
|
role: role instanceof iam.Role ? role : undefined,
|
|
161
168
|
securityGroups: securityGroups,
|
|
162
169
|
timeout: props.timeoutInSecs ? cdk.Duration.seconds(props.timeoutInSecs) : cdk.Duration.minutes(1),
|
|
163
170
|
vpc: vpc,
|
|
171
|
+
vpcSubnets: vpcSubnets,
|
|
164
172
|
});
|
|
165
173
|
utils.createCfnOutput(`${id}-lambdaArn`, scope, lambdaFunction.functionArn);
|
|
166
174
|
utils.createCfnOutput(`${id}-lambdaName`, scope, lambdaFunction.functionName);
|
|
@@ -174,11 +182,11 @@ class LambdaManager {
|
|
|
174
182
|
* @param {types.LambdaEdgeProps} props lambda@edge properties
|
|
175
183
|
* @param {lambda.ILayerVersion[]} layers
|
|
176
184
|
* @param {lambda.AssetCode} code
|
|
177
|
-
* @param {Map<string, string
|
|
178
|
-
* @param {ec2.IVpc} vpc
|
|
179
|
-
* @param {ec2.ISecurityGroup[]} securityGroups
|
|
180
|
-
* @param {efs.IAccessPoint} accessPoint
|
|
181
|
-
* @param {string} mountPath
|
|
185
|
+
* @param {Map<string, string>?} environment
|
|
186
|
+
* @param {ec2.IVpc?} vpc
|
|
187
|
+
* @param {ec2.ISecurityGroup[]?} securityGroups
|
|
188
|
+
* @param {efs.IAccessPoint?} accessPoint
|
|
189
|
+
* @param {string?} mountPath
|
|
182
190
|
*/
|
|
183
191
|
createEdgeFunction(id, scope, props, layers, code, environment, vpc, securityGroups, accessPoint, mountPath) {
|
|
184
192
|
return new cloudFrontManager_1.CloudFrontManager().createEdgeFunction(id, scope, props, layers, code, environment, vpc, securityGroups, accessPoint, mountPath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lambdaManager.js","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/lambdaManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,2EAA4D;AAC5D,iDAAkC;AAGlC,yDAA0C;AAC1C,+DAAgD;AAGhD,mDAAoC;AACpC,2DAAuD;AAEvD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAa,aAAa;IACxB;;;;;OAKG;IACI,iBAAiB,CAAC,EAAU,EAAE,KAA6B,EAAE,IAAsB;QACxF,MAAM,WAAW,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAC1D,kBAAkB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;YAChD,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,GAAG,EAAE,EAAE;YACpB,gBAAgB,EAAE,GAAG,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;SAC/C,CAAC,CAAA;QAEF,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,CAAA;QAEjF,OAAO,WAAW,CAAA;IACpB,CAAC;IAED;;;;;OAKG;IACI,uBAAuB,CAAC,EAAU,EAAE,KAA6B,EAAE,KAAa;QACrF,MAAM,WAAW,GAAG,IAAI,QAAQ,CAAC,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAClE,kBAAkB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;YAC/C,WAAW,EAAE,GAAG,EAAE,EAAE;YACpB,KAAK,EAAE,KAAK;YACZ,gBAAgB,EAAE,GAAG,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;SAC/C,CAAC,CAAA;QAEF,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,CAAA;QAEjF,OAAO,WAAW,CAAA;IACpB,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"lambdaManager.js","sourceRoot":"","sources":["../../../../../src/lib/manager/aws/lambdaManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +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;
|
|
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;IAyB/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"}
|
|
@@ -58,6 +58,7 @@ class VpcManager {
|
|
|
58
58
|
throw 'Vpc props undefined';
|
|
59
59
|
const vpc = new ec2.Vpc(scope, `${id}`, {
|
|
60
60
|
maxAzs: props.maxAzs,
|
|
61
|
+
cidr: props.cidr,
|
|
61
62
|
});
|
|
62
63
|
utils.createCfnOutput(`${id}Id`, scope, vpc.vpcId);
|
|
63
64
|
utils.createCfnOutput(`${id}PublicSubnetIds`, scope, vpc.publicSubnets.map(subnet => subnet.subnetId).toString());
|
|
@@ -1 +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;
|
|
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;YACpB,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,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;AArDD,gCAqDC"}
|
|
@@ -5,6 +5,7 @@ import * as acm from 'aws-cdk-lib/aws-certificatemanager';
|
|
|
5
5
|
import * as cloudfront from 'aws-cdk-lib/aws-cloudfront';
|
|
6
6
|
import * as cloudtrail from 'aws-cdk-lib/aws-cloudtrail';
|
|
7
7
|
import * as watch from 'aws-cdk-lib/aws-cloudwatch';
|
|
8
|
+
import * as dynamodb from 'aws-cdk-lib/aws-dynamodb';
|
|
8
9
|
import * as ec2 from 'aws-cdk-lib/aws-ec2';
|
|
9
10
|
import * as ecs from 'aws-cdk-lib/aws-ecs';
|
|
10
11
|
import * as ecsPatterns from 'aws-cdk-lib/aws-ecs-patterns';
|
|
@@ -260,6 +261,11 @@ export interface LifecycleRule extends s3.LifecycleRule {
|
|
|
260
261
|
expirationInDays?: number;
|
|
261
262
|
noncurrentVersionExpirationInDays?: number;
|
|
262
263
|
}
|
|
264
|
+
/**
|
|
265
|
+
* @category Storage
|
|
266
|
+
*/
|
|
267
|
+
export interface TableProps extends dynamodb.TableProps {
|
|
268
|
+
}
|
|
263
269
|
/**
|
|
264
270
|
* @category Storage
|
|
265
271
|
*/
|
|
@@ -1 +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"}
|
|
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,QAAQ,MAAM,0BAA0B,CAAA;AACpD,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,UAAW,SAAQ,QAAQ,CAAC,UAAU;CAAG;AAE1D;;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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gradientedge/cdk-utils",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.3.2",
|
|
4
4
|
"description": "Utilities for AWS CDK provisioning",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"engines": {
|
|
@@ -45,11 +45,11 @@
|
|
|
45
45
|
"dependencies": {
|
|
46
46
|
"@aws-cdk/aws-lambda-python-alpha": "2.10.0-alpha.0",
|
|
47
47
|
"@types/lodash": "^4.14.178",
|
|
48
|
-
"@types/node": "^17.0.
|
|
48
|
+
"@types/node": "^17.0.14",
|
|
49
49
|
"app-root-path": "^3.0.0",
|
|
50
50
|
"aws-cdk-lib": "^2.10.0",
|
|
51
51
|
"aws-sdk": "^2.1066.0",
|
|
52
|
-
"constructs": "^10.0.
|
|
52
|
+
"constructs": "^10.0.52",
|
|
53
53
|
"lodash": "^4.17.21",
|
|
54
54
|
"moment": "^2.29.1",
|
|
55
55
|
"nconf": "^0.11.3",
|
|
@@ -59,14 +59,14 @@
|
|
|
59
59
|
"devDependencies": {
|
|
60
60
|
"@babel/plugin-proposal-class-properties": "^7.16.7",
|
|
61
61
|
"@types/jest": "^27.4.0",
|
|
62
|
-
"@typescript-eslint/eslint-plugin": "^5.10.
|
|
63
|
-
"@typescript-eslint/parser": "^5.10.
|
|
62
|
+
"@typescript-eslint/eslint-plugin": "^5.10.2",
|
|
63
|
+
"@typescript-eslint/parser": "^5.10.2",
|
|
64
64
|
"aws-cdk": "*",
|
|
65
65
|
"babel-eslint": "^10.1.0",
|
|
66
66
|
"better-docs": "^2.7.1",
|
|
67
67
|
"codecov": "^3.8.3",
|
|
68
68
|
"commitizen": "^4.2.4",
|
|
69
|
-
"dotenv": "^
|
|
69
|
+
"dotenv": "^15.0.0",
|
|
70
70
|
"eslint": "^8.8.0",
|
|
71
71
|
"eslint-config-prettier": "^8.3.0",
|
|
72
72
|
"eslint-plugin-import": "^2.25.4",
|
|
@@ -33,6 +33,7 @@ export class CommonConstruct extends Construct {
|
|
|
33
33
|
cloudFrontManager: aws.CloudFrontManager
|
|
34
34
|
cloudTrailManager: aws.CloudTrailManager
|
|
35
35
|
cloudWatchManager: aws.CloudWatchManager
|
|
36
|
+
dynamodbManager: aws.DynamodbManager
|
|
36
37
|
ecrManager: aws.EcrManager
|
|
37
38
|
ecsManager: aws.EcsManager
|
|
38
39
|
eksManager: aws.EksManager
|
|
@@ -65,6 +66,7 @@ export class CommonConstruct extends Construct {
|
|
|
65
66
|
this.cloudFrontManager = new aws.CloudFrontManager()
|
|
66
67
|
this.cloudTrailManager = new aws.CloudTrailManager()
|
|
67
68
|
this.cloudWatchManager = new aws.CloudWatchManager()
|
|
69
|
+
this.dynamodbManager = new aws.DynamodbManager()
|
|
68
70
|
this.ecrManager = new aws.EcrManager()
|
|
69
71
|
this.ecsManager = new aws.EcsManager()
|
|
70
72
|
this.eksManager = new aws.EksManager()
|
|
@@ -78,7 +80,6 @@ export class CommonConstruct extends Construct {
|
|
|
78
80
|
this.snsManager = new aws.SnsManager()
|
|
79
81
|
this.ssMManager = new aws.SsmManager()
|
|
80
82
|
this.vpcManager = new aws.VpcManager()
|
|
81
|
-
this.vpcManager = new aws.VpcManager()
|
|
82
83
|
this.wafManager = new aws.WafManager()
|
|
83
84
|
|
|
84
85
|
this.determineFullyQualifiedDomain()
|
|
@@ -5,7 +5,7 @@ import * as lambda from 'aws-cdk-lib/aws-lambda'
|
|
|
5
5
|
import * as route53 from 'aws-cdk-lib/aws-route53'
|
|
6
6
|
import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager'
|
|
7
7
|
import { Construct } from 'constructs'
|
|
8
|
-
import { CommonConstruct } from '../common
|
|
8
|
+
import { CommonConstruct } from '../common'
|
|
9
9
|
import { GraphQlApiLambdaEnvironment, GraphQlApiLambdaProps } from '../types'
|
|
10
10
|
|
|
11
11
|
/**
|
|
@@ -39,16 +39,16 @@ export class GraphQLApiLambda extends CommonConstruct {
|
|
|
39
39
|
|
|
40
40
|
/* graphql api resources */
|
|
41
41
|
applicationSecrets: secretsmanager.ISecret[]
|
|
42
|
-
graphQLApiHostedZone: route53.IHostedZone
|
|
43
|
-
graphQLApiCertificate: acm.ICertificate
|
|
44
|
-
graphQLApiDomain: apig.DomainName
|
|
45
|
-
graphQLApiBasePathMappings: apig.BasePathMapping[] = []
|
|
46
42
|
graphQLApiLambdaPolicy: iam.PolicyDocument
|
|
47
43
|
graphQLApiLambdaRole: iam.Role
|
|
48
44
|
graphQLApiLambdaEnvironment: GraphQlApiLambdaEnvironment
|
|
49
45
|
graphQLApiLambdaLayers: lambda.LayerVersion[] = []
|
|
50
46
|
graphQLApiLambdaFunction: lambda.Function
|
|
51
47
|
graphQLApi: apig.RestApi
|
|
48
|
+
graphQLApiHostedZone: route53.IHostedZone
|
|
49
|
+
graphQLApiCertificate: acm.ICertificate
|
|
50
|
+
graphQLApiDomain: apig.DomainName
|
|
51
|
+
graphQLApiBasePathMappings: apig.BasePathMapping[] = []
|
|
52
52
|
|
|
53
53
|
/**
|
|
54
54
|
* @summary Constructor to initialise the GraphQLApiLambda Construct
|
|
@@ -12,7 +12,7 @@ import * as route53 from 'aws-cdk-lib/aws-route53'
|
|
|
12
12
|
import * as s3 from 'aws-cdk-lib/aws-s3'
|
|
13
13
|
import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager'
|
|
14
14
|
import { Construct } from 'constructs'
|
|
15
|
-
import { CommonConstruct } from '../common
|
|
15
|
+
import { CommonConstruct } from '../common'
|
|
16
16
|
import { SiteWithEcsBackendProps } from '../types'
|
|
17
17
|
|
|
18
18
|
/**
|
|
@@ -4,7 +4,7 @@ import * as origins from 'aws-cdk-lib/aws-cloudfront-origins'
|
|
|
4
4
|
import * as route53 from 'aws-cdk-lib/aws-route53'
|
|
5
5
|
import * as s3 from 'aws-cdk-lib/aws-s3'
|
|
6
6
|
import { Construct } from 'constructs'
|
|
7
|
-
import { CommonConstruct } from '../common
|
|
7
|
+
import { CommonConstruct } from '../common'
|
|
8
8
|
import { StaticSiteProps } from '../types'
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -69,10 +69,7 @@ export class ApiManager {
|
|
|
69
69
|
},
|
|
70
70
|
restApiName: `${props.restApiName}-${scope.props.stage}`,
|
|
71
71
|
handler: lambdaFunction,
|
|
72
|
-
defaultCorsPreflightOptions:
|
|
73
|
-
allowOrigins: props.defaultCorsPreflightOptions?.allowOrigins || apig.Cors.ALL_ORIGINS,
|
|
74
|
-
allowMethods: props.defaultCorsPreflightOptions?.allowMethods || apig.Cors.ALL_METHODS,
|
|
75
|
-
},
|
|
72
|
+
defaultCorsPreflightOptions: props.defaultCorsPreflightOptions,
|
|
76
73
|
proxy: props.proxy || true,
|
|
77
74
|
})
|
|
78
75
|
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import * as dynamodb from 'aws-cdk-lib/aws-dynamodb'
|
|
2
|
+
import * as common from '../../common'
|
|
3
|
+
import * as types from '../../types'
|
|
4
|
+
import * as utils from '../../utils'
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @stability stable
|
|
8
|
+
* @category Storage
|
|
9
|
+
* @summary Provides operations on AWS DynamoDB.
|
|
10
|
+
* - A new instance of this class is injected into {@link common.CommonConstruct} constructor.
|
|
11
|
+
* - If a custom construct extends {@link common.CommonConstruct}, an instance is available within the context.
|
|
12
|
+
* @example
|
|
13
|
+
* import { CommonConstruct } from '@gradientedge/cdk-utils'
|
|
14
|
+
*
|
|
15
|
+
* class CustomConstruct extends CommonConstruct {
|
|
16
|
+
* constructor(parent: cdk.Construct, id: string, props: common.CommonStackProps) {
|
|
17
|
+
* super(parent, id, props)
|
|
18
|
+
* this.props = props
|
|
19
|
+
* this.dynamodbManager.createTable('MyTable', this, tableProps)
|
|
20
|
+
* }
|
|
21
|
+
* }
|
|
22
|
+
*
|
|
23
|
+
* @see [CDK Certificate Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_dynamodb-readme.html}
|
|
24
|
+
*/
|
|
25
|
+
export class DynamodbManager {
|
|
26
|
+
/**
|
|
27
|
+
* @summary Method to create a table
|
|
28
|
+
* @param {string} id scoped id of the resource
|
|
29
|
+
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
30
|
+
* @param {types.TableProps} props table props
|
|
31
|
+
*/
|
|
32
|
+
public createTable(id: string, scope: common.CommonConstruct, props: types.TableProps) {
|
|
33
|
+
if (!props) throw `Table props undefined`
|
|
34
|
+
|
|
35
|
+
const table = new dynamodb.Table(scope, `${id}`, {
|
|
36
|
+
tableName: `${props.tableName}-${scope.props.stage}`,
|
|
37
|
+
partitionKey: props.partitionKey,
|
|
38
|
+
sortKey: props.sortKey,
|
|
39
|
+
kinesisStream: props.kinesisStream,
|
|
40
|
+
readCapacity: props.readCapacity,
|
|
41
|
+
writeCapacity: props.writeCapacity,
|
|
42
|
+
billingMode: props.billingMode,
|
|
43
|
+
pointInTimeRecovery: props.pointInTimeRecovery,
|
|
44
|
+
encryption: props.encryption,
|
|
45
|
+
encryptionKey: props.encryptionKey,
|
|
46
|
+
timeToLiveAttribute: props.timeToLiveAttribute,
|
|
47
|
+
stream: props.stream,
|
|
48
|
+
removalPolicy: props.removalPolicy,
|
|
49
|
+
replicationRegions: props.replicationRegions,
|
|
50
|
+
replicationTimeout: props.replicationTimeout,
|
|
51
|
+
waitForReplicationToFinish: props.waitForReplicationToFinish,
|
|
52
|
+
contributorInsightsEnabled: props.contributorInsightsEnabled,
|
|
53
|
+
})
|
|
54
|
+
|
|
55
|
+
utils.createCfnOutput(`${id}-tableName`, scope, table.tableName)
|
|
56
|
+
utils.createCfnOutput(`${id}-tableArn`, scope, table.tableArn)
|
|
57
|
+
|
|
58
|
+
return table
|
|
59
|
+
}
|
|
60
|
+
}
|
|
@@ -5,6 +5,7 @@ export * from './cloudFrontManager'
|
|
|
5
5
|
export * from './cloudTrailManager'
|
|
6
6
|
export * from './cloudWatchManager'
|
|
7
7
|
export * from './codeBuildManager'
|
|
8
|
+
export * from './dynamodbManager'
|
|
8
9
|
export * from './ecrManager'
|
|
9
10
|
export * from './ecsManager'
|
|
10
11
|
export * from './eksManager'
|
|
@@ -68,43 +68,49 @@ export class LambdaManager {
|
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
/**
|
|
71
|
-
* @summary Method to create a lambda function (
|
|
71
|
+
* @summary Method to create a lambda function (python)
|
|
72
72
|
* @param {string} id scoped id of the resource
|
|
73
73
|
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
74
74
|
* @param {types.LambdaProps} props
|
|
75
75
|
* @param {iam.Role | iam.CfnRole} role
|
|
76
76
|
* @param {lambda.ILayerVersion[]} layers
|
|
77
|
-
* @param {
|
|
78
|
-
* @param {string}
|
|
79
|
-
* @param {
|
|
80
|
-
* @param {
|
|
81
|
-
* @param {ec2.
|
|
82
|
-
* @param {
|
|
83
|
-
* @param {
|
|
77
|
+
* @param {string} entry path to lambda source
|
|
78
|
+
* @param {string?} index
|
|
79
|
+
* @param {string?} handler
|
|
80
|
+
* @param {Map<string, string>?} environment
|
|
81
|
+
* @param {ec2.IVpc?} vpc
|
|
82
|
+
* @param {ec2.ISecurityGroup[]?} securityGroups
|
|
83
|
+
* @param {efs.IAccessPoint?} accessPoint
|
|
84
|
+
* @param {string?} mountPath
|
|
85
|
+
* @param {ec2.SubnetSelection?} vpcSubnets
|
|
84
86
|
*/
|
|
85
|
-
|
|
87
|
+
|
|
88
|
+
public createPythonLambdaFunction(
|
|
86
89
|
id: string,
|
|
87
90
|
scope: common.CommonConstruct,
|
|
88
91
|
props: types.LambdaProps,
|
|
89
92
|
role: iam.Role | iam.CfnRole,
|
|
90
93
|
layers: lambda.ILayerVersion[],
|
|
91
|
-
|
|
94
|
+
entry: string,
|
|
95
|
+
index?: string,
|
|
92
96
|
handler?: string,
|
|
93
97
|
environment?: any,
|
|
94
98
|
vpc?: ec2.IVpc,
|
|
95
99
|
securityGroups?: ec2.ISecurityGroup[],
|
|
96
100
|
accessPoint?: efs.IAccessPoint,
|
|
97
|
-
mountPath?: string
|
|
101
|
+
mountPath?: string,
|
|
102
|
+
vpcSubnets?: ec2.SubnetSelection
|
|
98
103
|
) {
|
|
99
104
|
if (!props) throw `Lambda props undefined`
|
|
100
105
|
|
|
101
106
|
const functionName = `${props.functionName}-${scope.props.stage}`
|
|
102
|
-
const lambdaFunction = new
|
|
107
|
+
const lambdaFunction = new pylambda.PythonFunction(scope, `${id}`, {
|
|
103
108
|
allowPublicSubnet: !!vpc,
|
|
104
109
|
functionName: functionName,
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
110
|
+
index: index,
|
|
111
|
+
handler: handler,
|
|
112
|
+
runtime: lambda.Runtime.PYTHON_3_8,
|
|
113
|
+
entry: entry,
|
|
108
114
|
environment: {
|
|
109
115
|
REGION: scope.props.region,
|
|
110
116
|
...environment,
|
|
@@ -113,11 +119,14 @@ export class LambdaManager {
|
|
|
113
119
|
layers: layers,
|
|
114
120
|
logRetention: props.logRetention,
|
|
115
121
|
memorySize: props.memorySize,
|
|
122
|
+
onFailure: props.onFailure,
|
|
123
|
+
onSuccess: props.onSuccess,
|
|
116
124
|
reservedConcurrentExecutions: props.reservedConcurrentExecutions,
|
|
117
125
|
role: role instanceof iam.Role ? role : undefined,
|
|
118
126
|
securityGroups: securityGroups,
|
|
119
127
|
timeout: props.timeoutInSecs ? cdk.Duration.seconds(props.timeoutInSecs) : cdk.Duration.minutes(1),
|
|
120
128
|
vpc: vpc,
|
|
129
|
+
vpcSubnets: vpcSubnets,
|
|
121
130
|
})
|
|
122
131
|
|
|
123
132
|
utils.createCfnOutput(`${id}-lambdaArn`, scope, lambdaFunction.functionArn)
|
|
@@ -127,47 +136,45 @@ export class LambdaManager {
|
|
|
127
136
|
}
|
|
128
137
|
|
|
129
138
|
/**
|
|
130
|
-
* @summary Method to create a lambda function (
|
|
139
|
+
* @summary Method to create a lambda function (nodejs)
|
|
131
140
|
* @param {string} id scoped id of the resource
|
|
132
141
|
* @param {common.CommonConstruct} scope scope in which this resource is defined
|
|
133
142
|
* @param {types.LambdaProps} props
|
|
134
143
|
* @param {iam.Role | iam.CfnRole} role
|
|
135
144
|
* @param {lambda.ILayerVersion[]} layers
|
|
136
|
-
* @param {
|
|
137
|
-
* @param {string}
|
|
138
|
-
* @param {string}
|
|
139
|
-
* @param {
|
|
140
|
-
* @param {ec2.
|
|
141
|
-
* @param {
|
|
142
|
-
* @param {
|
|
143
|
-
* @param {
|
|
145
|
+
* @param {lambda.AssetCode} code
|
|
146
|
+
* @param {string?} handler
|
|
147
|
+
* @param {Map<string, string>?} environment
|
|
148
|
+
* @param {ec2.IVpc?} vpc
|
|
149
|
+
* @param {ec2.ISecurityGroup[]?} securityGroups
|
|
150
|
+
* @param {efs.IAccessPoint?} accessPoint
|
|
151
|
+
* @param {string?} mountPath
|
|
152
|
+
* @param {ec2.SubnetSelection?} vpcSubnets
|
|
144
153
|
*/
|
|
145
|
-
|
|
146
|
-
public createPythonLambdaFunction(
|
|
154
|
+
public createLambdaFunction(
|
|
147
155
|
id: string,
|
|
148
156
|
scope: common.CommonConstruct,
|
|
149
157
|
props: types.LambdaProps,
|
|
150
158
|
role: iam.Role | iam.CfnRole,
|
|
151
159
|
layers: lambda.ILayerVersion[],
|
|
152
|
-
|
|
153
|
-
index?: string,
|
|
160
|
+
code: lambda.AssetCode,
|
|
154
161
|
handler?: string,
|
|
155
162
|
environment?: any,
|
|
156
163
|
vpc?: ec2.IVpc,
|
|
157
164
|
securityGroups?: ec2.ISecurityGroup[],
|
|
158
165
|
accessPoint?: efs.IAccessPoint,
|
|
159
|
-
mountPath?: string
|
|
166
|
+
mountPath?: string,
|
|
167
|
+
vpcSubnets?: ec2.SubnetSelection
|
|
160
168
|
) {
|
|
161
169
|
if (!props) throw `Lambda props undefined`
|
|
162
170
|
|
|
163
171
|
const functionName = `${props.functionName}-${scope.props.stage}`
|
|
164
|
-
const lambdaFunction = new
|
|
172
|
+
const lambdaFunction = new lambda.Function(scope, `${id}`, {
|
|
165
173
|
allowPublicSubnet: !!vpc,
|
|
166
174
|
functionName: functionName,
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
entry: entry,
|
|
175
|
+
handler: handler || 'index.lambda_handler',
|
|
176
|
+
runtime: lambda.Runtime.NODEJS_14_X,
|
|
177
|
+
code: code,
|
|
171
178
|
environment: {
|
|
172
179
|
REGION: scope.props.region,
|
|
173
180
|
...environment,
|
|
@@ -176,11 +183,14 @@ export class LambdaManager {
|
|
|
176
183
|
layers: layers,
|
|
177
184
|
logRetention: props.logRetention,
|
|
178
185
|
memorySize: props.memorySize,
|
|
186
|
+
onFailure: props.onFailure,
|
|
187
|
+
onSuccess: props.onSuccess,
|
|
179
188
|
reservedConcurrentExecutions: props.reservedConcurrentExecutions,
|
|
180
189
|
role: role instanceof iam.Role ? role : undefined,
|
|
181
190
|
securityGroups: securityGroups,
|
|
182
191
|
timeout: props.timeoutInSecs ? cdk.Duration.seconds(props.timeoutInSecs) : cdk.Duration.minutes(1),
|
|
183
192
|
vpc: vpc,
|
|
193
|
+
vpcSubnets: vpcSubnets,
|
|
184
194
|
})
|
|
185
195
|
|
|
186
196
|
utils.createCfnOutput(`${id}-lambdaArn`, scope, lambdaFunction.functionArn)
|
|
@@ -197,11 +207,11 @@ export class LambdaManager {
|
|
|
197
207
|
* @param {types.LambdaEdgeProps} props lambda@edge properties
|
|
198
208
|
* @param {lambda.ILayerVersion[]} layers
|
|
199
209
|
* @param {lambda.AssetCode} code
|
|
200
|
-
* @param {Map<string, string
|
|
201
|
-
* @param {ec2.IVpc} vpc
|
|
202
|
-
* @param {ec2.ISecurityGroup[]} securityGroups
|
|
203
|
-
* @param {efs.IAccessPoint} accessPoint
|
|
204
|
-
* @param {string} mountPath
|
|
210
|
+
* @param {Map<string, string>?} environment
|
|
211
|
+
* @param {ec2.IVpc?} vpc
|
|
212
|
+
* @param {ec2.ISecurityGroup[]?} securityGroups
|
|
213
|
+
* @param {efs.IAccessPoint?} accessPoint
|
|
214
|
+
* @param {string?} mountPath
|
|
205
215
|
*/
|
|
206
216
|
public createEdgeFunction(
|
|
207
217
|
id: string,
|