현재 내 Jenkins 인스턴스는 커미터에게 전자 메일을 보냅니다 (빌드가 실패한 경우). 전자 메일 확장 플러그인을 사용하고 커밋이 정의하려는 특정 도메인에 속한 경우에만 전자 메일을 보낼 Groovy 스크립트를 작성하고 싶습니다.jenkins email-ext plugin에서 필터 도메인을 사용하는 방법은 무엇입니까?
0
A
답변
0
일반적으로 Jenkins는 사람들의 구성 (Jenkings -> People -> configure)의 전자 메일을 사용합니다.
일부 사람들에게 전자 메일을 보내지 않으려면 전자 메일 주소를 제거하면됩니다.
1
미리 보내기 스크립트로이 작업을 수행 할 수 있습니다. MimeMessage 객체에 대한 완전한 액세스 권한을 제공하므로 To에있는 사람들의 목록을 반복 할 수 있고 목록에 원하는 도메인이 없으면 cancel = True로 설정할 수 있습니다.
2
이렇게 할 수 있습니다 같은 기본 사전 전송 스크립트 : https://wiki.jenkins-ci.org/display/JENKINS/Email-ext+Recipes
:에서recipients = msg.getRecipients(javax.mail.Message.RecipientType.TO)
filtered = recipients.findAll { addr -> addr.toString().contains('@gooddomain.com') }
msg.setRecipients(javax.mail.Message.RecipientType.TO, filtered as javax.mail.Address[])