我需要对拉取请求执行基本验证,还需要使用 github 操作对某些分支和标签手动执行。我无法修复一个可以以可读方式涵盖这两种场景的
run-name
。因此,我必须创建多个文件/工作流程来执行相同的操作。
verify_reference.yaml
name: Verify Reference
run-name: Verify ${{ github.ref_type }} ${{ github.ref_name }}
on:
workflow_dispatch:
push:
branches:
- main
jobs:
verify:
uses: ./.github/workflows/callable_verify.yaml
verify_pr.yaml
name: Verify Pull Request
run-name: "Verify PR #${{ github.event.pull_request.number }}"
on:
pull_request:
types:
[opened, reopened, edited, synchronize]
branches:
- main
jobs:
verify:
uses: ./.github/workflows/callable_verify.yaml
有什么方法可以使用条件来创建一个可以涵盖上述两种场景的
run-name
?如果它表明构建中发生了什么,任何其他命名运行的选项也对我有用。
由于
github.event.pull_request.number
仅针对 pull_request
事件存在,因此您可以使用 三元运算符:
run-name: >-
${{ github.event.pull_request.number &&
format('Verify PR {0}', github.event.pull_request.number) ||
format('Verify {0} {1}', github.ref_type, github.ref_name) }}
对于推入
main
,这看起来像
对于拉取请求更改,它是