Mail di avviso quando compilazione fallisce in CruiseControl.Net
-
09-10-2019 - |
Domanda
Ho installato un ambiente di Continuous Integration utilizzando CruiseControl.Net. Voglio sapere come una e-mail possono essere inviati ad una persona, al momento di un errore di generazione.
Grazie in anticipo.
Soluzione
È possibile utilizzare un blocco <email>
all'interno del vostro blocco <publishers>
.
I nostri sguardi sistema come questo:
<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>
NB, usiamo un blocco di controllo di origine per ottenere <svn>
ultima fonte e innescare una generazione. La sezione <regexConverter>
porta l'utente svn e aggiunge "@ ourcompany.com" fino alla fine per formare un indirizzo di posta elettronica.
Sarà necessario i dettagli di un server SMTP per inviare l'e-mail. Credo che è possibile utilizzare Gmail per questo, ma la nostra azienda dispone di un proprio server SMTP.
Con questo sistema, i "maestri costruire" (Mr Happy e il signor Strong) riceveranno una e-mail ogni volta che cambia lo stato di costruzione, e chiunque abbia codice impegnati in SVN riceveranno una e-mail quando la build loro codice fa sì che non riesce o è fisso.
La sezione <xmllogger/>
è necessaria in quanto per difetto (se non avete sezione <publishers>
), v'è un editore logger XML. Questo registra le informazioni per l'interfaccia web.