我对新 PR 有一个非常简单的要求,那就是至少必须指定一个标签。但是我无法访问任何跑步者。
我可以使用在任何跑步者之前应用的上下文表达式来检查是否存在已应用的标签:
name: Compliance
on:
pull_request:
jobs:
compliance:
if: |
contains(github.event.issue.labels.*.name, 'bug') ||
contains(github.event.issue.labels.*.name, 'dependencies') ||
contains(github.event.issue.labels.*.name, 'enhancement')
// fail
if:
contains(github.event.issue.labels.*.name, 'bug') ||
contains(github.event.issue.labels.*.name, 'dependencies') ||
contains(github.event.issue.labels.*.name, 'enhancement')
// pass
如果不在运行程序中执行此操作,则似乎无法显式失败或通过工作流程。在运行任何步骤之前,是否没有办法显式地使工作流失败(或通过)?
试试这个:
name: workflow-skipped
on:
workflow_dispatch:
run-name: |
${{ contains(github.event.issue.labels.*.name, 'bug') ||
contains(github.event.issue.labels.*.name, 'dependencies') ||
contains(github.event.issue.labels.*.name, 'enhancement') }}
jobs:
fail:
runs-on: ubuntu-latest
if: false
steps:
- run: echo Never run