Pat*_*ick 5 github github-actions
我只想在代码被推送到特定分支并且标签存在时触发 Github 工作流,但我的配置(github 工作流)没有按预期工作:
name: Deployment
on:
push:
branches:
- feature/BRANCH-NAME
tags:
- *
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: '10.x'
- name: Install dependencies
run: |
npm install
- name: Lint & build
run: |
npm run build
Run Code Online (Sandbox Code Playgroud)
即使标签不存在,也会触发工作流。
我怎么能解决这个问题?
由于我找不到实现AND条件的方法(即在 master 上标记 AND),我使用了以下解决方法:
name: Worflow demo
on:
push:
tags:
- v*
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Exit if not on master branch
if: endsWith(github.ref, 'master') == false
run: exit -1
- name: Next job ...
Run Code Online (Sandbox Code Playgroud)
如果有标记(例如 tag v1.0.0)提交推送,这将触发:
on:
push:
tags:
- v*
Run Code Online (Sandbox Code Playgroud)
第一步('Exit if not on master branch')然后检查当前分支是否没有结束master并退出工作流(后续测试不会开始):
- name: Exit if not on master branch
if: endsWith(github.ref, 'master') == false
run: exit -1
Run Code Online (Sandbox Code Playgroud)
希望这对其他人也有帮助。
| 归档时间: |
|
| 查看次数: |
1690 次 |
| 最近记录: |