Github动作:是否可以对从特定分支机构打开的拉取请求运行动作?

时间:2020-03-30 11:40:27

标签: pull-request github-actions

我正在尝试创建一个动作,该动作在针对master打开来自特定分支的“拉取请求”时运行。我目前在所有分支上针对master打开的所有Pull请求上运行工作流。

name: Auto Approve Pull Request
on:
  pull_request:
    branches:
      - 'master'
      - 'skip-*'

jobs:
  build:
    name: Approve PR
    runs-on: ubuntu-latest
    steps:
      - name: Fetch out code
        uses: username/my-github-repo@master
        with:
          token: ******
        env:
          BRANCH_PREFIX: "skip-*"
          PULL_REQUEST_BRANCH: "master"

我想让工作流仅在名为skip-*的分支上运行。

1 个答案:

答案 0 :(得分:2)

我发现的解决方案是使用if语句来检查head-ref分支名称是否与skip-匹配(开头)。

这是我的解决方法:

name: Auto Approve Pull Request
on:
  pull_request:
    branches:
      - 'master'

jobs:
  build:
    name: Approve PR
    runs-on: ubuntu-latest
    if: startsWith(github.head_ref, 'skip-') == true
    steps:
      - name: Fetch out code
        uses: username/my-github-repo@master
        with:
          token: ******
        env:
          BRANCH_PREFIX: "skip-*"
          PULL_REQUEST_BRANCH: "master"

注意: