Search code examples
.nettestingcontinuous-integrationcruisecontrol.netcruisecontrol

Cruise control always sends email


I'm trying to set up CruiseControl.NET to notify developers whenever the build fails or is fixed but it sends emails after every build.

This is currently my publishers section of ccnet.config

<publishers>
  <email mailhost="smtp.gmail.com" from="***@gmail.com" includeDetails="true" mailhostPassword="###" mailhostUsername="***" mailport="587" useSSL="TRUE">
    <users>
      <user name="Developer" group="developers" address="%%%@hotmail.com" />
    </users>
    <groups>
      <group name="developers">
        <notifications>
          <NotificationType>change</NotificationType>
        </notifications>
      </group>
    </groups>
  </email>
</publishers>

I'm using CruiseControl.NET 1.6.

Thanks!
godwin


Solution

  • Ok, it turns out this was happening because I had my email as a user, but I was the 'modifier', so CC.NET wasn't sending me an email because I was in the developer group, but because I was the modifier.

    I solved this by adding the 'modiferNotificationTypes' section to publishers:

    <publishers>
      <email mailhost="smtp.gmail.com" from="***@gmail.com" includeDetails="true" mailhostPassword="###" mailhostUsername="***" mailport="587" useSSL="TRUE">
        <users>
          <user name="Godwin" group="developers" address="%%%@hotmail.com" />
        </users>
        <groups>
          <group name="developers">
            <notifications>
              <notificationType>Failed</notificationType>
              <notificationType>Fixed</notificationType>
            </notifications>
          </group>
        </groups>
        <modifierNotificationTypes>
          <NotificationType>Failed</NotificationType>
          <NotificationType>Fixed</NotificationType>
        </modifierNotificationTypes>
      </email>
    </publishers>