Nad*_*iya 8 workflow triggers commit github-actions
有没有办法通过提交消息值触发特定的 Github 操作工作流程?例如,如果我使用提交消息“smoke_test”进行推送,则只有(一个特定工作流程)烟雾测试工作流程应从一组工作流程中触发。请帮忙,谢谢!
fre*_*nky 13
就在这里。如果提交消息包含特定关键字,您可以检查触发事件。
这是一个例子:
name: Smoke tests
on: push
jobs:
test:
runs-on: [ ubuntu-latest ]
steps:
- name: Run smoke tests
if: contains(github.event.head_commit.message, 'smoke_test')
run: |
echo 'Running smoke tests!'
Run Code Online (Sandbox Code Playgroud)
是的。有一种方法。我没有在此链接中找到可用的官方文档以及所用脚本语言的 CFG 描述。
我进行的实验表明,您可以使用if关键字来条件Job中的所有步骤。请参阅下面的示例。
与使用条件控制作业执行相比,它更好,因为如果未执行所有步骤,则构建在 GitHub CI 中标记为灰色。
name: My Build.
# The name for workflow runs generated from the workflow, which will appear in the list of workflow.
run-name: ${{ github.actor }} has triggered Build and Launch Unittests for the project
# Specify the trigger for this workflow.
on: [push]
jobs:
Build-my-project-for-Linux:
runs-on: ubuntu-latest
if: contains(github.event.head_commit.message, 'please build')
steps:
- name: Check out repository code
uses: actions/checkout@v3
- run: echo " The ${{ github.repository }} repository has been cloned to the runner into " ${{ github.workspace }}
- run: |
export CC=/usr/bin/gcc-10
export CXX=/usr/bin/g++-10
echo "Etc. for first step"
- run: |
echo "Etc. for second step"
Run Code Online (Sandbox Code Playgroud)
1 https://docs.github.com/en/actions/learn-github-actions/understanding-github-actions
[2] https://docs.github.com/en/actions/using-workflows/about-workflows
工作流程- 是一个可配置的自动化流程,将运行一个或多个作业
事件- 是存储库中触发工作流运行的特定活动。
Runner - 是一个在触发工作流时运行工作流的服务器。每个运行程序一次只能运行一项作业。GitHub 提供 Ubuntu Linux、Microsoft Windows 和 macOS 运行程序。
作业- 是工作流程中在同一运行器上执行的一组步骤。
步骤- 步骤是要执行的 shell 脚本或要运行的操作。
Action - 是 GitHub Actions 平台的自定义应用程序,用于执行复杂但频繁重复的任务。
| 归档时间: |
|
| 查看次数: |
10044 次 |
| 最近记录: |