views:

763

answers:

2

I want to set up ccnet to:

  1. Send mail to committers after each build (regardless of the status)
  2. Send mail to all other developers when the build breaks or is fixed

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.

I'm using the v1.4.4.83. My example configuration (I removed the irrelevant stuff):

<email 
    includeDetails="true">
    <users>
     <user name="user1" address="[email protected]" group="developers" /> 
     <user name="user2" address="[email protected]" group="developers" /> 
    </users>
    <groups>
      <group name="developers">
       <notifications>
        <notificationType>Failed</notificationType>
        <notificationType>Fixed</notificationType>
       </notifications>
      </group>
    </groups>
    <modifierNotificationTypes>
     <NotificationType>Always</NotificationType>
    </modifierNotificationTypes>
</email>
A: 
<email from="[email protected]" mailhost="xxxxxxxx.com" includeDetails="True">
   <users>
    <user name="Dev Staff" group="group1" address="xxxxxxxxxxx"/>
    <user name="QA Staff" group="group1" address="xxxxxxxxxxx"/>
   </users>
   <groups>
    <group name="group1" notification="always"/>
   </groups>
   <modifierNotificationTypes>
    <NotificationType>Always</NotificationType>
   </modifierNotificationTypes>
  </email>

This works, but be careful. Sending every developer an email for every build in a continuous system is begging to have your emails ignored. The only email I send to everyone is the nightly installer build.

Alex
Alex, I DON'T want to send an email for EVERY build to EVERY developer. I think I made that clear at the beginning of the question (see 1. and 2.).
Igor Brejc
+1  A: 

I think this does what you want... we're running version 1.4.3 so YMMV. Devs get emails only when there is a change in fixed/failed status, while the PM gets an email every time there's a build.

<groups>
   <group name="Always">
        <name>Always</name>
        <notification>Always</notification>
    </group>
    <group name="developers">
        <name>developers</name>
        <notification>Change</notification>
    </group>
</groups>
<users>
    <user name="dev1">
        <address>...</address>
        <group>developers</group>
        <name>...</name>
    </user>
    <user name="pm1">
        <address>...</address>
        <group>Always</group>
        <name>...</name>
    </user>
    <user name="dev2">
        <address>...</address>
        <group>developers</group>
        <name>...</name>
    </user>
    <user name="dev3">
        <address>...</address>
        <group>developers</group>
        <name>...</name>
    </user>
</users>
TskTsk