Bagaimana saya bisa mengatur alamat Pengirim di Jenkins?

217

Saya mengirim email dari Jenkins ke relai SMTP anonim secara internal. Relai itu kemudian secara aman mengirim surat untuk bertukar online melalui TLS pada port 587. Transportnya berfungsi dengan baik, masalahnya adalah bahwa Microsoft mengharuskan alamat Pengirim cocok dengan nama login kredensial otentikasi yang sama dengan alamat email akun. Misalnya, katakan ini [email protected]. Bagaimana saya bisa membuat jenkins selalu mengirim email dari [email protected]?

BTW ketika saya mengatakan transport berfungsi dengan baik apa yang saya maksud secara spesifik adalah bahwa saya dapat memasukkan file email yang diformat ke dalam direktori "Pickup" pada server relai SMTP dan dikirim dengan benar ke penerima mana pun asalkan alamat Dari adalah foo @ mycompany .com.

CTOMarc
sumber
Adakah yang tahu cara melakukan ini tanpa menggunakan UI? Mungkin melalui CLI atau skrip asyik atau bahkan pekerjaan jenkins?
jdf
Menjawab pertanyaan saya sendiri tentang mengubah alamat email admin tanpa UI di bawah ini.
jdf

Jawaban:

352

Jenkins menggunakan alamat email Admin Sistem sebagai alamat pengirim untuk pemberitahuan email. Anda dapat mengkonfigurasi ini di bawah Manage Jenkins -> Configure System . Ini berada di bawah tajuk Lokasi Jenkins di halaman itu! Tidak segera jelas bahwa pengaturan ini terkait dengan pengaturan pemberitahuan email, karena tidak di bawah header pemberitahuan email pada halaman konfigurasi.

Friso
sumber
1
Menggunakan Ubuntu 12.04, exim4 lokal dan Jenkins 1.565.1, diinstal dari repo eksternal, saya harus mengatur ini untuk membuat pengiriman surat berfungsi.
Max Hohenegger
96

Kelola Jenkins -> Konfigurasi Sistem -> Lokasi Jenkins -> alamat email Admin Sistem

Anda dapat mencari halaman untuk "Lokasi Jenkins" untuk mengubah nilai default alamat yang belum dikonfigurasi ke apa pun yang Anda inginkan.

Anshu Prateek
sumber
Kelola Jenkins -> Configure System -> Jenkins Location -> System Admin alamat e-mail tepat pada waktunya, tnx
Frohlich
22

Ada dua tempat untuk menambahkan "Pemberitahuan Email"

  1. Tingkat global
  2. Tingkat lokal (tingkat pekerjaan Jenkins)

Untuk mengatur Pemberitahuan E-Mail di Tingkat Global , ikuti langkah-langkah di bawah ini - 1) Pergi ke Kelola Jenkins 2) Konfigurasikan Sistem 3) Lokasi Jenkins 4) Sistem Alamat email admin

masukkan deskripsi gambar di sini

Untuk mengatur Pemberitahuan E-Mail di tingkat lokal (per tingkat pekerjaan Jenkins), ikuti langkah-langkah di bawah ini - 1) Klik pada nama Pekerjaan (jika ada) 2) klik pada "Konfigurasi" 3) Kemudian cari "Post-" build Action "4) Tentukan alamat email di bawah" E-mail Notification ". 5) Simpan perubahan.

masukkan deskripsi gambar di sini

Sanjeet Pandey
sumber
1
Di tingkat lokal, ini bukan alamat pengirim tetapi penerima. Saya kira itu tidak mungkin untuk mengkonfigurasi alamat email pengirim pada tingkat pekerjaan tanpa menulis skrip khusus untuk mengirim email.
orang dalam
11

Saya tidak yakin apakah itu yang Anda maksud, tetapi Jenkins memungkinkan Anda untuk memberikan Alamat Email Pengirim lengkap untuk pemberitahuan. Pergi ke Kelola jenkins , lalu Konfigurasi sistem dan temukan bagian yang disebut E-mail Notification .

Anda dapat memberikan alamat email Anda dalam bentuk Jenkins <[email protected]>.

Łukasz Rżanek
sumber
8
Mulai April 2015, Kelola Jenkins> Configure System> Alamat email Admin Sistem
Shirish Hirekodi
10

Jika Anda perlu melakukan ini tanpa menggunakan UI jenkins (misalnya dalam mengotomatiskan pengaturan jenkins) - Anda dapat melakukannya dengan skrip 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()

Harap dicatat: Saya tidak menulis skrip ini (walaupun saya telah mengujinya dan berfungsi), semua kredit untuk Peter Halliday dan situs webnya dengan skrip asyik yang membantu lainnya di sini .

jdf
sumber