CruiseControl.NET电子邮件发布者问题 [英] CruiseControl.NET email publisher problem
问题描述
我想将ccnet设置为:
I want to set up ccnet to:
- 在每次构建后将邮件发送给提交者(无论状态如何)
- 在构建中断或修复后将邮件发送给所有其他开发人员
对于CCNet的每个新版本,电子邮件发布者得到了重构(并且据说得到了改善),但是我仍然遇到相同的问题:仅通知提交者-如果构建中断,其他开发人员将不会收到电子邮件。因此,要么我没有系统,要么电子邮件发布者中有一个长期未解决的错误。
With every new version of CCNet the email publisher gets refactored (and supposedly improved), but I still have the same problem: only the committers get notified - if the build breaks, other developers don't get the email message. So either I don't get the system, or there is a long-unfixed bug in the email publisher.
我正在使用v1.4.4.83。我的示例配置(我删除了不相关的内容):
I'm using the v1.4.4.83. My example configuration (I removed the irrelevant stuff):
<email
includeDetails="true">
<users>
<user name="user1" address="user1@mail.com" group="developers" />
<user name="user2" address="user2@mail.com" group="developers" />
</users>
<groups>
<group name="developers">
<notifications>
<notificationType>Failed</notificationType>
<notificationType>Fixed</notificationType>
</notifications>
</group>
</groups>
<modifierNotificationTypes>
<NotificationType>Always</NotificationType>
</modifierNotificationTypes>
</email>
推荐答案
我相信这可以满足您的要求(诚然,
I believe that this does what you want (admittedly, a year after your question).
NB:我们使用SVN,带有< svn>
块。在CC.NET 1.4.xx中,< email>
块支持正则表达式以计算来自SVN用户名的电子邮件地址。
NB: We use SVN, with a <svn>
block. In CC.NET 1.4.xx, <email>
blocks support regular expressions to work out email addresses from SVN usernames. It should work with other source control blocks, but I haven't used anything but SVN.
我们在中有类似以下内容。 Publishers>
块(我已对其进行修改以符合您的规范):
We have something like the following in our <publishers>
block (I've modified it to match your spec):
<email ... includeDetails="true">
<!-- Developers get an email whenever the build status changes -->
<users>
<user name="Dev1" group="developer" address="dev1@ourcompany.com" />
<user name="Dev2" group="developer" address="dev2@ourcompany.com" />
</users>
<groups>
<group name="developer" notification="change" />
</groups>
<!-- Committers get an email for every build they commit code for -->
<converters>
<regexConverter find="$" replace="@ourcompany.com" />
</converters>
<modifierNotificationTypes>
<NotificationType>always</NotificationType>
</modifierNotificationTypes>
</email>
因此,只要构建状态为dev1@ourcompany.com和dev2@ourcompany.com都会收到一封电子邮件更改,并且[svnuser] @ ourcompany.com将在他们提交了代码的构建完成构建后收到电子邮件。
So, dev1@ourcompany.com and dev2@ourcompany.com will get an email whenever the build status changes, and [svnuser]@ourcompany.com will get an email when the build they've committed code for finishes building.
NB:如果构建失败,则svn用户自上次成功以来已提交代码的人员,每次构建完成后将继续收到更多电子邮件,直到修复为止。
NB: if the build fails, svn users who have committed code since it last succeeded will continue to get further emails each time a build finishes until the build is fixed.
这篇关于CruiseControl.NET电子邮件发布者问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!