@mapbox/cloudfriend 8.4.0 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/.github/workflows/test.yml +2 -2
  2. package/.nyc_output/0030e99c-2d96-4ac6-a2b2-bffd93da01bc.json +1 -0
  3. package/.nyc_output/e1868cff-0dd0-46eb-866d-70c3b666dae8.json +1 -0
  4. package/.nyc_output/processinfo/0030e99c-2d96-4ac6-a2b2-bffd93da01bc.json +1 -0
  5. package/.nyc_output/processinfo/e1868cff-0dd0-46eb-866d-70c3b666dae8.json +1 -0
  6. package/.nyc_output/processinfo/index.json +1 -1
  7. package/changelog.md +11 -0
  8. package/lib/shortcuts/api.md +1 -1
  9. package/lib/shortcuts/lambda.js +2 -2
  10. package/lib/validate.js +3 -4
  11. package/package.json +3 -3
  12. package/requirements.dev.txt +2 -2
  13. package/test/fixtures/shortcuts/event-lambda-custom-eventbus.json +1 -1
  14. package/test/fixtures/shortcuts/event-lambda-defaults.json +1 -1
  15. package/test/fixtures/shortcuts/event-lambda-full.json +1 -1
  16. package/test/fixtures/shortcuts/hookshot-github-compatible-legacy-node-runtimes.json +1 -1
  17. package/test/fixtures/shortcuts/hookshot-github-secret-ref.json +4 -4
  18. package/test/fixtures/shortcuts/hookshot-github-secret-string.json +4 -4
  19. package/test/fixtures/shortcuts/hookshot-github.json +4 -4
  20. package/test/fixtures/shortcuts/hookshot-passthrough-access-log-format.json +4 -4
  21. package/test/fixtures/shortcuts/hookshot-passthrough-alarms.json +4 -4
  22. package/test/fixtures/shortcuts/hookshot-passthrough-compatible-legacy-node-runtimes.json +1 -1
  23. package/test/fixtures/shortcuts/hookshot-passthrough-enhanced-logging.json +4 -4
  24. package/test/fixtures/shortcuts/hookshot-passthrough-full-blown-logging.json +4 -4
  25. package/test/fixtures/shortcuts/hookshot-passthrough-logging.json +4 -4
  26. package/test/fixtures/shortcuts/hookshot-passthrough.json +4 -4
  27. package/test/fixtures/shortcuts/lambda-defaults.json +1 -1
  28. package/test/fixtures/shortcuts/lambda-full.json +4 -4
  29. package/test/fixtures/shortcuts/lambda-provided-role.json +1 -1
  30. package/test/fixtures/shortcuts/lambda-zipfile.json +1 -1
  31. package/test/fixtures/shortcuts/log-subscription-lambda-defaults.json +1 -1
  32. package/test/fixtures/shortcuts/log-subscription-lambda-no-defaults.json +1 -1
  33. package/test/fixtures/shortcuts/queue-full.json +0 -1
  34. package/test/fixtures/shortcuts/queue-lambda-zero.json +1 -1
  35. package/test/fixtures/shortcuts/queue-lambda.json +1 -1
  36. package/test/fixtures/shortcuts/scheduled-lambda-defaults.json +1 -1
  37. package/test/fixtures/shortcuts/scheduled-lambda-full.json +1 -1
  38. package/test/fixtures/shortcuts/stream-lambda-defaults.json +1 -1
  39. package/test/fixtures/shortcuts/stream-lambda-no-defaults.json +1 -1
  40. package/test/shortcuts.test.js +4 -5
  41. package/.idea/cloudfriend.iml +0 -12
  42. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  43. package/.idea/jsLinters/eslint.xml +0 -6
  44. package/.idea/modules.xml +0 -8
  45. package/.idea/prettier.xml +0 -7
  46. package/.idea/vcs.xml +0 -6
  47. package/.nyc_output/0fc2470e-3a8d-4dc5-9b90-4c08e5e9a357.json +0 -1
  48. package/.nyc_output/processinfo/0fc2470e-3a8d-4dc5-9b90-4c08e5e9a357.json +0 -1
  49. package/mapbox-cloudfriend-8.2.0.tgz +0 -0
  50. package/mapbox-cloudfriend-8.2.1-alpha.1.tgz +0 -0
  51. package/mapbox-cloudfriend-8.2.1-dns.1.tgz +0 -0
@@ -22,7 +22,7 @@ const ServiceRole = require('./service-role');
22
22
  * @param {Array<String>} [options.Layers=undefined] - See [AWS documentation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-layers).
