首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GHPRB:如果下游任务未使用GHPRB,是否可以在更新拉式请求时停止下游任务?

GHPRB:如果下游任务未使用GHPRB,是否可以在更新拉式请求时停止下游任务?
EN

Stack Overflow用户
提问于 2018-02-08 07:09:06
回答 1查看 280关注 0票数 1

我有一个高级控制器任务,我称之为“管理器”。管理器使用Github Pull Request Builder (GHPRB)处理启动多个下游作业。只有管理器才会使用该插件。

所有下游作业都使用以下选项:

代码语言:javascript
复制
Set GitHub commit status with custom context and message (Must configure upstream job using GHPRB trigger)

我遇到的情况是,开发人员打开一个pull request (PR),然后通知他们想要进行更改,以便在下游测试完成之前推送第二个提交。

在这种情况下,管理器很容易停止,因为GHPRB在“触发设置”中提供了内置功能。该功能是“取消更新时构建”。

我想解决的问题是如何也杀死下游的工作。

如果同一作业的两个副本正在运行,则可以在Jenkins中停止作业。我想弄清楚的是:

如果我有三个下游"job A“副本在运行,并且这三个副本都在测试单独的拉取请求,那就太棒了!然而,如果其中两个工作正在测试相同的PR:

答:我能检测到他们都在测试同一个PR吗?

如果两个测试在同一个PR上运行,我可以停止最旧的作业而支持最新的作业吗?

C.如果A和B是可能的,哪个Jenkins插件提供了这个解决方案?

D.如果是A和B,而不是C,我该如何使用现有的功能来做到这一点?

EN

回答 1

Stack Overflow用户

发布于 2018-02-08 14:52:23

是否可以使用其他插件或现有的Jenkins功能进行检查;如果有两个测试,并且都具有相同的sha1环境变量,则停止第一个测试并构建最新的测试。

如果您的构建不是一个巨大的步骤,而是一系列步骤,那么您可以考虑在工作的每个步骤之间执行一个git fetch

如果您的作业配置为拉取请求分支(as in here),使用+refs/pull/*:refs/remotes/origin/pr/*之类的refspecs,您可以检查分支pull/aPullRequestID头与${sha1}相比是否发生了变化

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48674837

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档