LambdaのNode.jsは最低限のパッケージしか利用できないため、「このパッケージが使いたいのに……でもnpm installできないし」ということ、あると思います。そういうときのTipsです。
いつものように関数を作ります。
[アクション] -> [関数のエクスポート]を選択します。
[デプロイパッケージのダウンロード]を選択します。
ダウンロードしたパッケージを解凍し、作られたディレクトリ配下でnpm installを実行します。作られたnode_modulesフォルダも一緒に再圧縮します。
[コードエントリタイプ]から、 [.ZIPファイルをアップロード]を選択します。
[アップロード]から先ほど再圧縮したファイルを選択します。終わったら[保存]します。
反映されました。
ちゃんとrequireできます。
関数の作り方次第ではaws-sdkがエクスポートした時点で含まれますが、aws-sdkはLambdaサーバには既に入っており、node-modulesに本来含める必要はないのでnpm uninstall aws-sdkしてから再圧縮すると容量削減につながります。あまりファイルサイズが大きいとインライン編集できなくなるので注意しましょう。