23
23
  * @param {Number} [options.MemorySize=128] - See [AWS documentation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize).
24
24
  * @param {Number} [options.ReservedConcurrentExecutions=undefined] - See [AWS documentation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-reservedconcurrentexecutions).
25
- * @param {String} [options.Runtime='nodejs18.x'] - See [AWS documentation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime).
25
+ * @param {String} [options.Runtime='nodejs22.x'] - See [AWS documentation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime).
26
26
  * @param {Array<Object>} [options.Tags=undefined] - See [AWS documentation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags).
27
27
  * @param {Number} [options.Timeout=300] - See [AWS documentation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-timeout).
28
28
  * @param {Object} [options.TracingConfig=undefined] - See [AWS documentation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig).
@@ -81,7 +81,7 @@ class Lambda {
81
81
  Layers,
82
82
  MemorySize = 128,
83
83
  ReservedConcurrentExecutions,
84
- Runtime = 'nodejs18.x',
84
+ Runtime = 'nodejs22.x',
85
85
  Tags,
86
86
  Timeout = 300,
87
87
  TracingConfig,
package/lib/validate.js CHANGED
@@ -1,7 +1,6 @@
1
1
  'use strict';
2
2
 
3
- require('aws-sdk/lib/maintenance_mode_message').suppress = true;
4
- const AWS = require('aws-sdk');
3
+ const { CloudFormationClient, ValidateTemplateCommand } = require('@aws-sdk/client-cloudformation');
5
4
  const build = require('./build');
6
5
 
7
6
  /**
@@ -16,9 +15,9 @@ const build = require('./build');
16
15
  * reject if it is not.
17
16
  */
18
17
  module.exports = (templatePath, region) => {
19
- const cfn = new AWS.CloudFormation({ region: region || 'us-east-1' });
18
+ const cfn = new CloudFormationClient({ region: region || 'us-east-1' });
20
19
 
21
20
  return build(templatePath, { region: region || 'us-east-1' }).then((template) => {
22
- return cfn.validateTemplate({ TemplateBody: JSON.stringify(template) }).promise();
21
+ return cfn.send(new ValidateTemplateCommand({ TemplateBody: JSON.stringify(template) }));
23
22
  });
24
23
  };
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@mapbox/cloudfriend",
3
- "version": "8.4.0",
3
+ "version": "9.0.0",
4
4
  "description": "Helper functions for assembling CloudFormation templates in JavaScript",
5
5
  "main": "index.js",
6
6
  "engines": {
7
- "node": ">=14"
7
+ "node": ">=20"
8
8
  },
9
9
  "scripts": {
10
10
  "pretest": "npm run lint && npm run shortcuts-api-doc",
@@ -45,7 +45,7 @@
45
45
  "tape": "^4.6.0"
46
46
  },
47
47
  "dependencies": {
48
- "aws-sdk": "^2.1425.0",
48
+ "@aws-sdk/client-cloudformation": "^3.848.0",
49
49
  "minimist": "^1.2.6",
50
50
  "redent": "^2.0.0"
51
51
  },
@@ -1,2 +1,2 @@
1
- aws-sam-cli==1.94.0
2
- cfn-lint==0.78.1
1
+ aws-sam-cli==1.142.1
2
+ cfn-lint==1.36.1
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -316,7 +316,7 @@
316
316
  },
317
317
  "Handler": "index.handler",
318
318
  "MemorySize": 128,
319
- "Runtime": "nodejs18.x",
319
+ "Runtime": "nodejs22.x",
320
320
  "Timeout": 300,
