Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hirokidaichi/lamb
a simple deploy and test tools for aws lambda
https://github.com/hirokidaichi/lamb
Last synced: 7 days ago
JSON representation
a simple deploy and test tools for aws lambda
- Host: GitHub
- URL: https://github.com/hirokidaichi/lamb
- Owner: hirokidaichi
- Created: 2014-12-14T14:33:03.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2014-12-14T15:06:27.000Z (almost 10 years ago)
- Last Synced: 2024-04-20T19:51:50.787Z (7 months ago)
- Size: 113 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
lamb - a simple deploy and test tools for aws lambda
====== これはまだアイデア段階
まだ、試せていないのでアイデア段階です。
目的はnodejs上のStreamベースのコードを自動的に必要な分だけのaws lambdaを生成し、
deployすることでアプリケーション全体のつながりをわかりやすく宣言的に記述できるようにします。```
var lamb = require("lamb");
var s3 = lamb.s3;s3("bucket-full")
.pipe(onlyJpeg)
.pipe(resize("10%"))
.pipe(s3("bucket-mini"));s3("bucket-full")
.pipe(onlyJpeg)
.pipe(resize("50%"))
.pipe(s3("bucket-half"));
```このようなコードを書いたときに、自動的に
それぞれの処理をAWS lambdaにdeployする。```
$ lamb deploy index.js
```方法としては、
それぞれのawsに関係するReadableStreamのコンストラクションを
記録し、イベント発火のコードを自動生成してzipに固め、lambda functionとしてuploadする自動生成されるコードはこんな感じ。
```
var __ = require("index.js");
var handler = require("lamb").handler;
module.exports.handler = handler("s3:ObjectCreated:*");```
また、テスト時にはnode.jsアプリケーションとして起動する```
# lamb test
```