我正在使用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 update”...所以我必须为每个函数(在每个文件夹中)运行一次。有没有办法告诉claudia.js立即更新我的所有功能?
答案 0 :(得分:0)
使用工具运行ClaudiaJS,而不是让ClaudiaJS完成工作。 大多数monorepo工具都足够了,例如Lerna但是如果你不关心Lerna提供的东西,那么就会有一些不太自以为是的工具 - Lolaus非常低级。
使用Lerna,您需要使用指定的repo结构,获取链接的node_modules,lerna run deploy
将运行包含它的每个包的npm deploy脚本。
使用Lolaus,您将搜索所有函数,然后在每个目录中运行任意命令:lolaus "*/*/caudia.json" claudia update
答案 1 :(得分:0)
我们有一个带有多个重放lambda的lambda repo,每个lambd都在自己的子文件夹中。
> 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命令。有一些剪切和粘贴