321
321
  "Role": {
322
322
  "Fn::GetAtt": [
@@ -28,7 +28,7 @@
28
28
  "Type": "AWS::ApiGateway::Stage",
29
29
  "Properties": {
30
30
  "DeploymentId": {
31
- "Ref": "PassDeployment2a35d33e"
31
+ "Ref": "PassDeploymentbdbc0f16"
32
32
  },
33
33
  "StageName": "hookshot",
34
34
  "RestApiId": {
@@ -47,7 +47,7 @@
47
47
  ]
48
48
  }
49
49
  },
50
- "PassDeployment2a35d33e": {
50
+ "PassDeploymentbdbc0f16": {
51
51
  "Type": "AWS::ApiGateway::Deployment",
52
52
  "DependsOn": "PassMethod",
53
53
  "Properties": {
@@ -181,7 +181,7 @@
181
181
  },
182
182
  "Handler": "index.lambda",
183
183
  "MemorySize": 128,
184
- "Runtime": "nodejs18.x",
184
+ "Runtime": "nodejs22.x",
185
185
  "Timeout": 30,
186
186
  "Role": {
187
187
  "Fn::GetAtt": [
@@ -322,7 +322,7 @@
322
322
  },
323
323
  "Handler": "index.handler",
324
324
  "MemorySize": 128,
325
- "Runtime": "nodejs18.x",
325
+ "Runtime": "nodejs22.x",
326
326
  "Timeout": 300,
327
327
  "Role": {
328
328
  "Fn::GetAtt": [
@@ -24,7 +24,7 @@
24
24
  "Type": "AWS::ApiGateway::Stage",
25
25
  "Properties": {
26
26
  "DeploymentId": {
27
- "Ref": "PassDeployment2a35d33e"
27
+ "Ref": "PassDeploymentbdbc0f16"
28
28
  },
29
29
  "StageName": "hookshot",
30
30
  "RestApiId": {
@@ -43,7 +43,7 @@
43
43
  ]
44
44
  }
45
45
  },
46
- "PassDeployment2a35d33e": {
46
+ "PassDeploymentbdbc0f16": {
47
47
  "Type": "AWS::ApiGateway::Deployment",
48
48
  "DependsOn": "PassMethod",
49
49
  "Properties": {
@@ -175,7 +175,7 @@
175
175
  },
176
176
  "Handler": "index.lambda",
177
177
  "MemorySize": 128,
178
- "Runtime": "nodejs18.x",
178
+ "Runtime": "nodejs22.x",
179
179
  "Timeout": 30,
180
180
  "Role": {
181
181
  "Fn::GetAtt": [
@@ -316,7 +316,7 @@
316
316
  },
317
317
  "Handler": "index.handler",
318
318
  "MemorySize": 128,
319
- "Runtime": "nodejs18.x",
319
+ "Runtime": "nodejs22.x",
320
320
  "Timeout": 300,
321
321
  "Role": {
322
322
  "Fn::GetAtt": [
@@ -24,7 +24,7 @@
24
24
  "Type": "AWS::ApiGateway::Stage",
25
25
  "Properties": {
26
26
  "DeploymentId": {
27
- "Ref": "PassDeployment2a35d33e"
27
+ "Ref": "PassDeploymentbdbc0f16"
28
28
  },
29
29
  "StageName": "hookshot",
30
30
  "RestApiId": {
@@ -43,7 +43,7 @@
43
43
  ]
44
44
  }
45
45
  },
46
- "PassDeployment2a35d33e": {
46
+ "PassDeploymentbdbc0f16": {
47
47
  "Type": "AWS::ApiGateway::Deployment",
48
48
  "DependsOn": "PassMethod",
49
49
  "Properties": {
@@ -183,7 +183,7 @@
183
183
  },
184
184
  "Handler": "index.lambda",
185
185
  "MemorySize": 128,
186
- "Runtime": "nodejs18.x",
186
+ "Runtime": "nodejs22.x",
187
187
  "Timeout": 30,
188
188
  "Role": {
189
189
  "Fn::GetAtt": [
@@ -324,7 +324,7 @@
324
324
  },
325
325
  "Handler": "index.handler",
326
326
  "MemorySize": 128,
327
- "Runtime": "nodejs18.x",
327
+ "Runtime": "nodejs22.x",
328
328
  "Timeout": 300,
329
329
  "Role": {
330
330
  "Fn::GetAtt": [
@@ -24,7 +24,7 @@
24
24
  "Type": "AWS::ApiGateway::Stage",
25
25
  "Properties": {
26
26
  "DeploymentId": {
27
- "Ref": "PassDeployment2a35d33e"
27
+ "Ref": "PassDeploymentbdbc0f16"
28
28
  },
29
29
  "StageName": "hookshot",
30
30
  "RestApiId": {
@@ -52,7 +52,7 @@
52
52
  }
53
53
  }
54
54
  },
55
- "PassDeployment2a35d33e": {
55
+ "PassDeploymentbdbc0f16": {
56
56
  "Type": "AWS::ApiGateway::Deployment",
57
57
  "DependsOn": "PassMethod",
58
58
  "Properties": {
@@ -179,7 +179,7 @@
179
179
  },
180
180
  "Handler": "index.lambda",
181
181
  "MemorySize": 128,
182
- "Runtime": "nodejs18.x",
182
+ "Runtime": "nodejs22.x",
183
183
  "Timeout": 30,
184
184
  "Role": {
185
185
  "Fn::GetAtt": [
@@ -320,7 +320,7 @@
320
320
  },
321
321
  "Handler": "index.handler",
322
322
  "MemorySize": 128,
323
- "Runtime": "nodejs18.x",
323
+ "Runtime": "nodejs22.x",
324
324
  "Timeout": 300,
325
325
  "Role": {
326
326
  "Fn::GetAtt": [
@@ -24,7 +24,7 @@
24
24
  "Type": "AWS::ApiGateway::Stage",
25
25
  "Properties": {
26
26
  "DeploymentId": {
27
- "Ref": "PassDeployment2a35d33e"
27
+ "Ref": "PassDeploymentbdbc0f16"
28
28
  },
29
29
  "StageName": "hookshot",
30
30
  "RestApiId": {
@@ -43,7 +43,7 @@
43
43
  ]
44
44
  }
45
45
  },
46
- "PassDeployment2a35d33e": {
46
+ "PassDeploymentbdbc0f16": {
47
47
  "Type": "AWS::ApiGateway::Deployment",
48
48
  "DependsOn": "PassMethod",
49
49
  "Properties": {
@@ -161,7 +161,7 @@
161
161
  },
162
162
  "Handler": "index.lambda",
163
163
  "MemorySize": 128,
164
- "Runtime": "nodejs18.x",
164
+ "Runtime": "nodejs22.x",
165
165
  "Timeout": 30,
166
166
  "Role": {
167
167
  "Fn::GetAtt": [
@@ -304,7 +304,7 @@
304
304
  },
305
305
  "Handler": "index.handler",
306
306
  "MemorySize": 128,
307
- "Runtime": "nodejs18.x",
307
+ "Runtime": "nodejs22.x",
308
308
  "Timeout": 300,
309
309
  "Role": {
310
310
  "Fn::GetAtt": [
@@ -302,7 +302,7 @@
302
302
  },
303
303
  "Handler": "index.handler",
304
304
  "MemorySize": 128,
305
- "Runtime": "nodejs18.x",
305
+ "Runtime": "nodejs22.x",
306
306
  "Timeout": 300,
307
307
  "Role": {
308
308
  "Fn::GetAtt": [
@@ -24,7 +24,7 @@
24
24
  "Type": "AWS::ApiGateway::Stage",
25
25
  "Properties": {
26
26
  "DeploymentId": {
27
- "Ref": "PassDeployment2a35d33e"
27
+ "Ref": "PassDeploymentbdbc0f16"
28
28
  },
29
29
  "StageName": "hookshot",
30
30
  "RestApiId": {
@@ -43,7 +43,7 @@
43
43
  ]
44
44
  }
45
45
  },
46
- "PassDeployment2a35d33e": {
46
+ "PassDeploymentbdbc0f16": {
47
47
  "Type": "AWS::ApiGateway::Deployment",
48
48
  "DependsOn": "PassMethod",
49
49
  "Properties": {
@@ -161,7 +161,7 @@
161
161
  },
162
162
  "Handler": "index.lambda",
163
163
  "MemorySize": 128,
164
- "Runtime": "nodejs18.x",
164
+ "Runtime": "nodejs22.x",
165
165
  "Timeout": 30,
166
166
  "Role": {
167
167
  "Fn::GetAtt": [
@@ -302,7 +302,7 @@
302
302
  },
303
303
  "Handler": "index.handler",
304
304
  "MemorySize": 128,
305
- "Runtime": "nodejs18.x",
305
+ "Runtime": "nodejs22.x",
306
306
  "Timeout": 300,
307
307
  "Role": {
308
308
  "Fn::GetAtt": [
@@ -24,7 +24,7 @@
24
24
  "Type": "AWS::ApiGateway::Stage",
25
25
  "Properties": {
26
26
  "DeploymentId": {
27
- "Ref": "PassDeployment2a35d33e"
27
+ "Ref": "PassDeploymentbdbc0f16"
28
28
  },
29
29
  "StageName": "hookshot",
30
30
  "RestApiId": {
@@ -43,7 +43,7 @@
43
43
  ]
44
44
  }
45
45
  },
46
- "PassDeployment2a35d33e": {
46
+ "PassDeploymentbdbc0f16": {
47
47
  "Type": "AWS::ApiGateway::Deployment",
48
48
  "DependsOn": "PassMethod",
49
49
  "Properties": {
@@ -161,7 +161,7 @@
161
161
  },
162
162
  "Handler": "index.lambda",
163
163
  "MemorySize": 128,
164
- "Runtime": "nodejs18.x",
164
+ "Runtime": "nodejs22.x",
165
165
  "Timeout": 30,
166
166
  "Role": {
167
167
  "Fn::GetAtt": [
@@ -302,7 +302,7 @@
302
302
  },
303
303
  "Handler": "index.handler",
304
304
  "MemorySize": 128,
305
- "Runtime": "nodejs18.x",
305
+ "Runtime": "nodejs22.x",
306
306
  "Timeout": 300,
307
307
  "Role": {
308
308
  "Fn::GetAtt": [
@@ -24,7 +24,7 @@
24
24
  "Type": "AWS::ApiGateway::Stage",
25
25
  "Properties": {
26
26
  "DeploymentId": {
27
- "Ref": "PassDeployment2a35d33e"
27
+ "Ref": "PassDeploymentbdbc0f16"
28
28
  },
29
29
  "StageName": "hookshot",
30
30
  "RestApiId": {
@@ -43,7 +43,7 @@
43
43
  ]
44
44
  }
45
45
  },
46
- "PassDeployment2a35d33e": {
46
+ "PassDeploymentbdbc0f16": {
47
47
  "Type": "AWS::ApiGateway::Deployment",
48
48
  "DependsOn": "PassMethod",
49
49
  "Properties": {
@@ -161,7 +161,7 @@
161
161
  },
162
162
  "Handler": "index.lambda",
163
163
  "MemorySize": 128,
164
- "Runtime": "nodejs18.x",
164
+ "Runtime": "nodejs22.x",
165
165
  "Timeout": 30,
166
166
  "Role": {
167
167
  "Fn::GetAtt": [
@@ -302,7 +302,7 @@
302
302
  },
303
303
  "Handler": "index.handler",
304
304
  "MemorySize": 128,
305
- "Runtime": "nodejs18.x",
305
+ "Runtime": "nodejs22.x",
306
306
  "Timeout": 300,
307
307
  "Role": {
308
308
  "Fn::GetAtt": [
@@ -24,7 +24,7 @@
24
24
  "Type": "AWS::ApiGateway::Stage",
25
25
  "Properties": {
26
26
  "DeploymentId": {
27
- "Ref": "PassDeployment2a35d33e"
27
+ "Ref": "PassDeploymentbdbc0f16"
28
28
  },
29
29
  "StageName": "hookshot",
30
30
  "RestApiId": {
@@ -43,7 +43,7 @@
43
43
  ]
44
44
  }
45
45
  },
46
- "PassDeployment2a35d33e": {
46
+ "PassDeploymentbdbc0f16": {
47
47
  "Type": "AWS::ApiGateway::Deployment",
48
48
  "DependsOn": "PassMethod",
49
49
  "Properties": {
@@ -161,7 +161,7 @@
161
161
  },
162
162
  "Handler": "index.lambda",
163
163
  "MemorySize": 128,
164
- "Runtime": "nodejs18.x",
164
+ "Runtime": "nodejs22.x",
165
165
  "Timeout": 30,
166
166
  "Role": {
167
167
  "Fn::GetAtt": [
@@ -302,7 +302,7 @@
302
302
  },
303
303
  "Handler": "index.handler",
304
304
  "MemorySize": 128,
305
- "Runtime": "nodejs18.x",
305
+ "Runtime": "nodejs22.x",
306
306
  "Timeout": 300,
307
307
  "Role": {
308
308
  "Fn::GetAtt": [
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -46,25 +46,25 @@
46
46
  "Description": "my description",
47
47
  "Environment": {
48
48
  "Variables": {
49
- "A": "a"
49
+ "MyCoolEnv": "a"
50
50
  }
51
51
  },
52
52
  "FunctionName": "my-function",
53
53
  "Handler": "index.something",
54
54
  "KmsKeyArn": "arn:aws:kms:us-east-1:123456789012:key/fake",
55
55
  "Layers": [
56
- "arn:aws:fake:layer/abc"
56
+ "arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4"
57
57
  ],
58
58
  "MemorySize": 512,
59
59
  "ReservedConcurrentExecutions": 10,
60
- "Runtime": "nodejs18.x",
60
+ "Runtime": "nodejs22.x",
61
61
  "Timeout": 30,
62
62
  "TracingConfig": {
63
63
  "Mode": "Active"
64
64
  },
65
65
  "VpcConfig": {
66
66
  "SecurityGroupIds": [
67
- "sg-12345"
67
+ "sg-12345678"
68
68
  ],
69
69
  "SubnetIds": [
70
70
  "fake"
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -36,7 +36,7 @@
36
36
  },
37
37
  "Handler": "index.handler",
38
38
  "MemorySize": 128,
39
- "Runtime": "nodejs18.x",
39
+ "Runtime": "nodejs22.x",
40
40
  "Timeout": 300,
41
41
  "Role": {
42
42
  "Fn::GetAtt": [
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -21,7 +21,6 @@
21
21
  "Condition": "Always",
22
22
  "DependsOn": "AnotherThing",
23
23
  "Properties": {
24
- "ContentBasedDeduplication": true,
25
24
  "DelaySeconds": 60,
26
25
  "KmsMasterKeyId": "alias/my-key",
27
26
  "MaximumMessageSize": 1024,
@@ -38,7 +38,7 @@
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
40
  "ReservedConcurrentExecutions": 0,
41
- "Runtime": "nodejs18.x",
41
+ "Runtime": "nodejs22.x",
42
42
  "Timeout": 300,
43
43
  "Role": {
44
44
  "Fn::GetAtt": [
@@ -38,7 +38,7 @@
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
40
  "ReservedConcurrentExecutions": 10,
41
- "Runtime": "nodejs18.x",
41
+ "Runtime": "nodejs22.x",
42
42
  "Timeout": 300,
43
43
  "Role": {
44
44
  "Fn::GetAtt": [
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "Handler": "index.handler",
39
39
  "MemorySize": 128,
40
- "Runtime": "nodejs18.x",
40
+ "Runtime": "nodejs22.x",
41
41
  "Timeout": 300,
42
42
  "Role": {
43
43
  "Fn::GetAtt": [
@@ -155,19 +155,19 @@ test('[shortcuts] lambda', (assert) => {
155
155
  TargetArn: 'arn:aws:sqs:us-east-1:123456789012:queue/fake'
156
156
  },
157
157
  Description: 'my description',
158
- Environment: { Variables: { A: 'a' } },
158
+ Environment: { Variables: { MyCoolEnv: 'a' } },
159
159
  FunctionName: 'my-function',
160
160
  Handler: 'index.something',
161
161
  KmsKeyArn: 'arn:aws:kms:us-east-1:123456789012:key/fake',
162
- Layers: ['arn:aws:fake:layer/abc'],
162
+ Layers: ['arn:aws:lambda:us-east-2:590474943231:layer:AWS-Parameters-and-Secrets-Lambda-Extension:4'],
163
163
  MemorySize: 512,
164
164
  ReservedConcurrentExecutions: 10,
165
- Runtime: 'nodejs18.x',
165
+ Runtime: 'nodejs22.x',
166
166
  Tags: [{ Key: 'a', Value: 'b' }],
167
167
  Timeout: 30,
168
168
  TracingConfig: { Mode: 'Active' },
169
169
  VpcConfig: {
170
- SecurityGroupIds: ['sg-12345'],
170
+ SecurityGroupIds: ['sg-12345678'],
171
171
  SubnetIds: ['fake']
172
172
  },
173
173
  Condition: 'Always',
@@ -675,7 +675,6 @@ test('[shortcuts] queue', (assert) => {
675
675
  LogicalName: 'MyQueue',
676
676
  VisibilityTimeout: 60,
677
677
  maxReceiveCount: 100,
678
- ContentBasedDeduplication: true,
679
678
  DelaySeconds: 60,
680
679
  KmsMasterKeyId: 'alias/my-key',
681
680
  KmsDataKeyReusePeriondSeconds: 86400,
@@ -1,12 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <module type="WEB_MODULE" version="4">
3
- <component name="NewModuleRootManager">
4
- <content url="file://$MODULE_DIR$">
5
- <excludeFolder url="file://$MODULE_DIR$/.tmp" />
6
- <excludeFolder url="file://$MODULE_DIR$/temp" />
7
- <excludeFolder url="file://$MODULE_DIR$/tmp" />
8
- </content>
9
- <orderEntry type="inheritedJdk" />
10
- <orderEntry type="sourceFolder" forTests="false" />
11
- </component>
12
- </module>
@@ -1,6 +0,0 @@
1
- <component name="InspectionProjectProfileManager">
2
- <profile version="1.0">
3
- <option name="myName" value="Project Default" />
4
- <inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" />
5
- </profile>
6
- </component>