在Hudson CI中,我已经配置了一些工作来通知破坏最新版本的委员。
我的问题: - 我有工作:A,B,C - 我有用户:U1,U2,U3
例如,U1提交项目A,U2到C和U3到A。 让我们说,U3犯了一个错误,他/她的改变不会编译。 目前因为U1,U2和U3在t
上传了他们的变化U1,U2和U3在给定的时间范围内提交了他们的更改,因此在最后5分钟内,所以这些更改将在Hudson中处理(?)内部的一个大变化。 目前,Hudson在一次交易中处理这些上传。 因此,当任何提交触发失败的作业时 - >每个提交者都会收到邮件 U2也是,虽然他的上传还可以,但他没有触及有问题的P1项目。
我的问题:如何配置Hudson只向U3或U3 + U1发送电子邮件通知,而不是向U2发送电子邮件通知。 谢谢!
答案 0 :(得分:1)
这一切都取决于他们是否提交到同一个存储库(比如SVN中的同一个项目)以及是否从那里获取更改。
如果u1,u2和u3提交到svn项目xyz,并且您所说的作业A或B或C是从svn中的此项目构建的,并且作业失败,Hudson会向所有签入的用户发送电子邮件到这个构建作业的存储库,即作业的最后一次运行的差异以及在它们之上的变化。
所以,即使在这个例子中说U2的改变并没有导致失败,Hudson也不知道这一点。它只是向“所有”提交者发送电子邮件..不幸的是,我们在选择外部或其他库项目时看到了同样的问题,但这就是它的方法 - 如果有提交,它可能是相关的失败,所以发送通知..
我们无法避免它:-) ..(除非将来有一些聪明的方法来判断变化是否导致失败)..希望这有帮助
答案 1 :(得分:0)
我认为Hudson(Jenkins)关心与工作工作区相关的变化。因此,如果您可以获得作业A仅从项目A获取代码(缩小SCM链接),则在作业A失败时,提交到项目C不应导致通知。
查看作业中的“更改”链接Hudson中的页面,以查看是否列出了对项目C的提交。