3

我正在使用 claudia.js CLI 将函数和 Web API 部署到 AWS lambda 和 API 网关。我的项目文件结构如下:

functions
--function1
---- node_modules
---- package.json
---- index.js
---- claudia.json
--function2
---- node_modules
---- package.json
---- index.js
---- claudia.json

问题是,为了更新新版本,我必须在每个函数文件夹中运行“克劳迪娅更新”......所以我必须为每个函数(在每个文件夹中)运行一次。有没有办法告诉 claudia.js 一次更新我的所有功能?

4

2 回答 2

0

与其让 ClaudiaJS 来完成这项工作,不如使用一个工具来运行 ClaudiaJS。大多数 monorepo 工具就足够了,比如Lerna,但是如果你不关心 Lerna 提供的东西,还有很多不那么自以为是的工具 - Lolaus是相当低级的。

使用 Lerna,您需要使用规定的 repo 结构,获取链接的 node_modules,并lerna run deploy运行每个包含它的包的 npm deploy 脚本。

使用 Lolaus,您将搜索所有函数,然后在每个目录中运行任意命令:lolaus "*/*/caudia.json" claudia update

于 2017-09-03T04:25:54.120 回答
0

我们有一个包含多个 replate lambdas 的 lambda repo,每个 replate lambdas 都在它自己的子文件夹中。

> lambdas 
> |_lambda1
> |___main.js
> |___main.spec.js
> |___claudia.json
> |___package.json
> |_lambda2
> |___main.js
> |___main.spec.js
> |___claudia.json
> |___package.json
> |_helpers
> |_test.sh
> |_deploy.sh

我们使用 npm 和 bash 脚本来迭代每个 lambda 并在它们上运行一组一致的 npm/eslint 命令。如果通过了构建过程,我们在每个 lambda 上以相同的方式运行 claudia 命令。有一些剪切和粘贴

于 2017-11-18T00:46:11.813 回答