Serverless Framework for Ruby - 複数関数作成編
下記の続き。今回は複数のファンクションを定義してみようと思う。
serverless.ymlの書き方からなんとなく複数ファンクションの書き方は予想がつく。
handerにファイル名.アクション名だろうと。
$ vi serverless.yml --- functions: hello: handler: handler.hello + events: + - http: + path: hello + method: get + goodby: + handler: handler.goodby + fuga: + handler: hoge.fuga
これで1ファイルにまとめることもファイルを分けることもできる。
しかし・・・
lambdaのファンクションは複数出来ているが、コードサイズが全て同じでしかもそれなりにある。。。
S3にzipがあるのでダウンロードして中をみてみると。。。
$ ls ./ ../ handler.rb hoge.rb node_modules/ package.json yarn.lock
なるほど。全てを1つのzipにまとめてそれをlambdaのhandlerの指定を変えてるんですね。。。
しかも、node_modulesとかpackage.jsonとかはrubyだと要らない。。。
lambdaでデプロイパッケージの容量制限があるのでこれは分けて欲しいなー。