@mavogel/awscdk-rootmail 0.0.290 → 0.0.291
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/.jsii +589 -84
- package/.prettierrc +0 -0
- package/API.md +49 -5
- package/CONTRIBUTING.md +13 -2
- package/README.md +8 -0
- package/integ-tests/functions/cleanup-handler.ts +2 -2
- package/integ-tests/functions/close-opsitem-handler.ts +5 -7
- package/integ-tests/functions/send-email-handler.ts +3 -5
- package/integ-tests/integ.rootmail-custom-santa.ts +2 -20
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/RootmailIntegTestStack.assets.json +15 -15
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/RootmailIntegTestStack.template.json +435 -65
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.assets.json +6 -6
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.template.json +137 -5
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.2819175352ad1ce0dae768e83fc328fb70fb5f10b4a8ff0ccbcb791f02b0716d/index.js +1 -0
- package/integ-tests/{integ.rootmail-filter-subject.ts.snapshot/asset.d2b520d86fd9d964c83dc0d5ce2e4456dbde5fa7ae0c791a71865cbdfe2fb855 → integ.rootmail-custom-santa.ts.snapshot/asset.2b86f8b255c50c6eba274c368849bab1c7a3747c30ef5df4c96f8dea8fffa21e}/index.js +3 -3
- package/integ-tests/{integ.rootmail-filter-subject.ts.snapshot/asset.9ac6d29f0cc4b20ec46e4c186d9a6f6448c7ea11b689e70a5dda69671a9d6848 → integ.rootmail-custom-santa.ts.snapshot/asset.b01091642674a865788c271ec84db9d88a8dfbe14d4d95583aca8814cfa848b9}/index.js +63 -60
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/cfn-response.js +1 -0
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/framework.js +3 -0
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/outbound.js +1 -0
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/util.js +1 -0
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/{asset.53e8368959effe94a6e51bef9c7c5bf0eaf5c4d64eece81632ca62aa34517978.bundle → asset.f692c9f68e4daba2abc99103efd3518bced1e9d7a2a89847b9b5d5473c64f1bd.bundle}/index.js +22701 -24111
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/integ.json +2 -2
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/manifest.json +35 -3
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/tree.json +782 -424
- package/integ-tests/integ.rootmail-filter-subject.ts +2 -20
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/RootmailIntegTestStack.assets.json +15 -15
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/RootmailIntegTestStack.template.json +435 -65
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.assets.json +6 -6
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.template.json +137 -5
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.2819175352ad1ce0dae768e83fc328fb70fb5f10b4a8ff0ccbcb791f02b0716d/index.js +1 -0
- package/integ-tests/{integ.rootmail-custom-santa.ts.snapshot/asset.d2b520d86fd9d964c83dc0d5ce2e4456dbde5fa7ae0c791a71865cbdfe2fb855 → integ.rootmail-filter-subject.ts.snapshot/asset.2b86f8b255c50c6eba274c368849bab1c7a3747c30ef5df4c96f8dea8fffa21e}/index.js +3 -3
- package/integ-tests/{integ.rootmail-custom-santa.ts.snapshot/asset.9ac6d29f0cc4b20ec46e4c186d9a6f6448c7ea11b689e70a5dda69671a9d6848 → integ.rootmail-filter-subject.ts.snapshot/asset.b01091642674a865788c271ec84db9d88a8dfbe14d4d95583aca8814cfa848b9}/index.js +63 -60
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/cfn-response.js +1 -0
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/framework.js +3 -0
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/outbound.js +1 -0
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/util.js +1 -0
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/{asset.53e8368959effe94a6e51bef9c7c5bf0eaf5c4d64eece81632ca62aa34517978.bundle → asset.f692c9f68e4daba2abc99103efd3518bced1e9d7a2a89847b9b5d5473c64f1bd.bundle}/index.js +22701 -24111
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/integ.json +2 -2
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/manifest.json +35 -3
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/tree.json +782 -424
- package/integ-tests/integ.rootmail.ts +4 -30
- package/integ-tests/integ.rootmail.ts.snapshot/RootmailIntegTestStack.assets.json +18 -18
- package/integ-tests/integ.rootmail.ts.snapshot/RootmailIntegTestStack.template.json +437 -72
- package/integ-tests/integ.rootmail.ts.snapshot/SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.assets.json +6 -6
- package/integ-tests/integ.rootmail.ts.snapshot/SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.template.json +139 -7
- package/integ-tests/integ.rootmail.ts.snapshot/asset.2819175352ad1ce0dae768e83fc328fb70fb5f10b4a8ff0ccbcb791f02b0716d/index.js +1 -0
- package/integ-tests/integ.rootmail.ts.snapshot/{asset.d2b520d86fd9d964c83dc0d5ce2e4456dbde5fa7ae0c791a71865cbdfe2fb855 → asset.2b86f8b255c50c6eba274c368849bab1c7a3747c30ef5df4c96f8dea8fffa21e}/index.js +3 -3
- package/integ-tests/integ.rootmail.ts.snapshot/{asset.070f758ea9c89b8ceea9bb5141ea511633e1d72ab992b608da4efb3d6eeb2ba5 → asset.6ae1d1fcc0e69b0216c406dcb73136e88857dfc9a29784c57838e1fb0f9f7496}/index.js +5 -5
- package/integ-tests/integ.rootmail.ts.snapshot/{asset.adf960437fc6c552bee317e122c1e6839152590b199f7c44c0eee7bfbb744187 → asset.8621467f8f2410fb7445cc07fab37b2e996e541b6f7acb8549df9e88e1def73c}/index.js +63 -60
- package/integ-tests/integ.rootmail.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/cfn-response.js +1 -0
- package/integ-tests/integ.rootmail.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/framework.js +3 -0
- package/integ-tests/integ.rootmail.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/outbound.js +1 -0
- package/integ-tests/integ.rootmail.ts.snapshot/asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca/util.js +1 -0
- package/integ-tests/integ.rootmail.ts.snapshot/{asset.53e8368959effe94a6e51bef9c7c5bf0eaf5c4d64eece81632ca62aa34517978.bundle → asset.f692c9f68e4daba2abc99103efd3518bced1e9d7a2a89847b9b5d5473c64f1bd.bundle}/index.js +22701 -24111
- package/integ-tests/integ.rootmail.ts.snapshot/integ.json +2 -2
- package/integ-tests/integ.rootmail.ts.snapshot/manifest.json +35 -3
- package/integ-tests/integ.rootmail.ts.snapshot/tree.json +798 -445
- package/lib/hosted-zone-dkim-propagation.js +1 -11
- package/lib/hosted-zone-dkim-verification-records.js +1 -6
- package/lib/rootmail-autowire-dns.js +1 -11
- package/lib/rootmail.d.ts +15 -1
- package/lib/rootmail.js +5 -2
- package/lib/ses-receipt-ruleset-activation.js +1 -11
- package/lib/ses-receive.d.ts +12 -0
- package/lib/ses-receive.js +5 -7
- package/node_modules/cdk-nag/.jsii +2 -2
- package/node_modules/cdk-nag/lib/ignore-suppression-conditions.js +5 -5
- package/node_modules/cdk-nag/lib/nag-logger.js +2 -2
- package/node_modules/cdk-nag/lib/nag-pack.js +1 -1
- package/node_modules/cdk-nag/lib/nag-rules.js +1 -1
- package/node_modules/cdk-nag/lib/nag-suppressions.js +1 -1
- package/node_modules/cdk-nag/lib/packs/aws-solutions.js +1 -1
- package/node_modules/cdk-nag/lib/packs/hipaa-security.js +1 -1
- package/node_modules/cdk-nag/lib/packs/nist-800-53-r4.js +1 -1
- package/node_modules/cdk-nag/lib/packs/nist-800-53-r5.js +1 -1
- package/node_modules/cdk-nag/lib/packs/pci-dss-321.js +1 -1
- package/node_modules/cdk-nag/package.json +2 -2
- package/package.json +25 -21
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e/index.d.ts +0 -14
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e/index.js +0 -1
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/cfn-response.js +0 -1
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/framework.js +0 -3
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/outbound.js +0 -1
- package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/util.js +0 -1
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e/index.d.ts +0 -14
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e/index.js +0 -1
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/cfn-response.js +0 -1
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/framework.js +0 -3
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/outbound.js +0 -1
- package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/util.js +0 -1
- package/integ-tests/integ.rootmail.ts.snapshot/asset.5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e/index.d.ts +0 -14
- package/integ-tests/integ.rootmail.ts.snapshot/asset.5cc92ed0cea39e2b8de2dbc527dfb5980a3af9564bd1084d840b9787c7d0467e/index.js +0 -1
- package/integ-tests/integ.rootmail.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/cfn-response.js +0 -1
- package/integ-tests/integ.rootmail.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/framework.js +0 -3
- package/integ-tests/integ.rootmail.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/outbound.js +0 -1
- package/integ-tests/integ.rootmail.ts.snapshot/asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf/util.js +0 -1
- /package/integ-tests/integ.rootmail-custom-santa.ts.snapshot/{asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf → asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca}/consts.js +0 -0
- /package/integ-tests/integ.rootmail-filter-subject.ts.snapshot/{asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf → asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca}/consts.js +0 -0
- /package/integ-tests/integ.rootmail.ts.snapshot/{asset.f2d30cfc360482320a52a4fcde8a70f3569df79ab30be24650fda58eb60052cf → asset.bdc104ed9cab1b5b6421713c8155f0b753380595356f710400609664d3635eca}/consts.js +0 -0
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "
|
|
2
|
+
"version": "39.0.0",
|
|
3
3
|
"files": {
|
|
4
|
-
"
|
|
4
|
+
"f692c9f68e4daba2abc99103efd3518bced1e9d7a2a89847b9b5d5473c64f1bd": {
|
|
5
5
|
"source": {
|
|
6
|
-
"path": "asset.
|
|
6
|
+
"path": "asset.f692c9f68e4daba2abc99103efd3518bced1e9d7a2a89847b9b5d5473c64f1bd.bundle",
|
|
7
7
|
"packaging": "zip"
|
|
8
8
|
},
|
|
9
9
|
"destinations": {
|
|
10
10
|
"current_account-current_region": {
|
|
11
11
|
"bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
|
|
12
|
-
"objectKey": "
|
|
12
|
+
"objectKey": "f692c9f68e4daba2abc99103efd3518bced1e9d7a2a89847b9b5d5473c64f1bd.zip",
|
|
13
13
|
"assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
},
|
|
17
|
-
"
|
|
17
|
+
"4ea83ffd388150d1d0e4243ab8d5b0ee3b614fbc6a14b774e56c2a686804120d": {
|
|
18
18
|
"source": {
|
|
19
19
|
"path": "SetupTestIntegStackDefaultTestDeployAssert6EB6FF77.template.json",
|
|
20
20
|
"packaging": "file"
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"destinations": {
|
|
23
23
|
"current_account-current_region": {
|
|
24
24
|
"bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
|
|
25
|
-
"objectKey": "
|
|
25
|
+
"objectKey": "4ea83ffd388150d1d0e4243ab8d5b0ee3b614fbc6a14b774e56c2a686804120d.json",
|
|
26
26
|
"assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
|
|
27
27
|
}
|
|
28
28
|
}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
},
|
|
12
12
|
"service": "Lambda",
|
|
13
13
|
"api": "invoke",
|
|
14
|
-
"expected": "{\"$ObjectLike\":{\"Payload\"
|
|
14
|
+
"expected": "{\"$ObjectLike\":{\"Payload\":\"\\\"OK\\\"\"}}",
|
|
15
15
|
"parameters": {
|
|
16
16
|
"FunctionName": {
|
|
17
17
|
"Fn::Join": [
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
}
|
|
46
46
|
},
|
|
47
47
|
"flattenResponse": "false",
|
|
48
|
-
"salt": "
|
|
48
|
+
"salt": "1739026199773"
|
|
49
49
|
},
|
|
50
50
|
"DependsOn": [
|
|
51
51
|
"AwsApiCallSSMgetParameterd4c847c906a9dd9484fbf0d62db16d9b"
|
|
@@ -155,12 +155,20 @@
|
|
|
155
155
|
"SingletonFunction1488541a7b23466481b69b4408076b81HandlerCD40AE9F": {
|
|
156
156
|
"Type": "AWS::Lambda::Function",
|
|
157
157
|
"Properties": {
|
|
158
|
-
"Runtime":
|
|
158
|
+
"Runtime": {
|
|
159
|
+
"Fn::FindInMap": [
|
|
160
|
+
"LatestNodeRuntimeMap",
|
|
161
|
+
{
|
|
162
|
+
"Ref": "AWS::Region"
|
|
163
|
+
},
|
|
164
|
+
"value"
|
|
165
|
+
]
|
|
166
|
+
},
|
|
159
167
|
"Code": {
|
|
160
168
|
"S3Bucket": {
|
|
161
169
|
"Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
|
|
162
170
|
},
|
|
163
|
-
"S3Key": "
|
|
171
|
+
"S3Key": "f692c9f68e4daba2abc99103efd3518bced1e9d7a2a89847b9b5d5473c64f1bd.zip"
|
|
164
172
|
},
|
|
165
173
|
"Timeout": 120,
|
|
166
174
|
"Handler": "index.handler",
|
|
@@ -188,7 +196,7 @@
|
|
|
188
196
|
"Name": "\"/rootmail/domain_name_servers\""
|
|
189
197
|
},
|
|
190
198
|
"flattenResponse": "false",
|
|
191
|
-
"salt": "
|
|
199
|
+
"salt": "1739026199773"
|
|
192
200
|
},
|
|
193
201
|
"UpdateReplacePolicy": "Delete",
|
|
194
202
|
"DeletionPolicy": "Delete"
|
|
@@ -212,6 +220,130 @@
|
|
|
212
220
|
}
|
|
213
221
|
}
|
|
214
222
|
},
|
|
223
|
+
"Mappings": {
|
|
224
|
+
"LatestNodeRuntimeMap": {
|
|
225
|
+
"af-south-1": {
|
|
226
|
+
"value": "nodejs20.x"
|
|
227
|
+
},
|
|
228
|
+
"ap-east-1": {
|
|
229
|
+
"value": "nodejs20.x"
|
|
230
|
+
},
|
|
231
|
+
"ap-northeast-1": {
|
|
232
|
+
"value": "nodejs20.x"
|
|
233
|
+
},
|
|
234
|
+
"ap-northeast-2": {
|
|
235
|
+
"value": "nodejs20.x"
|
|
236
|
+
},
|
|
237
|
+
"ap-northeast-3": {
|
|
238
|
+
"value": "nodejs20.x"
|
|
239
|
+
},
|
|
240
|
+
"ap-south-1": {
|
|
241
|
+
"value": "nodejs20.x"
|
|
242
|
+
},
|
|
243
|
+
"ap-south-2": {
|
|
244
|
+
"value": "nodejs20.x"
|
|
245
|
+
},
|
|
246
|
+
"ap-southeast-1": {
|
|
247
|
+
"value": "nodejs20.x"
|
|
248
|
+
},
|
|
249
|
+
"ap-southeast-2": {
|
|
250
|
+
"value": "nodejs20.x"
|
|
251
|
+
},
|
|
252
|
+
"ap-southeast-3": {
|
|
253
|
+
"value": "nodejs20.x"
|
|
254
|
+
},
|
|
255
|
+
"ap-southeast-4": {
|
|
256
|
+
"value": "nodejs20.x"
|
|
257
|
+
},
|
|
258
|
+
"ap-southeast-5": {
|
|
259
|
+
"value": "nodejs20.x"
|
|
260
|
+
},
|
|
261
|
+
"ap-southeast-7": {
|
|
262
|
+
"value": "nodejs20.x"
|
|
263
|
+
},
|
|
264
|
+
"ca-central-1": {
|
|
265
|
+
"value": "nodejs20.x"
|
|
266
|
+
},
|
|
267
|
+
"ca-west-1": {
|
|
268
|
+
"value": "nodejs20.x"
|
|
269
|
+
},
|
|
270
|
+
"cn-north-1": {
|
|
271
|
+
"value": "nodejs18.x"
|
|
272
|
+
},
|
|
273
|
+
"cn-northwest-1": {
|
|
274
|
+
"value": "nodejs18.x"
|
|
275
|
+
},
|
|
276
|
+
"eu-central-1": {
|
|
277
|
+
"value": "nodejs20.x"
|
|
278
|
+
},
|
|
279
|
+
"eu-central-2": {
|
|
280
|
+
"value": "nodejs20.x"
|
|
281
|
+
},
|
|
282
|
+
"eu-isoe-west-1": {
|
|
283
|
+
"value": "nodejs18.x"
|
|
284
|
+
},
|
|
285
|
+
"eu-north-1": {
|
|
286
|
+
"value": "nodejs20.x"
|
|
287
|
+
},
|
|
288
|
+
"eu-south-1": {
|
|
289
|
+
"value": "nodejs20.x"
|
|
290
|
+
},
|
|
291
|
+
"eu-south-2": {
|
|
292
|
+
"value": "nodejs20.x"
|
|
293
|
+
},
|
|
294
|
+
"eu-west-1": {
|
|
295
|
+
"value": "nodejs20.x"
|
|
296
|
+
},
|
|
297
|
+
"eu-west-2": {
|
|
298
|
+
"value": "nodejs20.x"
|
|
299
|
+
},
|
|
300
|
+
"eu-west-3": {
|
|
301
|
+
"value": "nodejs20.x"
|
|
302
|
+
},
|
|
303
|
+
"il-central-1": {
|
|
304
|
+
"value": "nodejs20.x"
|
|
305
|
+
},
|
|
306
|
+
"me-central-1": {
|
|
307
|
+
"value": "nodejs20.x"
|
|
308
|
+
},
|
|
309
|
+
"me-south-1": {
|
|
310
|
+
"value": "nodejs20.x"
|
|
311
|
+
},
|
|
312
|
+
"mx-central-1": {
|
|
313
|
+
"value": "nodejs20.x"
|
|
314
|
+
},
|
|
315
|
+
"sa-east-1": {
|
|
316
|
+
"value": "nodejs20.x"
|
|
317
|
+
},
|
|
318
|
+
"us-east-1": {
|
|
319
|
+
"value": "nodejs20.x"
|
|
320
|
+
},
|
|
321
|
+
"us-east-2": {
|
|
322
|
+
"value": "nodejs20.x"
|
|
323
|
+
},
|
|
324
|
+
"us-gov-east-1": {
|
|
325
|
+
"value": "nodejs18.x"
|
|
326
|
+
},
|
|
327
|
+
"us-gov-west-1": {
|
|
328
|
+
"value": "nodejs18.x"
|
|
329
|
+
},
|
|
330
|
+
"us-iso-east-1": {
|
|
331
|
+
"value": "nodejs18.x"
|
|
332
|
+
},
|
|
333
|
+
"us-iso-west-1": {
|
|
334
|
+
"value": "nodejs18.x"
|
|
335
|
+
},
|
|
336
|
+
"us-isob-east-1": {
|
|
337
|
+
"value": "nodejs18.x"
|
|
338
|
+
},
|
|
339
|
+
"us-west-1": {
|
|
340
|
+
"value": "nodejs20.x"
|
|
341
|
+
},
|
|
342
|
+
"us-west-2": {
|
|
343
|
+
"value": "nodejs20.x"
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
},
|
|
215
347
|
"Parameters": {
|
|
216
348
|
"BootstrapVersion": {
|
|
217
349
|
"Type": "AWS::SSM::Parameter::Value<String>",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var h=Object.create,d=Object.defineProperty,P=Object.getOwnPropertyDescriptor,C=Object.getOwnPropertyNames,b=Object.getPrototypeOf,S=Object.prototype.hasOwnProperty,E=(e,o)=>{for(var n in o)d(e,n,{get:o[n],enumerable:!0})},p=(e,o,n,t)=>{if(o&&typeof o=="object"||typeof o=="function")for(let r of C(o))!S.call(e,r)&&r!==n&&d(e,r,{get:()=>o[r],enumerable:!(t=P(o,r))||t.enumerable});return e},G=(e,o,n)=>(n=e!=null?h(b(e)):{},p(o||!e||!e.__esModule?d(n,"default",{value:e,enumerable:!0}):n,e)),x=e=>p(d({},"__esModule",{value:!0}),e),O={};E(O,{disableSleepForTesting:()=>I,handler:()=>q}),module.exports=x(O);var i=G(require("@aws-sdk/client-cloudwatch-logs")),w=!1;function I(){w=!0}async function R(e,o,n){await n(async()=>{try{let t={logGroupName:e},r=new i.CreateLogGroupCommand(t);await o.send(r)}catch(t){if(t.name==="ResourceAlreadyExistsException")return;throw t}})}async function k(e,o,n){await n(async()=>{try{let t={logGroupName:e},r=new i.DeleteLogGroupCommand(t);await o.send(r)}catch(t){if(t.name==="ResourceNotFoundException")return;throw t}})}async function y(e,o,n,t){await n(async()=>{if(t){let r={logGroupName:e,retentionInDays:t},s=new i.PutRetentionPolicyCommand(r);await o.send(s)}else{let r={logGroupName:e},s=new i.DeleteRetentionPolicyCommand(r);await o.send(s)}})}async function q(e,o){try{console.log(JSON.stringify({...e,ResponseURL:"..."}));let t=e.ResourceProperties.LogGroupName,r=e.ResourceProperties.LogGroupRegion,s=L(e.ResourceProperties.SdkRetry?.maxRetries)??10,a=N(s),m={logger:console,region:r},c=new i.CloudWatchLogsClient(m);if((e.RequestType==="Create"||e.RequestType==="Update")&&(await R(t,c,a),await y(t,c,a,L(e.ResourceProperties.RetentionInDays)),e.RequestType==="Create")){let g=new i.CloudWatchLogsClient({logger:console,region:process.env.AWS_REGION});await R(`/aws/lambda/${o.functionName}`,g,a),await y(`/aws/lambda/${o.functionName}`,g,a,1)}e.RequestType==="Delete"&&e.ResourceProperties.RemovalPolicy==="destroy"&&await k(t,c,a),await n("SUCCESS","OK",t)}catch(t){console.log(t),await n("FAILED",t.message,e.ResourceProperties.LogGroupName)}function n(t,r,s){let a=JSON.stringify({Status:t,Reason:r,PhysicalResourceId:s,StackId:e.StackId,RequestId:e.RequestId,LogicalResourceId:e.LogicalResourceId,Data:{LogGroupName:e.ResourceProperties.LogGroupName}});console.log("Responding",a);let m=require("url").parse(e.ResponseURL),c={hostname:m.hostname,path:m.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(a,"utf8")}};return new Promise((g,l)=>{try{let u=require("https").request(c,g);u.on("error",l),u.write(a),u.end()}catch(u){l(u)}})}}function L(e,o=10){if(e!==void 0)return parseInt(e,o)}function N(e,o=1e3,n=6e4){return async t=>{let r=0;do try{return await t()}catch(s){if(f("OperationAbortedException",s)||f("ThrottlingException",s))if(r<e){r++,await D(W(r,o,n));continue}else throw new Error("Out of attempts to change log group");throw s}while(!0)}}function f(e,o){return o.name===e||o.message.includes(e)}function W(e,o,n){return Math.min(Math.round(Math.random()*o*2**e),n)}async function D(e){w&&(e=0),await new Promise(o=>setTimeout(o,e))}
|
|
@@ -60,20 +60,20 @@ var handler = async (event) => {
|
|
|
60
60
|
messageId: res.MessageId,
|
|
61
61
|
err: `httpStatusCode: ${res.$metadata.httpStatusCode}`
|
|
62
62
|
});
|
|
63
|
-
return
|
|
63
|
+
return "NOK";
|
|
64
64
|
}
|
|
65
65
|
log({
|
|
66
66
|
message: "Email sent",
|
|
67
67
|
params,
|
|
68
68
|
res
|
|
69
69
|
});
|
|
70
|
-
return
|
|
70
|
+
return "OK";
|
|
71
71
|
} catch (err) {
|
|
72
72
|
log({
|
|
73
73
|
message: "Error (catch) sending email",
|
|
74
74
|
err
|
|
75
75
|
});
|
|
76
|
-
return
|
|
76
|
+
return "NOK";
|
|
77
77
|
}
|
|
78
78
|
};
|
|
79
79
|
function log(msg) {
|
|
@@ -29370,20 +29370,22 @@ var require_stringify = __commonJS({
|
|
|
29370
29370
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
29371
29371
|
};
|
|
29372
29372
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
29373
|
-
exports2.
|
|
29373
|
+
exports2.getOuterHTML = getOuterHTML;
|
|
29374
|
+
exports2.getInnerHTML = getInnerHTML;
|
|
29375
|
+
exports2.getText = getText;
|
|
29376
|
+
exports2.textContent = textContent;
|
|
29377
|
+
exports2.innerText = innerText;
|
|
29374
29378
|
var domhandler_1 = require_lib3();
|
|
29375
29379
|
var dom_serializer_1 = __importDefault(require_lib5());
|
|
29376
29380
|
var domelementtype_1 = require_lib2();
|
|
29377
29381
|
function getOuterHTML(node, options) {
|
|
29378
29382
|
return (0, dom_serializer_1.default)(node, options);
|
|
29379
29383
|
}
|
|
29380
|
-
exports2.getOuterHTML = getOuterHTML;
|
|
29381
29384
|
function getInnerHTML(node, options) {
|
|
29382
29385
|
return (0, domhandler_1.hasChildren)(node) ? node.children.map(function(node2) {
|
|
29383
29386
|
return getOuterHTML(node2, options);
|
|
29384
29387
|
}).join("") : "";
|
|
29385
29388
|
}
|
|
29386
|
-
exports2.getInnerHTML = getInnerHTML;
|
|
29387
29389
|
function getText(node) {
|
|
29388
29390
|
if (Array.isArray(node))
|
|
29389
29391
|
return node.map(getText).join("");
|
|
@@ -29395,7 +29397,6 @@ var require_stringify = __commonJS({
|
|
|
29395
29397
|
return node.data;
|
|
29396
29398
|
return "";
|
|
29397
29399
|
}
|
|
29398
|
-
exports2.getText = getText;
|
|
29399
29400
|
function textContent(node) {
|
|
29400
29401
|
if (Array.isArray(node))
|
|
29401
29402
|
return node.map(textContent).join("");
|
|
@@ -29406,7 +29407,6 @@ var require_stringify = __commonJS({
|
|
|
29406
29407
|
return node.data;
|
|
29407
29408
|
return "";
|
|
29408
29409
|
}
|
|
29409
|
-
exports2.textContent = textContent;
|
|
29410
29410
|
function innerText(node) {
|
|
29411
29411
|
if (Array.isArray(node))
|
|
29412
29412
|
return node.map(innerText).join("");
|
|
@@ -29417,7 +29417,6 @@ var require_stringify = __commonJS({
|
|
|
29417
29417
|
return node.data;
|
|
29418
29418
|
return "";
|
|
29419
29419
|
}
|
|
29420
|
-
exports2.innerText = innerText;
|
|
29421
29420
|
}
|
|
29422
29421
|
});
|
|
29423
29422
|
|
|
@@ -29426,16 +29425,21 @@ var require_traversal = __commonJS({
|
|
|
29426
29425
|
"node_modules/domutils/lib/traversal.js"(exports2) {
|
|
29427
29426
|
"use strict";
|
|
29428
29427
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
29429
|
-
exports2.
|
|
29428
|
+
exports2.getChildren = getChildren;
|
|
29429
|
+
exports2.getParent = getParent;
|
|
29430
|
+
exports2.getSiblings = getSiblings;
|
|
29431
|
+
exports2.getAttributeValue = getAttributeValue;
|
|
29432
|
+
exports2.hasAttrib = hasAttrib;
|
|
29433
|
+
exports2.getName = getName;
|
|
29434
|
+
exports2.nextElementSibling = nextElementSibling;
|
|
29435
|
+
exports2.prevElementSibling = prevElementSibling;
|
|
29430
29436
|
var domhandler_1 = require_lib3();
|
|
29431
29437
|
function getChildren(elem) {
|
|
29432
29438
|
return (0, domhandler_1.hasChildren)(elem) ? elem.children : [];
|
|
29433
29439
|
}
|
|
29434
|
-
exports2.getChildren = getChildren;
|
|
29435
29440
|
function getParent(elem) {
|
|
29436
29441
|
return elem.parent || null;
|
|
29437
29442
|
}
|
|
29438
|
-
exports2.getParent = getParent;
|
|
29439
29443
|
function getSiblings(elem) {
|
|
29440
29444
|
var _a, _b;
|
|
29441
29445
|
var parent = getParent(elem);
|
|
@@ -29453,20 +29457,16 @@ var require_traversal = __commonJS({
|
|
|
29453
29457
|
}
|
|
29454
29458
|
return siblings;
|
|
29455
29459
|
}
|
|
29456
|
-
exports2.getSiblings = getSiblings;
|
|
29457
29460
|
function getAttributeValue(elem, name) {
|
|
29458
29461
|
var _a;
|
|
29459
29462
|
return (_a = elem.attribs) === null || _a === void 0 ? void 0 : _a[name];
|
|
29460
29463
|
}
|
|
29461
|
-
exports2.getAttributeValue = getAttributeValue;
|
|
29462
29464
|
function hasAttrib(elem, name) {
|
|
29463
29465
|
return elem.attribs != null && Object.prototype.hasOwnProperty.call(elem.attribs, name) && elem.attribs[name] != null;
|
|
29464
29466
|
}
|
|
29465
|
-
exports2.hasAttrib = hasAttrib;
|
|
29466
29467
|
function getName(elem) {
|
|
29467
29468
|
return elem.name;
|
|
29468
29469
|
}
|
|
29469
|
-
exports2.getName = getName;
|
|
29470
29470
|
function nextElementSibling(elem) {
|
|
29471
29471
|
var _a;
|
|
29472
29472
|
var next = elem.next;
|
|
@@ -29474,7 +29474,6 @@ var require_traversal = __commonJS({
|
|
|
29474
29474
|
_a = next, next = _a.next;
|
|
29475
29475
|
return next;
|
|
29476
29476
|
}
|
|
29477
|
-
exports2.nextElementSibling = nextElementSibling;
|
|
29478
29477
|
function prevElementSibling(elem) {
|
|
29479
29478
|
var _a;
|
|
29480
29479
|
var prev = elem.prev;
|
|
@@ -29482,7 +29481,6 @@ var require_traversal = __commonJS({
|
|
|
29482
29481
|
_a = prev, prev = _a.prev;
|
|
29483
29482
|
return prev;
|
|
29484
29483
|
}
|
|
29485
|
-
exports2.prevElementSibling = prevElementSibling;
|
|
29486
29484
|
}
|
|
29487
29485
|
});
|
|
29488
29486
|
|
|
@@ -29491,7 +29489,12 @@ var require_manipulation = __commonJS({
|
|
|
29491
29489
|
"node_modules/domutils/lib/manipulation.js"(exports2) {
|
|
29492
29490
|
"use strict";
|
|
29493
29491
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
29494
|
-
exports2.
|
|
29492
|
+
exports2.removeElement = removeElement;
|
|
29493
|
+
exports2.replaceElement = replaceElement;
|
|
29494
|
+
exports2.appendChild = appendChild;
|
|
29495
|
+
exports2.append = append;
|
|
29496
|
+
exports2.prependChild = prependChild;
|
|
29497
|
+
exports2.prepend = prepend;
|
|
29495
29498
|
function removeElement(elem) {
|
|
29496
29499
|
if (elem.prev)
|
|
29497
29500
|
elem.prev.next = elem.next;
|
|
@@ -29508,7 +29511,6 @@ var require_manipulation = __commonJS({
|
|
|
29508
29511
|
elem.prev = null;
|
|
29509
29512
|
elem.parent = null;
|
|
29510
29513
|
}
|
|
29511
|
-
exports2.removeElement = removeElement;
|
|
29512
29514
|
function replaceElement(elem, replacement) {
|
|
29513
29515
|
var prev = replacement.prev = elem.prev;
|
|
29514
29516
|
if (prev) {
|
|
@@ -29525,7 +29527,6 @@ var require_manipulation = __commonJS({
|
|
|
29525
29527
|
elem.parent = null;
|
|
29526
29528
|
}
|
|
29527
29529
|
}
|
|
29528
|
-
exports2.replaceElement = replaceElement;
|
|
29529
29530
|
function appendChild(parent, child) {
|
|
29530
29531
|
removeElement(child);
|
|
29531
29532
|
child.next = null;
|
|
@@ -29538,7 +29539,6 @@ var require_manipulation = __commonJS({
|
|
|
29538
29539
|
child.prev = null;
|
|
29539
29540
|
}
|
|
29540
29541
|
}
|
|
29541
|
-
exports2.appendChild = appendChild;
|
|
29542
29542
|
function append(elem, next) {
|
|
29543
29543
|
removeElement(next);
|
|
29544
29544
|
var parent = elem.parent;
|
|
@@ -29557,7 +29557,6 @@ var require_manipulation = __commonJS({
|
|
|
29557
29557
|
parent.children.push(next);
|
|
29558
29558
|
}
|
|
29559
29559
|
}
|
|
29560
|
-
exports2.append = append;
|
|
29561
29560
|
function prependChild(parent, child) {
|
|
29562
29561
|
removeElement(child);
|
|
29563
29562
|
child.parent = parent;
|
|
@@ -29570,7 +29569,6 @@ var require_manipulation = __commonJS({
|
|
|
29570
29569
|
child.next = null;
|
|
29571
29570
|
}
|
|
29572
29571
|
}
|
|
29573
|
-
exports2.prependChild = prependChild;
|
|
29574
29572
|
function prepend(elem, prev) {
|
|
29575
29573
|
removeElement(prev);
|
|
29576
29574
|
var parent = elem.parent;
|
|
@@ -29586,7 +29584,6 @@ var require_manipulation = __commonJS({
|
|
|
29586
29584
|
prev.next = elem;
|
|
29587
29585
|
elem.prev = prev;
|
|
29588
29586
|
}
|
|
29589
|
-
exports2.prepend = prepend;
|
|
29590
29587
|
}
|
|
29591
29588
|
});
|
|
29592
29589
|
|
|
@@ -29595,7 +29592,12 @@ var require_querying = __commonJS({
|
|
|
29595
29592
|
"node_modules/domutils/lib/querying.js"(exports2) {
|
|
29596
29593
|
"use strict";
|
|
29597
29594
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
29598
|
-
exports2.
|
|
29595
|
+
exports2.filter = filter;
|
|
29596
|
+
exports2.find = find;
|
|
29597
|
+
exports2.findOneChild = findOneChild;
|
|
29598
|
+
exports2.findOne = findOne;
|
|
29599
|
+
exports2.existsOne = existsOne;
|
|
29600
|
+
exports2.findAll = findAll;
|
|
29599
29601
|
var domhandler_1 = require_lib3();
|
|
29600
29602
|
function filter(test, node, recurse, limit) {
|
|
29601
29603
|
if (recurse === void 0) {
|
|
@@ -29606,10 +29608,9 @@ var require_querying = __commonJS({
|
|
|
29606
29608
|
}
|
|
29607
29609
|
return find(test, Array.isArray(node) ? node : [node], recurse, limit);
|
|
29608
29610
|
}
|
|
29609
|
-
exports2.filter = filter;
|
|
29610
29611
|
function find(test, nodes, recurse, limit) {
|
|
29611
29612
|
var result = [];
|
|
29612
|
-
var nodeStack = [nodes];
|
|
29613
|
+
var nodeStack = [Array.isArray(nodes) ? nodes : [nodes]];
|
|
29613
29614
|
var indexStack = [0];
|
|
29614
29615
|
for (; ; ) {
|
|
29615
29616
|
if (indexStack[0] >= nodeStack[0].length) {
|
|
@@ -29632,38 +29633,35 @@ var require_querying = __commonJS({
|
|
|
29632
29633
|
}
|
|
29633
29634
|
}
|
|
29634
29635
|
}
|
|
29635
|
-
exports2.find = find;
|
|
29636
29636
|
function findOneChild(test, nodes) {
|
|
29637
29637
|
return nodes.find(test);
|
|
29638
29638
|
}
|
|
29639
|
-
exports2.findOneChild = findOneChild;
|
|
29640
29639
|
function findOne(test, nodes, recurse) {
|
|
29641
29640
|
if (recurse === void 0) {
|
|
29642
29641
|
recurse = true;
|
|
29643
29642
|
}
|
|
29644
|
-
var
|
|
29645
|
-
for (var i = 0; i <
|
|
29646
|
-
var node =
|
|
29647
|
-
if (
|
|
29648
|
-
|
|
29649
|
-
}
|
|
29650
|
-
|
|
29651
|
-
|
|
29652
|
-
|
|
29643
|
+
var searchedNodes = Array.isArray(nodes) ? nodes : [nodes];
|
|
29644
|
+
for (var i = 0; i < searchedNodes.length; i++) {
|
|
29645
|
+
var node = searchedNodes[i];
|
|
29646
|
+
if ((0, domhandler_1.isTag)(node) && test(node)) {
|
|
29647
|
+
return node;
|
|
29648
|
+
}
|
|
29649
|
+
if (recurse && (0, domhandler_1.hasChildren)(node) && node.children.length > 0) {
|
|
29650
|
+
var found = findOne(test, node.children, true);
|
|
29651
|
+
if (found)
|
|
29652
|
+
return found;
|
|
29653
29653
|
}
|
|
29654
29654
|
}
|
|
29655
|
-
return
|
|
29655
|
+
return null;
|
|
29656
29656
|
}
|
|
29657
|
-
exports2.findOne = findOne;
|
|
29658
29657
|
function existsOne(test, nodes) {
|
|
29659
|
-
return nodes.some(function(
|
|
29660
|
-
return (0, domhandler_1.isTag)(
|
|
29658
|
+
return (Array.isArray(nodes) ? nodes : [nodes]).some(function(node) {
|
|
29659
|
+
return (0, domhandler_1.isTag)(node) && test(node) || (0, domhandler_1.hasChildren)(node) && existsOne(test, node.children);
|
|
29661
29660
|
});
|
|
29662
29661
|
}
|
|
29663
|
-
exports2.existsOne = existsOne;
|
|
29664
29662
|
function findAll(test, nodes) {
|
|
29665
29663
|
var result = [];
|
|
29666
|
-
var nodeStack = [nodes];
|
|
29664
|
+
var nodeStack = [Array.isArray(nodes) ? nodes : [nodes]];
|
|
29667
29665
|
var indexStack = [0];
|
|
29668
29666
|
for (; ; ) {
|
|
29669
29667
|
if (indexStack[0] >= nodeStack[0].length) {
|
|
@@ -29675,17 +29673,14 @@ var require_querying = __commonJS({
|
|
|
29675
29673
|
continue;
|
|
29676
29674
|
}
|
|
29677
29675
|
var elem = nodeStack[0][indexStack[0]++];
|
|
29678
|
-
if (
|
|
29679
|
-
continue;
|
|
29680
|
-
if (test(elem))
|
|
29676
|
+
if ((0, domhandler_1.isTag)(elem) && test(elem))
|
|
29681
29677
|
result.push(elem);
|
|
29682
|
-
if (elem.children.length > 0) {
|
|
29678
|
+
if ((0, domhandler_1.hasChildren)(elem) && elem.children.length > 0) {
|
|
29683
29679
|
indexStack.unshift(0);
|
|
29684
29680
|
nodeStack.unshift(elem.children);
|
|
29685
29681
|
}
|
|
29686
29682
|
}
|
|
29687
29683
|
}
|
|
29688
|
-
exports2.findAll = findAll;
|
|
29689
29684
|
}
|
|
29690
29685
|
});
|
|
29691
29686
|
|
|
@@ -29694,7 +29689,12 @@ var require_legacy = __commonJS({
|
|
|
29694
29689
|
"node_modules/domutils/lib/legacy.js"(exports2) {
|
|
29695
29690
|
"use strict";
|
|
29696
29691
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
29697
|
-
exports2.
|
|
29692
|
+
exports2.testElement = testElement;
|
|
29693
|
+
exports2.getElements = getElements;
|
|
29694
|
+
exports2.getElementById = getElementById;
|
|
29695
|
+
exports2.getElementsByTagName = getElementsByTagName;
|
|
29696
|
+
exports2.getElementsByClassName = getElementsByClassName;
|
|
29697
|
+
exports2.getElementsByTagType = getElementsByTagType;
|
|
29698
29698
|
var domhandler_1 = require_lib3();
|
|
29699
29699
|
var querying_js_1 = require_querying();
|
|
29700
29700
|
var Checks = {
|
|
@@ -29757,7 +29757,6 @@ var require_legacy = __commonJS({
|
|
|
29757
29757
|
var test = compileTest(options);
|
|
29758
29758
|
return test ? test(node) : true;
|
|
29759
29759
|
}
|
|
29760
|
-
exports2.testElement = testElement;
|
|
29761
29760
|
function getElements(options, nodes, recurse, limit) {
|
|
29762
29761
|
if (limit === void 0) {
|
|
29763
29762
|
limit = Infinity;
|
|
@@ -29765,7 +29764,6 @@ var require_legacy = __commonJS({
|
|
|
29765
29764
|
var test = compileTest(options);
|
|
29766
29765
|
return test ? (0, querying_js_1.filter)(test, nodes, recurse, limit) : [];
|
|
29767
29766
|
}
|
|
29768
|
-
exports2.getElements = getElements;
|
|
29769
29767
|
function getElementById(id, nodes, recurse) {
|
|
29770
29768
|
if (recurse === void 0) {
|
|
29771
29769
|
recurse = true;
|
|
@@ -29774,7 +29772,6 @@ var require_legacy = __commonJS({
|
|
|
29774
29772
|
nodes = [nodes];
|
|
29775
29773
|
return (0, querying_js_1.findOne)(getAttribCheck("id", id), nodes, recurse);
|
|
29776
29774
|
}
|
|
29777
|
-
exports2.getElementById = getElementById;
|
|
29778
29775
|
function getElementsByTagName(tagName, nodes, recurse, limit) {
|
|
29779
29776
|
if (recurse === void 0) {
|
|
29780
29777
|
recurse = true;
|
|
@@ -29784,7 +29781,15 @@ var require_legacy = __commonJS({
|
|
|
29784
29781
|
}
|
|
29785
29782
|
return (0, querying_js_1.filter)(Checks["tag_name"](tagName), nodes, recurse, limit);
|
|
29786
29783
|
}
|
|
29787
|
-
|
|
29784
|
+
function getElementsByClassName(className, nodes, recurse, limit) {
|
|
29785
|
+
if (recurse === void 0) {
|
|
29786
|
+
recurse = true;
|
|
29787
|
+
}
|
|
29788
|
+
if (limit === void 0) {
|
|
29789
|
+
limit = Infinity;
|
|
29790
|
+
}
|
|
29791
|
+
return (0, querying_js_1.filter)(getAttribCheck("class", className), nodes, recurse, limit);
|
|
29792
|
+
}
|
|
29788
29793
|
function getElementsByTagType(type, nodes, recurse, limit) {
|
|
29789
29794
|
if (recurse === void 0) {
|
|
29790
29795
|
recurse = true;
|
|
@@ -29794,7 +29799,6 @@ var require_legacy = __commonJS({
|
|
|
29794
29799
|
}
|
|
29795
29800
|
return (0, querying_js_1.filter)(Checks["tag_type"](type), nodes, recurse, limit);
|
|
29796
29801
|
}
|
|
29797
|
-
exports2.getElementsByTagType = getElementsByTagType;
|
|
29798
29802
|
}
|
|
29799
29803
|
});
|
|
29800
29804
|
|
|
@@ -29803,7 +29807,10 @@ var require_helpers = __commonJS({
|
|
|
29803
29807
|
"node_modules/domutils/lib/helpers.js"(exports2) {
|
|
29804
29808
|
"use strict";
|
|
29805
29809
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
29806
|
-
exports2.
|
|
29810
|
+
exports2.DocumentPosition = void 0;
|
|
29811
|
+
exports2.removeSubsets = removeSubsets;
|
|
29812
|
+
exports2.compareDocumentPosition = compareDocumentPosition;
|
|
29813
|
+
exports2.uniqueSort = uniqueSort;
|
|
29807
29814
|
var domhandler_1 = require_lib3();
|
|
29808
29815
|
function removeSubsets(nodes) {
|
|
29809
29816
|
var idx = nodes.length;
|
|
@@ -29822,7 +29829,6 @@ var require_helpers = __commonJS({
|
|
|
29822
29829
|
}
|
|
29823
29830
|
return nodes;
|
|
29824
29831
|
}
|
|
29825
|
-
exports2.removeSubsets = removeSubsets;
|
|
29826
29832
|
var DocumentPosition;
|
|
29827
29833
|
(function(DocumentPosition2) {
|
|
29828
29834
|
DocumentPosition2[DocumentPosition2["DISCONNECTED"] = 1] = "DISCONNECTED";
|
|
@@ -29830,7 +29836,7 @@ var require_helpers = __commonJS({
|
|
|
29830
29836
|
DocumentPosition2[DocumentPosition2["FOLLOWING"] = 4] = "FOLLOWING";
|
|
29831
29837
|
DocumentPosition2[DocumentPosition2["CONTAINS"] = 8] = "CONTAINS";
|
|
29832
29838
|
DocumentPosition2[DocumentPosition2["CONTAINED_BY"] = 16] = "CONTAINED_BY";
|
|
29833
|
-
})(DocumentPosition
|
|
29839
|
+
})(DocumentPosition || (exports2.DocumentPosition = DocumentPosition = {}));
|
|
29834
29840
|
function compareDocumentPosition(nodeA, nodeB) {
|
|
29835
29841
|
var aParents = [];
|
|
29836
29842
|
var bParents = [];
|
|
@@ -29870,7 +29876,6 @@ var require_helpers = __commonJS({
|
|
|
29870
29876
|
}
|
|
29871
29877
|
return DocumentPosition.PRECEDING;
|
|
29872
29878
|
}
|
|
29873
|
-
exports2.compareDocumentPosition = compareDocumentPosition;
|
|
29874
29879
|
function uniqueSort(nodes) {
|
|
29875
29880
|
nodes = nodes.filter(function(node, i, arr) {
|
|
29876
29881
|
return !arr.includes(node, i + 1);
|
|
@@ -29886,7 +29891,6 @@ var require_helpers = __commonJS({
|
|
|
29886
29891
|
});
|
|
29887
29892
|
return nodes;
|
|
29888
29893
|
}
|
|
29889
|
-
exports2.uniqueSort = uniqueSort;
|
|
29890
29894
|
}
|
|
29891
29895
|
});
|
|
29892
29896
|
|
|
@@ -29895,14 +29899,13 @@ var require_feeds = __commonJS({
|
|
|
29895
29899
|
"node_modules/domutils/lib/feeds.js"(exports2) {
|
|
29896
29900
|
"use strict";
|
|
29897
29901
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
29898
|
-
exports2.getFeed =
|
|
29902
|
+
exports2.getFeed = getFeed;
|
|
29899
29903
|
var stringify_js_1 = require_stringify();
|
|
29900
29904
|
var legacy_js_1 = require_legacy();
|
|
29901
29905
|
function getFeed(doc) {
|
|
29902
29906
|
var feedRoot = getOneElement(isValidFeed, doc);
|
|
29903
29907
|
return !feedRoot ? null : feedRoot.name === "feed" ? getAtomFeed(feedRoot) : getRssFeed(feedRoot);
|
|
29904
29908
|
}
|
|
29905
|
-
exports2.getFeed = getFeed;
|
|
29906
29909
|
function getAtomFeed(feedRoot) {
|
|
29907
29910
|
var _a;
|
|
29908
29911
|
var childs = feedRoot.children;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Retry=exports.includeStackTraces=exports.MISSING_PHYSICAL_ID_MARKER=exports.CREATE_FAILED_PHYSICAL_ID_MARKER=void 0,exports.submitResponse=submitResponse,exports.safeHandler=safeHandler,exports.redactDataFromPayload=redactDataFromPayload;const url=require("url"),outbound_1=require("./outbound"),util_1=require("./util");exports.CREATE_FAILED_PHYSICAL_ID_MARKER="AWSCDK::CustomResourceProviderFramework::CREATE_FAILED",exports.MISSING_PHYSICAL_ID_MARKER="AWSCDK::CustomResourceProviderFramework::MISSING_PHYSICAL_ID";async function submitResponse(status,event,options={}){const json={Status:status,Reason:options.reason||status,StackId:event.StackId,RequestId:event.RequestId,PhysicalResourceId:event.PhysicalResourceId||exports.MISSING_PHYSICAL_ID_MARKER,LogicalResourceId:event.LogicalResourceId,NoEcho:options.noEcho,Data:event.Data},responseBody=JSON.stringify(json),parsedUrl=url.parse(event.ResponseURL),loggingSafeUrl=`${parsedUrl.protocol}//${parsedUrl.hostname}/${parsedUrl.pathname}?***`;options?.noEcho?(0,util_1.log)("submit redacted response to cloudformation",loggingSafeUrl,redactDataFromPayload(json)):(0,util_1.log)("submit response to cloudformation",loggingSafeUrl,json);const retryOptions={attempts:5,sleep:1e3};await(0,util_1.withRetries)(retryOptions,outbound_1.httpRequest)({hostname:parsedUrl.hostname,path:parsedUrl.path,method:"PUT",headers:{"content-type":"","content-length":Buffer.byteLength(responseBody,"utf8")}},responseBody)}exports.includeStackTraces=!0;function safeHandler(block){return async event=>{if(event.RequestType==="Delete"&&event.PhysicalResourceId===exports.CREATE_FAILED_PHYSICAL_ID_MARKER){(0,util_1.log)("ignoring DELETE event caused by a failed CREATE event"),await submitResponse("SUCCESS",event);return}try{await block(event)}catch(e){if(e instanceof Retry)throw(0,util_1.log)("retry requested by handler"),e;event.PhysicalResourceId||(event.RequestType==="Create"?((0,util_1.log)("CREATE failed, responding with a marker physical resource id so that the subsequent DELETE will be ignored"),event.PhysicalResourceId=exports.CREATE_FAILED_PHYSICAL_ID_MARKER):(0,util_1.log)(`ERROR: Malformed event. "PhysicalResourceId" is required: ${JSON.stringify({...event,ResponseURL:"..."})}`)),await submitResponse("FAILED",event,{reason:exports.includeStackTraces?e.stack:e.message})}}}function redactDataFromPayload(payload){const redactedPayload=JSON.parse(JSON.stringify(payload));if(redactedPayload.Data){const keys=Object.keys(redactedPayload.Data);for(const key of keys)redactedPayload.Data[key]="*****"}return redactedPayload}class Retry extends Error{}exports.Retry=Retry;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";const cfnResponse=require("./cfn-response"),consts=require("./consts"),outbound_1=require("./outbound"),util_1=require("./util");async function onEvent(cfnRequest){const sanitizedRequest={...cfnRequest,ResponseURL:"..."};(0,util_1.log)("onEventHandler",sanitizedRequest),cfnRequest.ResourceProperties=cfnRequest.ResourceProperties||{};const onEventResult=await invokeUserFunction(consts.USER_ON_EVENT_FUNCTION_ARN_ENV,sanitizedRequest,cfnRequest.ResponseURL);onEventResult?.NoEcho?(0,util_1.log)("redacted onEvent returned:",cfnResponse.redactDataFromPayload(onEventResult)):(0,util_1.log)("onEvent returned:",onEventResult);const resourceEvent=createResponseEvent(cfnRequest,onEventResult),sanitizedEvent={...resourceEvent,ResponseURL:"..."};if(onEventResult?.NoEcho?(0,util_1.log)("readacted event:",cfnResponse.redactDataFromPayload(sanitizedEvent)):(0,util_1.log)("event:",sanitizedEvent),!process.env[consts.USER_IS_COMPLETE_FUNCTION_ARN_ENV])return cfnResponse.submitResponse("SUCCESS",resourceEvent,{noEcho:resourceEvent.NoEcho});const waiter={stateMachineArn:(0,util_1.getEnv)(consts.WAITER_STATE_MACHINE_ARN_ENV),name:resourceEvent.RequestId,input:JSON.stringify(resourceEvent)};(0,util_1.log)("starting waiter",{stateMachineArn:(0,util_1.getEnv)(consts.WAITER_STATE_MACHINE_ARN_ENV),name:resourceEvent.RequestId}),await(0,outbound_1.startExecution)(waiter)}async function isComplete(event){const sanitizedRequest={...event,ResponseURL:"..."};event?.NoEcho?(0,util_1.log)("redacted isComplete request",cfnResponse.redactDataFromPayload(sanitizedRequest)):(0,util_1.log)("isComplete",sanitizedRequest);const isCompleteResult=await invokeUserFunction(consts.USER_IS_COMPLETE_FUNCTION_ARN_ENV,sanitizedRequest,event.ResponseURL);if(event?.NoEcho?(0,util_1.log)("redacted user isComplete returned:",cfnResponse.redactDataFromPayload(isCompleteResult)):(0,util_1.log)("user isComplete returned:",isCompleteResult),!isCompleteResult.IsComplete)throw isCompleteResult.Data&&Object.keys(isCompleteResult.Data).length>0?new Error('"Data" is not allowed if "IsComplete" is "False"'):new cfnResponse.Retry(JSON.stringify(event));const response={...event,...isCompleteResult,Data:{...event.Data,...isCompleteResult.Data}};await cfnResponse.submitResponse("SUCCESS",response,{noEcho:event.NoEcho})}async function onTimeout(timeoutEvent){(0,util_1.log)("timeoutHandler",timeoutEvent);const isCompleteRequest=JSON.parse(JSON.parse(timeoutEvent.Cause).errorMessage);await cfnResponse.submitResponse("FAILED",isCompleteRequest,{reason:"Operation timed out"})}async function invokeUserFunction(functionArnEnv,sanitizedPayload,responseUrl){const functionArn=(0,util_1.getEnv)(functionArnEnv);(0,util_1.log)(`executing user function ${functionArn} with payload`,sanitizedPayload);const resp=await(0,outbound_1.invokeFunction)({FunctionName:functionArn,Payload:JSON.stringify({...sanitizedPayload,ResponseURL:responseUrl})});(0,util_1.log)("user function response:",resp,typeof resp);const jsonPayload=(0,util_1.parseJsonPayload)(resp.Payload);if(resp.FunctionError){(0,util_1.log)("user function threw an error:",resp.FunctionError);const errorMessage=jsonPayload.errorMessage||"error",arn=functionArn.split(":"),functionName=arn[arn.length-1],message=[errorMessage,"",`Logs: /aws/lambda/${functionName}`,""].join(`
|
|
2
|
+
`),e=new Error(message);throw jsonPayload.trace&&(e.stack=[message,...jsonPayload.trace.slice(1)].join(`
|
|
3
|
+
`)),e}return jsonPayload}function createResponseEvent(cfnRequest,onEventResult){onEventResult=onEventResult||{};const physicalResourceId=onEventResult.PhysicalResourceId||defaultPhysicalResourceId(cfnRequest);if(cfnRequest.RequestType==="Delete"&&physicalResourceId!==cfnRequest.PhysicalResourceId)throw new Error(`DELETE: cannot change the physical resource ID from "${cfnRequest.PhysicalResourceId}" to "${onEventResult.PhysicalResourceId}" during deletion`);return cfnRequest.RequestType==="Update"&&physicalResourceId!==cfnRequest.PhysicalResourceId&&(0,util_1.log)(`UPDATE: changing physical resource ID from "${cfnRequest.PhysicalResourceId}" to "${onEventResult.PhysicalResourceId}"`),{...cfnRequest,...onEventResult,PhysicalResourceId:physicalResourceId}}function defaultPhysicalResourceId(req){switch(req.RequestType){case"Create":return req.RequestId;case"Update":case"Delete":return req.PhysicalResourceId;default:throw new Error(`Invalid "RequestType" in request "${JSON.stringify(req)}"`)}}module.exports={[consts.FRAMEWORK_ON_EVENT_HANDLER_NAME]:cfnResponse.safeHandler(onEvent),[consts.FRAMEWORK_IS_COMPLETE_HANDLER_NAME]:cfnResponse.safeHandler(isComplete),[consts.FRAMEWORK_ON_TIMEOUT_HANDLER_NAME]:onTimeout};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.httpRequest=exports.invokeFunction=exports.startExecution=void 0;const https=require("https"),client_lambda_1=require("@aws-sdk/client-lambda"),client_sfn_1=require("@aws-sdk/client-sfn"),FRAMEWORK_HANDLER_TIMEOUT=9e5,awsSdkConfig={httpOptions:{timeout:FRAMEWORK_HANDLER_TIMEOUT}};async function defaultHttpRequest(options,requestBody){return new Promise((resolve,reject)=>{try{const request=https.request(options,response=>{response.resume(),!response.statusCode||response.statusCode>=400?reject(new Error(`Unsuccessful HTTP response: ${response.statusCode}`)):resolve()});request.on("error",reject),request.write(requestBody),request.end()}catch(e){reject(e)}})}let sfn,lambda;async function defaultStartExecution(req){return sfn||(sfn=new client_sfn_1.SFN(awsSdkConfig)),sfn.startExecution(req)}async function defaultInvokeFunction(req){lambda||(lambda=new client_lambda_1.Lambda(awsSdkConfig));try{return await lambda.invoke(req)}catch{return await(0,client_lambda_1.waitUntilFunctionActiveV2)({client:lambda,maxWaitTime:300},{FunctionName:req.FunctionName}),lambda.invoke(req)}}exports.startExecution=defaultStartExecution,exports.invokeFunction=defaultInvokeFunction,exports.httpRequest=defaultHttpRequest;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getEnv=getEnv,exports.log=log,exports.withRetries=withRetries,exports.parseJsonPayload=parseJsonPayload;function getEnv(name){const value=process.env[name];if(!value)throw new Error(`The environment variable "${name}" is not defined`);return value}function log(title,...args){console.log("[provider-framework]",title,...args.map(x=>typeof x=="object"?JSON.stringify(x,void 0,2):x))}function withRetries(options,fn){return async(...xs)=>{let attempts=options.attempts,ms=options.sleep;for(;;)try{return await fn(...xs)}catch(e){if(attempts--<=0)throw e;await sleep(Math.floor(Math.random()*ms)),ms*=2}}}async function sleep(ms){return new Promise(ok=>setTimeout(ok,ms))}function parseJsonPayload(payload){const text=new TextDecoder().decode(Buffer.from(payload??""));if(!text)return{};try{return JSON.parse(text)}catch{throw new Error(`return values from user-handlers must be JSON objects. got: "${text}"`)}}
|