web-dev-qa-db-fra.com

Comment définir l'adresse de l'expéditeur dans Jenkins?

J'envoie du courrier de Jenkins à un relais SMTP anonyme en interne. Ce relais envoie ensuite le courrier à Exchange en ligne en toute sécurité via TLS sur le port 587. Le transport fonctionne parfaitement. Le problème est que Microsoft exige que l'adresse de l'expéditeur corresponde au nom de connexion des informations d'authentification, identique à l'adresse électronique du compte. Par exemple, disons qu'il s'agit de [email protected]. Comment puis-je faire en sorte que Jenkins envoie toujours un courrier électronique à l'adresse [email protected]?

BTW quand je dis que le transport fonctionne parfaitement, ce que je veux dire spécifiquement, c'est que je peux déposer un fichier de courrier électronique formaté dans le répertoire "Pickup" du serveur de relais SMTP et qu'il est correctement envoyé à tout destinataire à condition que l'adresse De soit foo @ mycompany. .com.

208
CTOMarc

Jenkins utilise adresse électronique de l'administrateur système comme adresse de l'expéditeur pour la notification par courrier électronique. Vous pouvez configurer ceci sous Manage Jenkins -> Configure System. Ceci est sous le Jenkins Location en-tête sur cette page! Il n'est pas immédiatement évident que ce paramètre soit lié aux paramètres de notification par courrier électronique, car il ne se trouve pas sous l'en-tête Notification par courrier électronique de la page de configuration.

341
Friso

Gérer Jenkins -> Configurer le système -> Emplacement Jenkins -> Adresse électronique de l'administrateur système

Vous pouvez rechercher dans la page "Emplacement Jenkins" pour modifier la valeur par défaut de l'adresse non encore configurée.

94
Anshu Prateek

Il y a deux endroits pour ajouter les "Notificaitons E-Mail"

  1. Niveau global
  2. Niveau local (niveau d'emploi Jenkins)

Pour définir la notification par courrier électronique au niveau global , suivez les étapes ci-dessous: 1) Accédez à Gestion de Jenkins 2) Configuration du système 3) Emplacement de Jenkins 4) Système Adresse e-mail de l'administrateur

enter image description here

Pour définir la notification par courrier électronique au niveau local (par niveau de travail Jenkins), suivez les étapes ci-dessous - 1) Cliquez sur le nom du travail (s'il en existe un). ) 2) Cliquez sur "Configurer". 3) Recherchez ensuite "Action de post-construction". 4) Spécifiez l'adresse électronique sous "Notification par e-mail". 5) Enregistrez les modifications.

enter image description here

18
Sanjeet Pandey

Je ne sais pas si c'est ce que vous vouliez dire, mais Jenkins vous permet de fournir une adresse e-mail complète de l'expéditeur pour les notifications. Allez à Manage jenkins, puis configuration du système et trouvez la section intitulée Notification par courrier électronique.

Vous pouvez vous fournir une adresse électronique sous la forme de Jenkins <[email protected]>.

10
Łukasz Rżanek

Si vous devez le faire sans utiliser l'interface utilisateur de Jenkins (par exemple, en automatisant une configuration de Jenkins), vous pouvez le faire avec un script groovy.

import jenkins.model.*

def jenkinsLocationConfiguration = JenkinsLocationConfiguration.get()

jenkinsLocationConfiguration.setAdminAddress("[your admin name] <[your admin email address]>")
// example format -> .setAdminAddress("Jane Doe <foo@company_email.com>")    

jenkinsLocationConfiguration.save()

Remarque: je n'ai pas écrit ce script (même si je l'ai testé et que cela fonctionne), tout le mérite de Peter Halliday et de son site Web avec d'autres scripts groovy utiles ici .

8
jdf