我有一些非常昂贵的基准测试,我只想在某些PR上运行它们,而不是全部运行。是否有办法在github actions中实现这一点?
我有一些非常昂贵的基准测试,我只想在某些PR上运行它们,而不是全部运行。是否有办法在github actions中实现这一点?
是的,有几种方法。
大多数工作流触发器可以通过"活动类型"进一步指定。对于拉取请求,它们是:
- 已分配
- 未分配
- 已标记
- 未标记
- 已打开
- 已编辑
- 已关闭
- 已重新打开
- 同步
- ready_for_review
- 已锁定
- 已解除锁定
- review_requested
- review_request_removed
现在,您可以仅针对符合特定模式的PR运行工作流程:
on:
pull_request:
branches:
- 'benchmark/**'
你也可以通过标签来实现:
on:
pull_request: labeled
...
jobs:
check-label:
if: ${{ github.event.label.name == 'benchmark' }}
...
当然,您还可以始终仅使用手动触发:
on: workflow_dispatch