如果某个用户(静态固定列表,可以将其写在工作流配置文件中)批准(使用approve
关键字提交的拉取请求),是否可以将Github Actions工作流配置为合并拉取请求?我试图在文档https://help.github.com/en/articles/workflow-syntax-for-github-actions#on中找到它
-我想我可以使用on: [pull_request_review]
触发器进行操作,但是文档中没有提到如何访问操作yaml
文件中的事件有效负载,我需要从该有效负载中提取审阅者登录信息。
答案 0 :(得分:1)
workflow/event.json
:触发工作流的webhook事件的POST
有效负载。每次执行动作以隔离动作之间的文件内容时,GitHub都会重写此代码。使用GITHUB_EVENT_PATH
环境变量来访问该文件。
因此,下一步将是弄清楚如何解析JSON文件并提取以后步骤可以使用的一些数据。为此,查看GitHub's setup-dotnet
action可能会有用。在line 62 of installer.ts
中,它们调用一个名为core.exportVariable
的函数,如您所见,here使##[set-env name=NAME;]value
打印在动作的输出中。我已亲自验证,这会导致名为NAME
的环境变量自动出现在同一工作流程作业的后续步骤中。
现在,我还不知道您是否可以在GitHub工作流程的echo "##[set-env name=NAME;]$VALUE"
步骤中简单地完成run
并完成这项工作;您可能必须在Typescript中编写自定义操作才能访问core.exportVariable
。但是,一旦您解析了JSON,那将是将信息传递到工作中后续步骤的一种方法。