Is it possible to send emails from the Jenkins Script Console?

后端 未结 2 1594
醉梦人生
醉梦人生 2021-02-11 04:27

To automate user registration in a new Jenkins instance, I have generated a Groovy script:

// Automatically generated groovy script -- 1463047124
j         


        
2条回答
  •  南方客
    南方客 (楼主)
    2021-02-11 04:58

    You could try utilize Java-like code withing your Groovy script:

    import javax.mail.*
    import javax.mail.internet.*
    
    
    def sendMail(host, sender, receivers, subject, text) {
        Properties props = System.getProperties()
        props.put("mail.smtp.host", host)
        Session session = Session.getDefaultInstance(props, null)
    
        MimeMessage message = new MimeMessage(session)
        message.setFrom(new InternetAddress(sender))
        receivers.split(',').each {
            message.addRecipient(Message.RecipientType.TO, new InternetAddress(it))
        }
        message.setSubject(subject)
        message.setText(text)
    
        println 'Sending mail to ' + receivers + '.'
        Transport.send(message)
        println 'Mail sent.'
    }
    

    Usage Example:

    sendMail('mailhost', messageSender, messageReceivers, messageSubject, messageAllText)
    

提交回复
热议问题