加载笔记内容...
加载笔记内容...
在 GitHub Actions 中,手动触发工作流(workflow)通常是通过 workflow_dispatch
事件来实现的。这种方式允许你从 GitHub 网站上直接点击按钮来手动触发工作流。以下是设置和使用 workflow_dispatch
事件的步骤。
workflow_dispatch
首先,确保你的 GitHub Actions 工作流文件(通常是 .github/workflows/
目录下的 .yml
文件)中定义了 workflow_dispatch
事件。例如:
1name: Manual Trigger Workflow
2
3on:
4 workflow_dispatch: # 使工作流可以手动触发
5
6jobs:
7 build:
8 runs-on: ubuntu-latest
9
10 steps:
11 - name: Checkout code
12 uses: actions/checkout@v2
13
14 - name: Set up Node.js
15 uses: actions/setup-node@v2
16 with:
17 node-version: '14'
18
19 - name: Run tests
20 run: npm test
在这个例子中,on: workflow_dispatch
表示该工作流可以手动触发。你可以根据自己的需求自定义工作流内容。
完成上述配置后,你可以通过以下步骤手动触发工作流:
如果你希望在手动触发工作流时传递一些输入参数,可以在 workflow_dispatch
下使用 inputs
来定义输入字段。如下所示:
1name: Manual Trigger Workflow with Inputs
2
3on:
4 workflow_dispatch:
5 inputs:
6 username:
7 description: 'Your GitHub username'
8 required: true
9 default: 'octocat'
10 environment:
11 description: 'Target environment'
12 required: true
13 default: 'staging'
14
15jobs:
16 build:
17 runs-on: ubuntu-latest
18
19 steps:
20 - name: Checkout code
21 uses: actions/checkout@v2
22
23 - name: Display inputs
24 run: |
25 echo "Username: ${{ github.event.inputs.username }}"
26 echo "Environment: ${{ github.event.inputs.environment }}"
在手动触发时,GitHub 会弹出一个对话框,要求你输入这些字段的值。
一旦手动触发了工作流,工作流会按预定步骤执行。你可以通过点击 Actions 页面中的工作流记录来查看运行日志,确保任务按预期完成。
这种方法使得你可以在没有提交代码的情况下,也能通过 GitHub Actions 自动执行一些任务,比如部署、构建或运行测试等。