helen's blog

ずっとおもしろいことしてたいな。

AWS LambdaでAWS SDK for Rubyはuploadする必要がなかった

ちょっとしくじってて実はうまくアップロードできてないのに
なぜかLambdaの実行に成功しててあれ?って思ったので
AWS LambdaでRubyを実行するときに
何のgemがすでに入っているのかが気になりました

調べた

Gemを一覧にしてログに吐いただけ

github.com

思った以上にいっぱい入ってた

めっちゃ長いので超割愛するけどAWS SDK for Rubyは全部入ってそうな気配ある

aws-sdkも入っていたり、
たとえば aws-sdk-ecs は 1.59.0 なんだけど
これの最新のリリースは 1.59.0 - March 16, 2020 で最新に追従されている

rubygems.org

bundlerやrdocも入っているのは嬉しいね

aws-eventstream 1.0.3
aws-partitions 1.285.0
aws-sdk 3.0.1
aws-sdk-accessanalyzer 1.3.0

...

aws-sdk-ecs 1.59.0

...

aws-sigv2 1.0.1
aws-sigv4 1.1.1
bigdecimal 1.3.4
bundler 2.1.2,2.1.4
cmath 1.0.0
csv 1.0.0
date 1.0.0
dbm 1.0.0
etc 1.0.0
fcntl 1.0.0
fiddle 1.0.0
fileutils 1.0.2
gdbm 2.0.0
io-console 0.4.6
ipaddr 1.2.0
jmespath 1.4.0
json 2.1.0,2.3.0
openssl 2.1.2
psych 3.0.2
rdoc 6.0.1.1
rubygems-update 3.1.2
scanf 1.0.0
sdbm 1.0.0
stringio 0.0.1
strscan 1.0.0
webrick 1.4.2
zlib 1.0.0

つまり

AWS SDK for Rubyのgemしか使わないときはアップロードの必要がない!!
知らんかった😂

Lambda Layerを使うほうがコールドスタートが速いという噂はこういうのが影響してたりするのかな