我正在用 JavaScript 编写自定义操作。
在我的 GitHub 操作中,我想根据触发它的事件类型做出决定。例如,它是推送还是 cron 作业。
如何使用 GitHub Actions Toolkit 访问此信息?
Cso*_*mai 35
问题的标题和内容是矛盾的。您在标题中提到了事件类型,但问题询问了其他问题:
这是推送还是 cron 作业
这不是事件类型,这是事件名称。可以通过变量访问名称,github.event_name并且可以从中读取类型github.event.action。(注意下划线和点之间的区别。)
是的,命名很混乱。在工作流 yaml的下一层on,您可以指定事件名称。您在关键字之后指定的甚至更深一层的内容types也称为“操作”。这是一个例子:
name: Foo
on:
pull_request:
types: ["ready_for_review", "converted_to_draft"]
jobs:
bar:
runs-on: ["ubuntu-latest"]
steps:
- run: echo "event name is:" ${{ github.event_name }}
- run: echo "event type is:" ${{ github.event.action }}
Run Code Online (Sandbox Code Playgroud)
这输出:
event name is: pull_request
event type is: converted_to_draft
Run Code Online (Sandbox Code Playgroud)
在此页面中,您可以使用GITHUB_EVENT_NAME环境变量。
触发工作流的 Webhook 事件的名称。
如果您正在使用该@actions/github包,它可以让您访问一个context对象,该对象允许您获取事件名称,如下所示:
import {context} from '@actions/github';
console.log(context.eventName);
Run Code Online (Sandbox Code Playgroud)
两种方法都会给你相同的结果。
| 归档时间: |
|
| 查看次数: |
15685 次 |
| 最近记录: |