Уведомление по электронной почте при сбое сборки в CruiseControl.Net

Я установил среду непрерывной интеграции с помощью CruiseControl.Net. Я хочу знать, как можно отправить электронное письмо человеку в случае сбоя сборки.

Заранее спасибо.


person Sidharth    schedule 07.12.2010    source источник


Ответы (1)


Вы можете использовать <email> блок внутри своего <publishers> блока.

Наша система выглядит так:

<publishers>
  <xmllogger />

  <email from="[email protected]"   mailhost="mail.ourcompany.com" includeDetails="TRUE"  mailport="25" useSSL="FALSE">
    <users>
      <user name="Mr Happy" group="buildmaster" address="[email protected]" />
      <user name="Mr Strong" group="buildmaster"   address="[email protected]" />
    </users>
    <groups>
      <group name="buildmaster" notification="change" />
    </groups>
    <converters>
      <regexConverter find="$" replace="@ourcompany.com" />
    </converters>
    <modifierNotificationTypes>
      <NotificationType>Failed</NotificationType>
      <NotificationType>Fixed</NotificationType>
    </modifierNotificationTypes>
  </email>
</publishers>

NB, мы используем блок управления исходным кодом <svn>, чтобы получить последний исходный код и запустить сборку. Раздел <regexConverter> берет пользователя svn и добавляет в конец "@ ourcompany.com", чтобы сформировать адрес электронной почты.

Вам понадобятся данные для SMTP-сервера, чтобы отправить электронное письмо. Я считаю, что для этого можно использовать Gmail, но у нашей компании есть собственный SMTP-сервер.

В этой системе «мастера сборки» (мистер Хэппи и мистер Стронг) будут получать электронное письмо при изменении статуса сборки, а любой, кто ввел код в SVN, получит электронное письмо, когда сборка, вызванная их кодом, не удалась или будет исправлена.

Раздел <xmllogger/> необходим, так как по умолчанию (если у вас нет раздела <publishers>) есть издатель XML logger. Это регистрирует информацию для веб-интерфейса.

person Dave Knight    schedule 07.12.2010