Jenkins에서 발신자 주소를 어떻게 설정합니까?


217

Jenkins에서 내부적으로 익명의 SMTP 릴레이로 메일을 보내고 있습니다. 그런 다음이 릴레이는 포트 587에서 TLS를 통해 온라인으로 교환하기 위해 메일을 안전하게 보냅니다. 전송은 완벽하게 작동합니다. 문제는 Microsoft가 보낸 사람 주소가 계정 전자 메일 주소와 동일한 인증 자격 증명 로그인 이름과 일치해야한다는 것입니다. 예를 들어 foo@mycompany.com이라고 가정하십시오. jenkins가 항상 foo@mycompany.com에서 메일을 보내도록하려면 어떻게해야합니까?

BTW는 전송이 완벽하게 작동한다고 말할 때 특별히 의미하는 바는 형식이 지정된 전자 메일 파일을 SMTP 릴레이 서버의 "픽업"디렉토리에 놓을 수 있으며 보낸 사람 주소가 foo @ mycompany 인 경우 모든 수신자에게 제대로 전송된다는 것입니다. .com.


누구나 UI를 사용하지 않고이를 수행하는 방법을 알고 있습니까? 어쩌면 CLI 또는 그루비 스크립트 또는 젠킨스 작업을 통해?
jdf

아래 UI없이 관리자 이메일 주소 변경에 대한 내 자신의 질문에 대답했습니다.
jdf

답변:


352

Jenkins는 시스템 관리자 이메일 주소를 이메일 통지 발신자 주소로 사용합니다. Jenkins 관리-> 시스템 구성에서이를 구성 할 수 있습니다 . 이것은 해당 페이지 의 Jenkins Location 헤더에 있습니다! 이 설정이 구성 페이지 의 전자 메일 알림 헤더 아래에 있지 않기 때문에 전자 메일 알림 설정과 연결되어 있는지 즉시 알 수 없습니다 .


1
외부 저장소에서 설치된 로컬 exim4 및 Jenkins 1.565.1 인 Ubuntu 12.04를 사용하여 메일 배달을 수행하기 위해이를 설정해야했습니다.
Max Hohenegger

96

Jenkins 관리-> 시스템 구성-> Jenkins 위치-> 시스템 관리자 이메일 주소

"Jenkins Location"페이지에서 아직 구성되지 않은 주소의 기본값을 원하는 것으로 변경할 수 있습니다.


Jenkins 관리-> 시스템 구성-> Jenkins 위치-> 시스템 관리자 이메일 주소 tnx
Frohlich

22

"전자 메일 알림"을 ​​추가 할 수있는 두 곳이 있습니다

  1. 글로벌 수준
  2. 로컬 레벨 (Jenkins 작업 레벨)

글로벌 수준 에서 전자 메일 알림을 설정 하려면 다음 단계를 수행하십시오. 1) Jenkins 관리로 이동 2) 시스템 구성 3) Jenkins 위치 4) 시스템 관리자 전자 메일 주소

여기에 이미지 설명을 입력하십시오

이메일 알림을 로컬 수준 (Jenkins 작업 레벨 별)으로 설정하려면 아래 단계를 따르십시오-1) 작업 이름 (있는 경우)을 클릭하십시오. 2) "구성"을 클릭하십시오. 3) "포스트- 빌드 조치 "4)"이메일 알림 "에서 이메일 주소를 지정하십시오. 5) 변경 사항을 저장하십시오.

여기에 이미지 설명을 입력하십시오


1
로컬 수준에서는 발신자 주소가 아니라 수신자 주소입니다. 이메일을 보내기 위해 사용자 지정 스크립트를 작성하지 않으면 작업 수준에서 보낸 사람의 이메일 주소를 구성 할 수 없습니다.
내부자

11

그것이 당신이 의도 한 것인지 확실하지 않지만 Jenkins를 사용하면 알림을 위해 전체 발신자 전자 메일 주소를 제공 할 수 있습니다. jenkins 관리로 이동 한 다음 시스템 구성으로 이동하여 이메일 알림 섹션을 찾으십시오 .

의 형식으로 이메일 주소를 제공 할 수 있습니다 Jenkins <foo@mycompany.com>.


8
2015 년 4 월 현재 Jenkins 관리> 시스템 구성> 시스템 관리자 전자 메일 주소
Shirish Hirekodi

10

jenkins UI를 사용하지 않고 (예 : jenkins 설정 자동화)이를 수행하려면 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()

참고 사항 : 나는이 스크립트를 작성하지 않았지만 (여전히 테스트했지만 작동하지만) Peter Halliday와 그의 웹 사이트에 다른 유용한 그루비 스크립트가 있습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.