#コード
コード一式は https://github.com/c9katayama/aws-lambda-jruby にあります。
#使い方
githubからclone後、src/main/resources/main.rb にrubyコードを書きます。同ディレクトリ内のファイルは全てLambdaにデプロイされるため、必要なファイルはこのディレクトリに置きます。
stdlibは、JRubyに付属の標準ライブラリが入っています。このディレクトリはaddLibPathでパスが通っているので、ここに入っているrbファイルは
require 'yaml'
とするとmain.rbから使用することができます。
##開発
rubyファイル作成時にローカルでテストしたい場合は、 src/test/java/AWSLambdaJRubyTestMain を実行します。
AWSLambdaJRubyは、Lambdaで受け取ったパラメータをJSONにし、Rubyのグローバル変数$lambda_argにセットを行います。rubyファイル内でLambdaのパラメータを取りたい場合は、$lambda_argから取り出します。
(サンプルのmain.rbはLambdaのパラメータをyaml化するコードになっています)
##ビルド/デプロイ
./gradlew build
でビルドを行います。build/distributionsフォルダにaws-lambda-jruby.zipが出来ていると思うので、AWS上でLambdaファンクションを作成後、zipをAWS Lambdaへアップロードします。
この際、Handlerの設定がありますが、AWSLambdaMain::handler を設定します。