我正在努力将 Jenkins Pipeline 转换为 Github Actions 工作流程,并且需要一种将提交作者存储为环境变量的方法,以便稍后在 Node.js 代码中使用。
我已阅读文档,这似乎是我可以让它工作的唯一方法:
name: Feature Branch PR
on:
pull_request:
types: [opened, edited, synchronize]
push:
branches:
- '**'
Run Code Online (Sandbox Code Playgroud)
然后在 Env 部分:
env:
AUTHOR: ${{ github.event.pusher.name }}
Run Code Online (Sandbox Code Playgroud)
问题是这只适用于推送触发器。因此,如果我从 yml 工作流程顶部删除 on: Push 部分(因此它仅在 PR 上触发),那么作者信息将变为空。
我找不到一种方法来获取它的提交。有谁知道有什么办法吗?我们不希望此工作流程在推送时触发。
我也尝试过
AUTHOR: $(jq '.commits.committer.name' $GITHUB_EVENT_PATH)
Run Code Online (Sandbox Code Playgroud)
我认为这在语法上是不正确的。