Google Cloud Functions のドキュメントは少しあいまいです。含まれている単一の関数をindex.js
特定のディレクトリにデプロイする方法は理解していますが、同じリポジトリ内にある複数のクラウド関数をデプロイするにはどうすればよいですか?
AWS Lambda では、特定のファイルと関数名を指定できます。
/my/path/my-file.myHandler
Lambda では、オプションの推移的な npm 依存関係とそのリソースをすべて省略して、実行に必要なファイルのみを含む zip ファイルをデプロイすることもできます。一部のライブラリ (Oracle DB など)node-modules/**
では、導入時間が大幅に増加し、ストレージの制限を超える可能性があります (AWS Lambda ではそうです)。
Google Cloud Function のデプロイで管理できる最高のものは次のとおりです。
$ gcloud alpha functions deploy my-function \
--trigger-http
--source-url https://github.com/user-name/my-repo.git \
--source-branch master \
--source-path lib/foo/bar
--entry-point myHandler
...しかし、私の理解では、同じファイルに連結されたすべての依存関係lib/foo/bar/index.js
を含むデプロイが展開されるということですか? function myHandler(req, res) {}
それはまったく意味がありません - 私が言ったように、ドキュメンテーションは少しあいまいです。