问题描述
easy是对任何推或拉请求运行GitHub Action的方式:
# Triggers the workflow on push or pull request events
on: [push,pull_request]
但是如果我想限制运行以拉取针对特定基本引用打开的请求,同时允许在所有分支上运行该怎么办?
我想到了这一点:
on:
push:
branches:
- "*"
pull_request:
branches:
- "develop"
- "staging"
但是没有用。我将此动作添加到功能分支中,而GitHub并未将其选中。
我的glob有什么问题吗?为什么“ *”不起作用?
解决方法
发布问题后,我发现了Filter pattern cheat sheet:
'*':匹配所有不包含斜杠(/)的分支和标记名称。 *字符是YAML中的特殊字符。用*开头的模式>时,必须使用引号。
'**':匹配所有分支和标签名称。这是默认行为 当您不使用分支或标签过滤器时。
碰巧我正在测试的分支包含一个斜杠(/),所以一个星号(*)还不够。我切换到两个星号(**),现在可以使用。