aws-lambda-devkit 0.1.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.
- package/CHANGELOG.md +72 -0
- package/LICENSE +21 -0
- package/README.md +214 -0
- package/dist/aws/batch-response.d.ts +8 -0
- package/dist/aws/batch-response.d.ts.map +1 -0
- package/dist/aws/batch-response.js +12 -0
- package/dist/aws/batch-response.js.map +1 -0
- package/dist/aws/clients.d.ts +6 -0
- package/dist/aws/clients.d.ts.map +1 -0
- package/dist/aws/clients.js +30 -0
- package/dist/aws/clients.js.map +1 -0
- package/dist/aws/sns-publish.d.ts +10 -0
- package/dist/aws/sns-publish.d.ts.map +1 -0
- package/dist/aws/sns-publish.js +17 -0
- package/dist/aws/sns-publish.js.map +1 -0
- package/dist/aws/sqs-listen.d.ts +17 -0
- package/dist/aws/sqs-listen.d.ts.map +1 -0
- package/dist/aws/sqs-listen.js +113 -0
- package/dist/aws/sqs-listen.js.map +1 -0
- package/dist/aws/sqs-process.d.ts +39 -0
- package/dist/aws/sqs-process.d.ts.map +1 -0
- package/dist/aws/sqs-process.js +95 -0
- package/dist/aws/sqs-process.js.map +1 -0
- package/dist/aws/sqs-send.d.ts +15 -0
- package/dist/aws/sqs-send.d.ts.map +1 -0
- package/dist/aws/sqs-send.js +27 -0
- package/dist/aws/sqs-send.js.map +1 -0
- package/dist/aws/sqs-visibility.d.ts +10 -0
- package/dist/aws/sqs-visibility.d.ts.map +1 -0
- package/dist/aws/sqs-visibility.js +29 -0
- package/dist/aws/sqs-visibility.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +187 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/config-cmd.d.ts +5 -0
- package/dist/commands/config-cmd.d.ts.map +1 -0
- package/dist/commands/config-cmd.js +8 -0
- package/dist/commands/config-cmd.js.map +1 -0
- package/dist/commands/config.d.ts +2 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +24 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/init.d.ts +7 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +59 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/list.d.ts +4 -0
- package/dist/commands/list.d.ts.map +1 -0
- package/dist/commands/list.js +23 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/listen.d.ts +20 -0
- package/dist/commands/listen.d.ts.map +1 -0
- package/dist/commands/listen.js +36 -0
- package/dist/commands/listen.js.map +1 -0
- package/dist/commands/send.d.ts +17 -0
- package/dist/commands/send.d.ts.map +1 -0
- package/dist/commands/send.js +51 -0
- package/dist/commands/send.js.map +1 -0
- package/dist/commands/test.d.ts +23 -0
- package/dist/commands/test.d.ts.map +1 -0
- package/dist/commands/test.js +123 -0
- package/dist/commands/test.js.map +1 -0
- package/dist/config/env.d.ts +8 -0
- package/dist/config/env.d.ts.map +1 -0
- package/dist/config/env.js +16 -0
- package/dist/config/env.js.map +1 -0
- package/dist/config/load.d.ts +9 -0
- package/dist/config/load.d.ts.map +1 -0
- package/dist/config/load.js +72 -0
- package/dist/config/load.js.map +1 -0
- package/dist/config/merge.d.ts +36 -0
- package/dist/config/merge.d.ts.map +1 -0
- package/dist/config/merge.js +89 -0
- package/dist/config/merge.js.map +1 -0
- package/dist/config/project-env.d.ts +34 -0
- package/dist/config/project-env.d.ts.map +1 -0
- package/dist/config/project-env.js +90 -0
- package/dist/config/project-env.js.map +1 -0
- package/dist/config/schema.d.ts +27 -0
- package/dist/config/schema.d.ts.map +1 -0
- package/dist/config/schema.js +123 -0
- package/dist/config/schema.js.map +1 -0
- package/dist/config/types.d.ts +167 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +2 -0
- package/dist/config/types.js.map +1 -0
- package/dist/events/apigw.d.ts +41 -0
- package/dist/events/apigw.d.ts.map +1 -0
- package/dist/events/apigw.js +43 -0
- package/dist/events/apigw.js.map +1 -0
- package/dist/events/eventbridge.d.ts +16 -0
- package/dist/events/eventbridge.d.ts.map +1 -0
- package/dist/events/eventbridge.js +19 -0
- package/dist/events/eventbridge.js.map +1 -0
- package/dist/events/index.d.ts +17 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +50 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/s3.d.ts +45 -0
- package/dist/events/s3.d.ts.map +1 -0
- package/dist/events/s3.js +44 -0
- package/dist/events/s3.js.map +1 -0
- package/dist/events/schedule.d.ts +12 -0
- package/dist/events/schedule.d.ts.map +1 -0
- package/dist/events/schedule.js +15 -0
- package/dist/events/schedule.js.map +1 -0
- package/dist/events/sns.d.ts +24 -0
- package/dist/events/sns.d.ts.map +1 -0
- package/dist/events/sns.js +31 -0
- package/dist/events/sns.js.map +1 -0
- package/dist/events/sqs-record.d.ts +44 -0
- package/dist/events/sqs-record.d.ts.map +1 -0
- package/dist/events/sqs-record.js +75 -0
- package/dist/events/sqs-record.js.map +1 -0
- package/dist/events/sqs.d.ts +21 -0
- package/dist/events/sqs.d.ts.map +1 -0
- package/dist/events/sqs.js +28 -0
- package/dist/events/sqs.js.map +1 -0
- package/dist/events/util.d.ts +2 -0
- package/dist/events/util.d.ts.map +1 -0
- package/dist/events/util.js +7 -0
- package/dist/events/util.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/peer-resolve.d.ts +5 -0
- package/dist/peer-resolve.d.ts.map +1 -0
- package/dist/peer-resolve.js +44 -0
- package/dist/peer-resolve.js.map +1 -0
- package/dist/runtime/asset-links.d.ts +15 -0
- package/dist/runtime/asset-links.d.ts.map +1 -0
- package/dist/runtime/asset-links.js +42 -0
- package/dist/runtime/asset-links.js.map +1 -0
- package/dist/runtime/clear-caches.d.ts +5 -0
- package/dist/runtime/clear-caches.d.ts.map +1 -0
- package/dist/runtime/clear-caches.js +8 -0
- package/dist/runtime/clear-caches.js.map +1 -0
- package/dist/runtime/context.d.ts +10 -0
- package/dist/runtime/context.d.ts.map +1 -0
- package/dist/runtime/context.js +42 -0
- package/dist/runtime/context.js.map +1 -0
- package/dist/runtime/handler-cache.d.ts +6 -0
- package/dist/runtime/handler-cache.d.ts.map +1 -0
- package/dist/runtime/handler-cache.js +14 -0
- package/dist/runtime/handler-cache.js.map +1 -0
- package/dist/runtime/invoke.d.ts +32 -0
- package/dist/runtime/invoke.d.ts.map +1 -0
- package/dist/runtime/invoke.js +111 -0
- package/dist/runtime/invoke.js.map +1 -0
- package/dist/runtime/loader.d.ts +17 -0
- package/dist/runtime/loader.d.ts.map +1 -0
- package/dist/runtime/loader.js +76 -0
- package/dist/runtime/loader.js.map +1 -0
- package/dist/runtime/logs.d.ts +19 -0
- package/dist/runtime/logs.d.ts.map +1 -0
- package/dist/runtime/logs.js +125 -0
- package/dist/runtime/logs.js.map +1 -0
- package/dist/util/payload.d.ts +13 -0
- package/dist/util/payload.d.ts.map +1 -0
- package/dist/util/payload.js +40 -0
- package/dist/util/payload.js.map +1 -0
- package/dist/util/tsx-register.d.ts +4 -0
- package/dist/util/tsx-register.d.ts.map +1 -0
- package/dist/util/tsx-register.js +27 -0
- package/dist/util/tsx-register.js.map +1 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +2 -0
- package/dist/version.js.map +1 -0
- package/docs/README.md +23 -0
- package/docs/commands.md +294 -0
- package/docs/configuration.md +652 -0
- package/docs/getting-started.md +400 -0
- package/docs/recipes.md +743 -0
- package/docs/troubleshooting.md +393 -0
- package/package.json +76 -0
- package/templates/.env.example +5 -0
- package/templates/.vscode/launch.json +14 -0
- package/templates/events/sample.json +4 -0
- package/templates/lamkit.config.js +38 -0
- package/templates/lamkit.config.ts +27 -0
package/docs/README.md
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Lambda DevKit documentation
|
|
2
|
+
|
|
3
|
+
Guides for **[Lambda DevKit](https://www.npmjs.com/package/aws-lambda-devkit)** — npm package **`aws-lambda-devkit`**, CLI **`lamkit`**.
|
|
4
|
+
|
|
5
|
+
Complete walkthroughs for integrating the toolkit into your Node.js Lambda project. All examples use generic names (`worker`, `WORKER_QUEUE_URL`, etc.) — copy them and replace with your own paths and env vars.
|
|
6
|
+
|
|
7
|
+
| Guide | Time | What you will learn |
|
|
8
|
+
|-------|------|---------------------|
|
|
9
|
+
| [Getting started](getting-started.md) | ~15 min | Install, project layout, first `lamkit test`, what the output means |
|
|
10
|
+
| [Commands reference](commands.md) | Reference | Every CLI command and flag with copy-paste examples |
|
|
11
|
+
| [Configuration reference](configuration.md) | Reference | Every `lamkit.config.*` field, env loading, asset links |
|
|
12
|
+
| [Recipes](recipes.md) | Copy-paste | 22 end-to-end setups (SQS, HTTP, monorepo, real AWS, CI, …) |
|
|
13
|
+
| [Troubleshooting](troubleshooting.md) | When stuck | Errors, causes, and step-by-step fixes |
|
|
14
|
+
|
|
15
|
+
**Package name:** `aws-lambda-devkit`
|
|
16
|
+
**CLI command:** `lamkit`
|
|
17
|
+
**Config file:** `lamkit.config.js` (also `.mjs`, `.cjs`, or `.ts`)
|
|
18
|
+
|
|
19
|
+
After `npm install -D aws-lambda-devkit`, open guides from:
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
node_modules/aws-lambda-devkit/docs/getting-started.md
|
|
23
|
+
```
|
package/docs/commands.md
ADDED
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
# Commands reference
|
|
2
|
+
|
|
3
|
+
Every **`lamkit`** command with examples. Installed via npm package **`aws-lambda-devkit`**.
|
|
4
|
+
|
|
5
|
+
Run from the directory that contains `lamkit.config.*`, or pass `--cwd`.
|
|
6
|
+
|
|
7
|
+
Install the CLI:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install -D aws-lambda-devkit
|
|
11
|
+
npx lamkit --help
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## `lamkit init`
|
|
17
|
+
|
|
18
|
+
Creates starter files in the current directory.
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npx lamkit init
|
|
22
|
+
npx lamkit init --force # overwrite existing template files
|
|
23
|
+
npx lamkit init --yes # also add "test:lambda": "lamkit test" to package.json
|
|
24
|
+
npx lamkit init --cwd ./packages/worker
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**Creates:**
|
|
28
|
+
|
|
29
|
+
| File | Purpose |
|
|
30
|
+
|------|---------|
|
|
31
|
+
| `lamkit.config.js` | Function definitions |
|
|
32
|
+
| `.env.example` | Env var template |
|
|
33
|
+
| `.vscode/launch.json` | VS Code debugger config |
|
|
34
|
+
| `events/sample.json` | Example JSON payload |
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## `lamkit list`
|
|
39
|
+
|
|
40
|
+
Prints all configured functions.
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
npx lamkit list
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
**Example output:**
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
NAME ENTRY TRIGGER
|
|
50
|
+
-----------------------------------------
|
|
51
|
+
worker ./dist/handler.js sqs
|
|
52
|
+
api ./dist/http.js http
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## `lamkit config`
|
|
58
|
+
|
|
59
|
+
Shows the **merged** config for one function (defaults + overrides). Useful to verify env vars resolved correctly.
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
npx lamkit config
|
|
63
|
+
npx lamkit config worker
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Queue URLs and secrets may be truncated or redacted in output.
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## `lamkit test`
|
|
71
|
+
|
|
72
|
+
Simulates an AWS event and invokes your handler locally. **No AWS credentials required** unless your handler calls AWS.
|
|
73
|
+
|
|
74
|
+
### Basic usage
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# Single function in config — name is optional
|
|
78
|
+
npx lamkit test --data '{"orderId":"ord_123"}'
|
|
79
|
+
|
|
80
|
+
# Named function
|
|
81
|
+
npx lamkit test worker --data '{"orderId":"ord_123"}'
|
|
82
|
+
|
|
83
|
+
# All functions in config
|
|
84
|
+
npx lamkit test --all
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### Payload sources (priority order)
|
|
88
|
+
|
|
89
|
+
When you run `lamkit test`, lamkit picks the event payload like this:
|
|
90
|
+
|
|
91
|
+
1. `--event path/to/file.json` — full raw event (highest priority)
|
|
92
|
+
2. `--data` or `--data-file` — passed to the event builder
|
|
93
|
+
3. `functions[].test.data` in config
|
|
94
|
+
4. Empty / default sample for the trigger
|
|
95
|
+
|
|
96
|
+
**Examples:**
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
# Inline JSON
|
|
100
|
+
npx lamkit test --data '{"type":"ORDER_CREATED","id":"1"}'
|
|
101
|
+
|
|
102
|
+
# JSON file
|
|
103
|
+
npx lamkit test --data-file events/order-created.json
|
|
104
|
+
|
|
105
|
+
# @file shorthand
|
|
106
|
+
npx lamkit test --data @events/order-created.json
|
|
107
|
+
|
|
108
|
+
# Raw captured SQSEvent (from CloudWatch or AWS samples)
|
|
109
|
+
npx lamkit test --event events/captured-sqs.json
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### SQS-specific flags
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
# Five records in one SQSEvent
|
|
116
|
+
npx lamkit test --data '{"id":"1"}' --batch-size 5
|
|
117
|
+
|
|
118
|
+
# Array payload → one record per element
|
|
119
|
+
npx lamkit test --data '[{"id":"1"},{"id":"2"}]'
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Environment overrides
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
npx lamkit test --env LOG_LEVEL=debug --env FEATURE_X=true --data '{"id":"1"}'
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
Only affects that single invoke; does not change `.env`.
|
|
129
|
+
|
|
130
|
+
### Debugging and inspection
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
# Print the built event without calling the handler
|
|
134
|
+
npx lamkit test --dry-run --data '{"id":"1"}'
|
|
135
|
+
|
|
136
|
+
# Node inspector (attach debugger)
|
|
137
|
+
npx lamkit test --inspect
|
|
138
|
+
npx lamkit test --inspect-brk
|
|
139
|
+
|
|
140
|
+
# Reload handler module (bypass cache after code change)
|
|
141
|
+
npx lamkit test --reload --data '{"id":"1"}'
|
|
142
|
+
|
|
143
|
+
# Simulate cold start (Init Duration in REPORT)
|
|
144
|
+
npx lamkit test --cold --data '{"id":"1"}'
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### Exit codes
|
|
148
|
+
|
|
149
|
+
```bash
|
|
150
|
+
# Exit 1 if handler returns SQS batchItemFailures
|
|
151
|
+
npx lamkit test worker --strict-batch --data '[{"id":"1"}]'
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
| Exit code | Meaning |
|
|
155
|
+
|-----------|---------|
|
|
156
|
+
| `0` | Handler completed without throw (and strict-batch passed) |
|
|
157
|
+
| `1` | Handler threw, timeout, or strict-batch failure |
|
|
158
|
+
|
|
159
|
+
### Example successful output
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
✓ worker (sqs) — 42ms
|
|
163
|
+
|
|
164
|
+
Logs:
|
|
165
|
+
START RequestId: a1b2c3d4-... Version: $LATEST
|
|
166
|
+
Received event: {"Records":[...]}
|
|
167
|
+
END RequestId: a1b2c3d4-...
|
|
168
|
+
REPORT RequestId: a1b2c3d4-... Duration: 42.00 ms Billed Duration: 100 ms Memory Size: 512 MB Max Memory Used: 89 MB
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## `lamkit send sqs`
|
|
174
|
+
|
|
175
|
+
Sends one message to a **real** SQS queue. Requires `@aws-sdk/client-sqs` peer and AWS credentials.
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
npm install -D @aws-sdk/client-sqs
|
|
179
|
+
|
|
180
|
+
npx lamkit send sqs worker --data '{"id":"1"}'
|
|
181
|
+
npx lamkit send sqs worker --data-file events/payload.json
|
|
182
|
+
npx lamkit send sqs worker --message 'plain text body'
|
|
183
|
+
npx lamkit send sqs worker --data '{"id":"1"}' --queue-url 'https://sqs...'
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
FIFO queues (URL ends with `.fifo`): lamkit sets `MessageGroupId` and `MessageDeduplicationId` automatically.
|
|
187
|
+
|
|
188
|
+
**Example output:**
|
|
189
|
+
|
|
190
|
+
```
|
|
191
|
+
Sent to https://sqs.us-east-1.amazonaws.com/123456789012/dev-worker
|
|
192
|
+
MessageId: abc-123-def
|
|
193
|
+
Run: lamkit listen worker
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## `lamkit send sns`
|
|
199
|
+
|
|
200
|
+
Publishes to a **real** SNS topic. Requires `@aws-sdk/client-sns` peer.
|
|
201
|
+
|
|
202
|
+
```bash
|
|
203
|
+
npm install -D @aws-sdk/client-sns
|
|
204
|
+
|
|
205
|
+
npx lamkit send sns notifier --data '{"event":"USER_SIGNUP"}'
|
|
206
|
+
npx lamkit send sns notifier --topic-arn 'arn:aws:sns:us-east-1:123456789012:events'
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
This publishes only — it does not invoke your handler. To test the handler offline, use `lamkit test` with `trigger: 'sns'`.
|
|
210
|
+
|
|
211
|
+
---
|
|
212
|
+
|
|
213
|
+
## `lamkit listen`
|
|
214
|
+
|
|
215
|
+
Long-polls a **real** SQS queue and invokes your **local** handler for each message.
|
|
216
|
+
|
|
217
|
+
```bash
|
|
218
|
+
npm install -D @aws-sdk/client-sqs
|
|
219
|
+
|
|
220
|
+
# Poll until Ctrl+C
|
|
221
|
+
npx lamkit listen worker
|
|
222
|
+
|
|
223
|
+
# One poll batch, then exit
|
|
224
|
+
npx lamkit listen worker --once
|
|
225
|
+
|
|
226
|
+
# Fail if poll returns zero messages (useful in scripts)
|
|
227
|
+
npx lamkit listen worker --once --expect-messages
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
### Common flags
|
|
231
|
+
|
|
232
|
+
```bash
|
|
233
|
+
npx lamkit listen worker --batch-size 5
|
|
234
|
+
npx lamkit listen worker --no-batch-invoke # one invoke per message
|
|
235
|
+
npx lamkit listen worker --no-delete # keep messages on queue (debug only)
|
|
236
|
+
npx lamkit listen worker --reload # reload handler each batch
|
|
237
|
+
npx lamkit listen worker --queue-url 'https://sqs...'
|
|
238
|
+
npx lamkit listen worker --no-extend-visibility
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
### Typical dev loop (two terminals)
|
|
242
|
+
|
|
243
|
+
**Terminal 1:**
|
|
244
|
+
|
|
245
|
+
```bash
|
|
246
|
+
npx lamkit listen worker
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
**Terminal 2:**
|
|
250
|
+
|
|
251
|
+
```bash
|
|
252
|
+
npx lamkit send sqs worker --data '{"id":"1"}'
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
Use a **dev-only queue**. Pause the deployed Lambda event source mapping while listening, or both consumers will compete for messages.
|
|
256
|
+
|
|
257
|
+
### Message lifecycle (AWS-aligned)
|
|
258
|
+
|
|
259
|
+
| Handler result | Queue behavior |
|
|
260
|
+
|----------------|----------------|
|
|
261
|
+
| Success | Message deleted |
|
|
262
|
+
| Throw or `batchItemFailures` | Message **not** deleted; becomes visible again after timeout |
|
|
263
|
+
| `--no-delete` | Never delete (debug escape hatch) |
|
|
264
|
+
|
|
265
|
+
---
|
|
266
|
+
|
|
267
|
+
## Global options
|
|
268
|
+
|
|
269
|
+
Most commands accept:
|
|
270
|
+
|
|
271
|
+
```bash
|
|
272
|
+
npx lamkit test worker --cwd /path/to/lambda-package --data '{"id":"1"}'
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## npm scripts (recommended)
|
|
278
|
+
|
|
279
|
+
```json
|
|
280
|
+
{
|
|
281
|
+
"scripts": {
|
|
282
|
+
"test:lambda": "lamkit test",
|
|
283
|
+
"test:lambda:all": "lamkit test --all",
|
|
284
|
+
"listen:worker": "lamkit listen worker",
|
|
285
|
+
"send:worker": "lamkit send sqs worker --data '{\"id\":\"1\"}'"
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
```bash
|
|
291
|
+
npm run test:lambda -- --data '{"id":"1"}'
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
Arguments after `--` are passed to `lamkit`.
|