如果 npm 发布失败,Gitlab-ci-multi-runner 继续

Gitlab-ci-multi-runner continues if npm publish fails

我使用 gitlab-ci-multi-runner 将我们的工件发布到我们自己的 npm 注册表。这是 .gitlab-ci.yml 文件:

publish-continuous:
  type: publish
  script:
    - npm install
    - npm run test
    - npm run build
    - npm publish --registry $env:NPM_REGISTRY_URL

有时 npm 发布失败。这是输出:

$ npm publish --registry $env:NPM_REGISTRY_URL
npm ERR! Windows_NT 6.3.9600
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Users\SomeUser\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js" "publish" "--registry" "https://ourownregistry"
npm ERR! node v4.2.6
npm ERR! npm  v3.6.0
npm ERR! code ENEEDAUTH

我预计 gitlab-ci-multi-runner 会因为作业失败而停止。但事实并非如此!它报告 构建成功。

有谁知道如果 npm publish 失败我该如何使构建失败?

通过更新到最新的 NPM 修复了它。 v3.8.1 修复了这个问题。现在它 returns 一个 -1 退出代码并且构建失败。