GitHub Actions在作业失败时禁用自动取消功能

24

我有以下的 GitHub Actions 配置文件(为简化部分内容已删除)。

name: CI
on: push

jobs:
  test:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node-version: [8.x, 10.x, 12.x, 13.x]
    steps:
      - uses: actions/checkout@v2
      - name: Use Node.js
        uses: actions/setup-node@v1
        with:
          node-version: ${{ matrix.node-version }}
      - run: npm install
      - run: npm test

我遇到的主要问题是,假设Node.js版本8的测试失败了,但其他测试都成功了。在这种情况下,GitHub Actions往往会取消所有作业,即使只有一个作业失败也是如此。

有没有办法改变这个行为,使得即使一个作业失败了,所有作业仍然可以继续运行?这对于查找特定版本的问题可能会有所帮助。


1
https://github.community/t5/GitHub-Actions/Why-a-matrix-step-will-be-canceled-if-another-one-failed/td-p/30920 - Lex Li
3
在您的工作流程中,将jobs.<job_id>.strategy.fail-fast设置为false - Edric
1个回答

34

strategy下添加fail-fast:false对我来说效果很好!:)

name: CI
on: push

jobs:
  test:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node-version: [8.x, 10.x, 12.x, 13.x]
      fail-fast: false
    steps:
      - uses: actions/checkout@v2
      - name: Use Node.js
        uses: actions/setup-node@v1
        with:
          node-version: ${{ matrix.node-version }}
      - run: npm install
      - run: npm test

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接