我使用github企业
我需要一个github行动有2个步骤:第一次运行时,拉拔请求从'头'分支开到'基地'和第二PR合并。
现在我已经为它创建了2个github动作:
name: PR Opened
on:
pull_request:
branches:
- base
jobs:
api_call_on_pr:
runs-on: ubuntu-latest
steps:
- name: API call on PR
if: ${{ github.head_ref == 'head' }}
id: api_call
run: |
curl "api call on PR"
和
name: PR MeRged
on:
pull_request:
branches:
- base
types:
- closed
jobs:
api_call_on_merge:
runs-on: ubuntu-latest
steps:
- name: API call on MERGE
if: github.event.pull_request.merged == true
run: |
curl "api call on MERGE"
我仍然无法测试这些动作,但即使它们正常工作-是否有其他更优雅/聪明的方法来实现这个结果?
我认为我处理它的方式是在PR发生变化时运行PR工作流程,然后PR合并工作流程将在向基础分支(包括合并PR)推送时运行。
name: Push to base
on:
push:
branches:
- base
jobs:
api_call_on_merge:
runs-on: ubuntu-latest
steps:
# Steps here!
如果你想在每次合并PR而不是每次推送时都运行一个工作流,那么你的第二个工作流看起来是正确的。在Github的文档
中有一个例子。