我正在修改一个工作流文件,这样当拉取请求来自另一个repo时,作业就不会运行。
所以,我正在寻找这样的东西:
build_and_deploy_job:
if: github.repository == github.pullrequest.repo
github.pullrequest.repo
只是我编的,但我的想法是,它将返回拉取请求所在的repo的(完整(名称。
我试着输出环境变量,看看如果PR来自同一回购中的不同分支,或者来自不同的回购,它们是否有所不同。对我来说,没有什么是有用的。
这样的事情可能发生吗?
背景:我试图避免构建作业失败,因为当拉取请求来自另一个repo时,它无法在pull_request
事件期间访问repo机密。
使用以下内容检查PR是否来自同一回购。只有当拉取请求触发工作流时,这才有效。
on: [pull_request]
jobs:
build_and_deploy_job:
if: github.event.pull_request.head.repo.name == github.repository
奖金:使用此项检查回购是否为分叉。
on: [pull_request]
jobs:
build_and_deploy_job:
if: github.event.pull_request.head.repo.fork == true
来源:https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#webhook-有效载荷-对象-34