当拉取请求具有特定标签时运行Github操作
在阅读了的文档之后,我想知道是否可以使用给定的标签名运行工作流,如RFR或WIP 我知道我们可以在标记pull请求时运行工作流,但对于特定的标签名称,没有其他要求:当拉取请求具有特定标签时运行Github操作,github,yaml,github-actions,Github,Yaml,Github Actions,在阅读了的文档之后,我想知道是否可以使用给定的标签名运行工作流,如RFR或WIP 我知道我们可以在标记pull请求时运行工作流,但对于特定的标签名称,没有其他要求: on: pull_request: types: [labeled] 以前有人这样做过吗?您可以通过使用以下条件表达式运行工作流来标记拉取请求 if: ${{ github.event.label.name == 'label_name' }} 因此,如果您的GitHub操作配置如下所示 name: CI on:
on:
pull_request:
types: [labeled]
以前有人这样做过吗?您可以通过使用以下条件表达式运行工作流来标记拉取请求
if: ${{ github.event.label.name == 'label_name' }}
因此,如果您的GitHub操作配置如下所示
name: CI
on:
pull_request:
types: [ labeled ]
jobs:
build:
if: ${{ github.event.label.name == 'bug' }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Run a one-line script
run: echo Hello, world!
每当标记PR时,它都会触发工作流,并且仅当标签是bug
时才运行作业,如果标签是其他任何内容,它将跳过。您还可以使用github.event.action=='labeled'
作为额外检查,但如果您只有类型:[labeled]
用于上面配置中所示的pull\u请求
,则不需要这样做
注意:仅供参考,github事件包含以下关于标签的信息(为了简洁起见,删除了不相关的数据),以防标记PR
"event": {
"action": "labeled",
"label": {
"color": "d73a4a",
"default": true,
"description": "Something isn't working",
"id": 1519136641,
"name": "bug",
"node_id": "abcd",
"url": "https://api.github.com/repos/owner/repo/labels/bug"
}
}
GitHub操作文档关于条件表达式的内容是。谢谢,我认为这是现在最好的方法,希望GitHub稍后添加此功能!多个标签是什么。例如,如果我的PR有两个标签,例如
bug
和security
。此方法有效吗?@Markus此方法将触发每个标签事件的工作流,当您有多个标签时也有效。太糟糕了,我们只能在标签事件上运行。我希望它可以继续运行操作,只要标签仍然分配给PR>