我正在使用lerna.js,但我很难找到有关使用Travis设置monorepo的适当文档。我只找到了这个repo和这个blog post,但是它们都是最小且次优的。
我该如何完成以下所有任务?
node_modules
.travis.yml
文件我设法做到了第1点:
env:
matrix:
- PACKAGE=contracts
matrix:
include:
- stage: tests
name: "unit tests"
script:
- cd packages/contracts
- npm install && npm run test
- stage: tests
name: "unit tests with coverage"
script:
- cd packages/contracts
- npm install && npm run test
env: SOLIDITY_COVERAGE=true
- stage: tests
name: "static tests"
script:
- cd packages/contracts
- npm install && npm run lint
但是,构建过程非常缓慢,因为node_modules
不会被缓存。同样,以自上而下的方式声明所有测试是一个相当冗长的过程,我宁愿通过单独的.travis.yml
文件自下而上地进行声明。