NodeJS 节点CI被无故取消- GitHub操作

zd287kbt  于 2023-03-22  发布在  Node.js
关注(0)|答案(1)|浏览(175)

我为mu vue/nuxt应用程序写了这个CI:

name: test

on: [push, pull_request]

jobs:
  build:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node-version: [14.x, 16.x, 18.x]
    steps:
      - uses: actions/checkout@v3
      - name: Use Node.js ${{ matrix.node-version }}
        uses: actions/setup-node@v3
        with:
          node-version: ${{ matrix.node-version }}
          cache: 'npm'
      - run: npm ci --ignore-scripts
      - run: npx vitest --run

然而,我在检索依赖项后得到了这个错误:

Run npm ci --ignore-scripts
  npm ci --ignore-scripts
  shell: /usr/bin/bash -e {0}
npm WARN deprecated sourcemap-codec@1.4.8: Please use @jridgewell/sourcemap-codec instead
npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
npm WARN deprecated rollup-plugin-terser@7.0.2: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-terser

Error: The operation was canceled.

不提供日志,也不提供错误消息,只显示正在取消的操作
我想运行一个成功的CI操作来运行我的测试和lint我的应用程序

mrzz3bfm

mrzz3bfm1#

您可能会在矩阵中的某个作业中看到该错误,因为另一个作业失败了。
在GitHub actions中,jobs.<job_id>.strategy.fail-fast默认设置为true。这意味着如果矩阵中的任何作业失败,GitHub将取消矩阵中所有正在进行和排队的作业。
在你的例子中,你有一个运行npm ci --ignore-scriptsnpx vitest --run的矩阵。这两个步骤可能会因为不同的原因而失败,并会导致在你的例子中,同一矩阵中不同Node.js版本的所有正在运行的作业终止。
如果npm ci对你来说失败了,检查你的.npmrc和代理设置,如果你使用的是私有artifactory。
如果没有,请尝试使用nvm use YOUR_NODE_VERSION,删除package-lock.json,然后在本地运行npm install,让它重建依赖关系树。
另外,请注意,您应该使用与Nuxt/Vue工具兼容的Node版本,或者在package.json的引擎中声明。因此,除非您正在构建必须与不同的Node.js/npm版本兼容的库,否则您可能不需要支持矩阵中指定的所有3个版本。

相关问题