Github 动作失败则拒绝动作

Github actions decline action if fails

我是第一次尝试使用 github 操作,我已经创建并遵循了 github 的教程,我的 .github/workflows/push_main.yml 是:

name: Android CI
on:
  push:
    branches: [ main ]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1

      - name: set up JDK 11
        uses: actions/setup-java@v1
        with:
          java-version: 11

      # Runs ktlint
      - name: Lint
        run: ./gradlew ktlintCheck

      # Execute unit tests
      - name: Unit Test
        run: ./gradlew testDebugUnitTest

我还想做的是在尝试进行变基或合并到 main 时进行此检查,如果有效,则保持 rebase 或 [=15= 的操作] 我想做一些类似的事情,创建一个时间分支在那里进行检查,如果它有效,请将 rebasemerge 进入 main 然后删除时间分支,但我不知道是否有任何其他有效的方法。我还看到我可以 运行 并行处理作业会更快吗?

有一种超级方便的方法可以在使用拉取请求合并之前构建、测试和汇总某些分支的更改结果。

创建拉取请求并触发执行检查的工作流很常见。只需添加“pull_request:”即可重用您现有的工作流程,构建和测试您的更改。

name: Android CI
on:
  push:
    branches: [ main ]
  pull_request:

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1

      - name: set up JDK 11
        uses: actions/setup-java@v1
        with:
          java-version: 11

      # Runs ktlint
      - name: Lint
        run: ./gradlew ktlintCheck

      # Execute unit tests
      - name: Unit Test
        run: ./gradlew testDebugUnitTest

作业并行执行。那当然更快。常见用例是定义所需测试目标的矩阵,例如os 个版本,node 或 Java 个版本。