In general, we need like tools like serveless or apex when use typescript on AWS Lambda.
But it's so heavy for light use.
I found way to build with only parcel-bundler
First, install typescript
yarn add -D typescript
and install parcel and parcel-plugin-zip
yarn add -D parcel parcel-plugin-zip
Create handler.ts
export const handler = async (): Promise<any> => { console.log('Hello World!'); return {}; }
And we build this function for aws with below command.
$ yarn parcel build handler.ts --target=node --global handler -o index.js --bundle-node-modules --no-source-maps
Finally, setup build command to package.json
.
// package.json "scripts": { "build": "yarn parcel build handler.ts --target=node --global handler -o index.js --bundle-node-modules --no-source-maps", "deploy:aws": "aws lambda update-function-code --function-name my-special-function --zip-file fileb://./dist.zip", "deploy": "yarn build; yarn deploy:aws", }
We can now build and deploy lambda function with yarn deploy
(may need setup aws credentials) !
Top comments (0)