class GroongaQueryLog::Command::RunRegressionTest::MailNotifier
Public Class Methods
new(options)
click to toggle source
# File lib/groonga-query-log/command/run-regression-test.rb, line 991 def initialize(options) @options = options end
Public Instance Methods
notify_finished(success, report)
click to toggle source
# File lib/groonga-query-log/command/run-regression-test.rb, line 1003 def notify_finished(success, report) return unless @options[:mail_to] if success subject = @options[:mail_subject_on_success] return if @options[:mail_only_on_failure] else subject = @options[:mail_subject_on_failure] end send_mail(subject, report) end
notify_started()
click to toggle source
# File lib/groonga-query-log/command/run-regression-test.rb, line 995 def notify_started return unless @options[:mail_to] return if @options[:mail_only_on_failure] subject = @options[:mail_subject_on_start] send_mail(subject, "") end
Private Instance Methods
send_mail(subject, content)
click to toggle source
# File lib/groonga-query-log/command/run-regression-test.rb, line 1016 def send_mail(subject, content) header = <<-HEADER MIME-Version: 1.0 X-Mailer: groonga-query-log test reporter #{VERSION}; https://github.com/groonga/groonga-query-log Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit From: #{@options[:mail_from]} To: #{@options[:mail_to]} Subject: #{subject} Date: #{Time.now.rfc2822} HEADER mail = <<-MAIL.gsub(/\r?\n/, "\r\n") #{header} #{content} MAIL smtp = Net::SMTP.new(@options[:smtp_server], @options[:smtp_port]) smtp.enable_starttls if @options[:smtp_starttls] smtp.start(@options[:smtp_server], @options[:smtp_auth_user], @options[:smtp_auth_password]) do smtp.send_message(mail, @options[:mail_from], @options[:mail_to]) end end