Lambda で使用できる標準ライブラリのバージョンは自動更新されるか教えてください

Lambda に含まれるライブラリは自動更新されるため、管理が必要なライブラリはデプロイパッケージに含めてください
2022.07.06

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

困っていた内容

特定バージョンの標準ライブラリに依存したアプリを Lambda で実行しています。
依存しているライブラリが更新されるとアプリがエラーになるので、バージョンを固定したいと思っていますが、そもそも自動更新はされるのでしょうか。更新される場合は固定方法を教えてください。

どう対応すればいいの?

対象ライブラリをデプロイパッケージに含めてください。

Lambda デプロイパッケージ - AWS Lambda

Lambda 実行環境には複数のライブラリが標準で含まれていますが、その管理(更新)は AWS により定期的に実施され、ライブラリのバージョンを固定する必要がある場合は、対象となるライブラリをデプロイパッケージに含めて管理する必要があります。

また、更新によっては既存のライブラリが廃止される可能性もあります。バージョンに限らず依存関係がある場合は、デプロイパッケージによるライブラリの管理をご検討ください。

参考資料

関数のデプロイパッケージ内で依存関係を制御します。AWS Lambda 実行環境には、AWS SDK for the Node.js および Python ランタイムなどのライブラリが多数含まれています (詳細なリストについては、Lambda ランタイム を参照してください)。最新の機能やセキュリティ更新プログラムを有効にするために、Lambda はこれらのライブラリを定期的に更新します。この更新により、Lambda 関数の動作が微妙に変化する場合があります。関数で使用する依存関係を完全に制御するには、すべての依存関係をデプロイパッケージでパッケージングします。