我开始使用适用于 Windows(64 位)的 gitlab-ci-multi-runner 使用 GitLab CI。到目前为止一切正常,与我的存储库有连接,我配置的作业在每次推送时开始。
我现在要做的是拥有一项运行npm install
以下载所有依赖项的作业和一项通过运行karma start karma.conf.js
或使用 grunt 和 running来执行我用 karma/jasmine 编写的所有测试的作业grunt test
。
所以我尝试的第一份工作是:
cd app
npm install
karma start karma.conf.js
前两个命令被执行,但最后一个被完全忽略。所以我试图拆分工作。第一个命令获得自己的工作(选项卡“并行运行”),最后一个命令在选项卡“成功运行”中移动到自己的工作。现在所有依赖项都已安装,第二个作业开始。到目前为止一切顺利,但第二项工作从删除所有以前安装的依赖项开始,然后尝试运行karma start karma.conf.js
. 这显然会导致所有测试失败,因为未下载 npm 依赖项“angular-mocks”。如果我添加npm install
到第二份工作(这对我来说没有多大意义),业力任务将再次被忽略。
这里有什么问题?我怎样才能解决这个问题?有没有办法不总是下载每个测试执行的所有依赖项?