Je souhaite envoyer une notification par e-mail chaque fois qu'un travail est effectué. Faites-moi savoir comment nous pouvons propager.
Vous pouvez configurer Jenkins pour envoyer un courrier électronique lorsqu'un travail se termine, à l'aide d'un plugin ou non.
Vous devez d’abord configurer les paramètres de votre serveur de messagerie en cliquant sur Manage Jenkins > Configure System
et trouver la section E-mail Notification
au bas de la page. Éventuellement, configurez également System Admin e-mail address
dans la section Jenkins Location
.
Ensuite, pour chaque travail défini dans sa configuration et Add post-build action
, sélectionnez E-mail Notification
et configurez-le selon vos besoins.
Le problème avec le mécanisme de messagerie par défaut de jenkins est qu’il a une personnalisation très limitée.
L'approche alternative consiste à utiliser le plugin Email-Ext , un mécanisme puissant de notification par courrier électronique. Vous pouvez définir des déclencheurs globaux, mais vous pouvez également personnaliser les paramètres pour chaque travail. L'envoi d'e-mails en cas de succès, d'échec ou de tout autre statut de build est pris en charge.
Allez à: gérer Jenkins -> gérer les plugins -> onglet "disponible" -> sélectionner "plug-in d'extension de messagerie" -> cliquer sur le bouton "installer sans redémarrer"
gérer jenkins -> configurer le système -> entrer les détails dans 'email notification'
Remplissez les détails comme indiqué ci-dessous et enregistrez-le:
Il y a un Jenkins email-ext plugin qui ajoute des déclencheurs et des destinataires.
Cette réponse concerne l'envoi de courrier à l'aide d'un script python et d'Outlook via Jenkins.
Vous devez avoir PsExec.exe pour cela. Ceci exécute les applications à distance.
créez un projet freestyle et exécutez la commande DOS Shell suivante:
chemin\vers\psexec.exe -u nom d'utilisateur -p mot de passe -i 1 cmd -accepteula/c chemin python\to\SendMail.py
Le nom d'utilisateur et le mot de passe correspondent au compte d'utilisateur Windows sur lequel Outlook s'exécute. Chemin\to\SendMail.py est l'emplacement du script python. SendMail.py ressemble un peu à ceci:
import win32com.client as win32
Outlook=win32.Dispatch('Outlook.application')
mail=Outlook.CreateItem(0)
mail.To='[email protected]'
mail.Subject="Test Mail"
mail.HTMLBody="Hiii, This is just a test mail."
mail.Send()
Ici, j'utilise wind32com pour exécuter Outlook. Le courrier sera envoyé à l'aide du compte par défaut enregistré dans Outlook.
Vous pouvez déclencher la construction de ce projet à chaque fois qu’une tâche est terminée.
J'espère que cela pourra vous aider :)
accédez au lien Gérer Jenkins à partir de la page principale.
allez à la fin de la page et renseignez les détails de la notification par courrier électronique:
Cliquez sur Tester la notification pour vérifier l'envoi d'un courrier électronique.
Veuillez consulter le courrier électronique envoyé par Jenkins.