Ich sende intern E-Mails von Jenkins an ein anonymes SMTP-Relay. Dieses Relay sendet dann sicher E-Mails zum Online-Austausch über TLS an Port 587. Der Transport funktioniert einwandfrei. Das Problem besteht darin, dass Microsoft verlangt, dass die Absenderadresse mit dem Anmeldenamen der Authentifizierungsdaten übereinstimmt, der mit der E-Mail-Adresse des Kontos übereinstimmt. Angenommen, dies ist [email protected]. Wie kann ich Jenkins dazu bringen, immer E-Mails von [email protected] zu senden?
Übrigens, wenn ich sage, dass der Transport perfekt funktioniert, meine ich konkret, dass ich eine formatierte E-Mail-Datei in das Verzeichnis "Pickup" auf dem SMTP-Relay-Server ablegen kann und sie ordnungsgemäß an jeden Empfänger gesendet wird, vorausgesetzt, die Absenderadresse lautet foo @ mycompany .com.
Antworten:
Jenkins verwendet die E-Mail-Adresse des Systemadministrators als Absenderadresse für die E-Mail-Benachrichtigung. Sie können dies unter Jenkins verwalten -> System konfigurieren konfigurieren . Dies befindet sich unter der Überschrift " Jenkins-Standort" auf dieser Seite! Es ist nicht sofort ersichtlich, dass diese Einstellung mit den E-Mail-Benachrichtigungseinstellungen verknüpft ist, da sie sich nicht unter dem E-Mail-Benachrichtigungsheader auf der Konfigurationsseite befindet.
quelle
Jenkins verwalten -> System konfigurieren -> Jenkins-Standort -> E-Mail-Adresse des Systemadministrators
Sie können die Seite nach "Jenkins Location" durchsuchen, um den Standardwert der noch nicht konfigurierten Adresse auf den gewünschten Wert zu ändern.
quelle
Es gibt zwei Stellen, an denen die "E-Mail-Benachrichtigungen" hinzugefügt werden können.
Führen Sie die folgenden Schritte aus, um die E-Mail-Benachrichtigung auf globaler Ebene festzulegen: 1) Gehen Sie zu Jenkins verwalten. 2) Konfigurieren des Systems. 3) Jenkins-Standort. 4) E-Mail-Adresse des Systemadministrators
Führen Sie die folgenden Schritte aus, um die E-Mail-Benachrichtigung auf lokaler Ebene (pro Jenkins-Auftragsebene) festzulegen: 1) Klicken Sie auf den Auftragsnamen (falls vorhanden). 2) Klicken Sie auf "Konfigurieren". 3) Suchen Sie dann nach "Post-". Build-Aktion "4) Geben Sie die E-Mail-Adresse unter" E-Mail-Benachrichtigung "an. 5) Speichern Sie die Änderungen.
quelle
Ich bin nicht sicher, ob es das ist, was Sie gemeint haben, aber Jenkins ermöglicht es Ihnen, eine vollständige Absender-E-Mail-Adresse für Benachrichtigungen anzugeben. Gehen Sie zu Jenkins verwalten , dann zur Systemkonfiguration und suchen Sie den Abschnitt E-Mail-Benachrichtigung .
Sie können Ihre E-Mail-Adresse in einer Form von angeben
Jenkins <[email protected]>
.quelle
Wenn Sie dies ohne Verwendung der Jenkins-Benutzeroberfläche tun müssen (z. B. beim Automatisieren eines Jenkins-Setups), können Sie dies mit einem groovigen Skript tun.
Bitte beachten Sie: Ich habe dieses Skript nicht geschrieben (obwohl ich es getestet habe und es funktioniert). Alle Ehre gebührt Peter Halliday und seiner Website mit anderen hilfreichen, groovigen Skripten hier .
quelle