Оповещение по электронной почте при сбое сборки в CruiseControl.Net
-
09-10-2019 - |
Вопрос
Я настроил среду непрерывной интеграции, используя CruiseControl.Net.Я хочу знать, как электронное письмо может быть отправлено человеку во время сбоя сборки.
Заранее благодарю.
Решение
Вы можете использовать <email>
блокируйте внутри вашего <publishers>
блок.
Наша система выглядит следующим образом:
<publishers>
<xmllogger />
<email from="cruise@ourcompany.com" mailhost="mail.ourcompany.com" includeDetails="TRUE" mailport="25" useSSL="FALSE">
<users>
<user name="Mr Happy" group="buildmaster" address="mrhappy@ourcompany.com" />
<user name="Mr Strong" group="buildmaster" address="mrstrong@ourcompany.com" />
</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>
Примечание, мы используем <svn>
блок управления версиями для получения последнего исходного кода и запуска сборки.Тот Самый <regexConverter>
раздел принимает имя пользователя svn и добавляет "@ourcompany.com" в конце, чтобы сформировать адрес электронной почты.
Для отправки электронного письма вам понадобятся данные SMTP-сервера.Я считаю, что для этого можно использовать gmail, но у нашей компании есть свой собственный SMTP-сервер.
С помощью этой системы "мастера сборки" (мистер Хэппи и мистер Стронг) будут получать электронное письмо всякий раз, когда статус сборки меняется, и любой, кто передал код в SVN, получит электронное письмо, когда сборка, вызванная их кодом, завершится неудачно или будет исправлена.
Тот Самый <xmllogger/>
раздел необходим как по умолчанию (если у вас нет <publishers>
раздел), существует издатель XML logger publisher.При этом регистрируется информация для веб-интерфейса.