首页 » Maven实战 » Maven实战全文在线阅读

《Maven实战》11.9 邮件反馈

关灯直达底部

持续集成中非常重要的一个步骤就是反馈。集成的状态信息(尤其是不健康的状态信息)必须及时地通知给相关团队成员,而最常见的反馈方式就是使用电子邮件。本小节介绍如何配置Hudson来及时地发送集成反馈邮件。

首先需要做的是为Hudson配置邮件服务器信息。进入11.5节提到的系统设置页面,找到E-mail Notification部分,然后输入以下信息:

·SMTP server:SMTP邮件服务器地址。

·Default user e-mail suffix:默认用户邮件后缀。当用户没有配置邮件地址的时候,Hudson会自动为其加上该邮件后缀。当用户数量很多,并且邮件地址都是一个域名的时候,该功能就显得尤其重要,例如配置后缀为@foo.com,且用户mike没有配置邮件地址,那么当Hudson需要发邮件给mike的时候就会发送到[email protected]。

·System Admin E-mail Address:系统管理员邮件地址,即Hudson邮件提示所使用的发送地址。

·Hudson URL:Hudson服务器的地址。该地址往往被包含在电子邮件中以方便用户访问Hudson取得进一步的信息,因此要确保该地址在用户机器上是可访问的。

·SMTP Authentication:SMTP相关的认证配置。

完整的邮件服务器配置如图11-32所示。

图11-32 Hudson邮件服务配置

配置完成后,可以单击图11-32右下角的测试按钮,让Hudson发一封邮件至系统管理员邮件地址以确认配置成功。

接下来要做的是配置Hudson任务使用邮件反馈。进入任务的配置页面,然后找到最后Post-build Actions小节中的E-mail Notification复选框,将其选上。现在要关心的是两个问题:什么样的构建会触发邮件反馈?邮件会发送给谁?

关于第一个问题,答案是这样的:

·失败的构建会触发邮件反馈。

·成功构建后的一次不稳定构建会触发邮件反馈。不稳定往往是由失败的测试引起的,因此成功后的一次不稳定往往表示有回归性测试失败。

·失败或不稳定构建后的一次成功构建会触发邮件反馈,以通知用户集成恢复到了健康状态。

·用户可以配置是否每次不稳定构建都触发邮件反馈。

关于第二个问题,首先可以在Recipients中配置一个邮件列表(用空格分离),列表中的用户会收到所有邮件反馈。一般来说,项目负责人应该在这个列表中。

其次,Hudson还提供一个选项:Send separate e-mails to inpiduals who broke the build。当用户选择该选项后,邮件会发送给所有与这次构建相关的成员,即那些提交了本地构建代码更新的成员。Hudson无法精确地知道到底是谁的代码提交导致了构建失败,因此只能通知所有与代码更新相关的成员。

典型的邮件反馈配置如图11-33所示。

图11-33 为Hudson任务配置邮件反馈

最后需要解释的是,图11-33中的Send e-mail for every unstable build选项表示是否为所有的不稳定构建触发邮件反馈,如果不将其选中,只有成功构建后的第一次不稳定构建才会触发邮件反馈。推荐的做法是将其选上。敏捷高效的团队不应该忽略持续集成中的任何不健康因素。