class DailyWeeklyMonthly::Notifier

Public Class Methods

new(smtp_server, smtp_port) click to toggle source
# File lib/daily_weekly_monthly/notifier.rb, line 5
def initialize smtp_server, smtp_port
  @smtp_server = smtp_server
  @smtp_port = smtp_port
end

Public Instance Methods

call(exception, deliver_to) click to toggle source

rubocop: disable Metrics/MethodLength

# File lib/daily_weekly_monthly/notifier.rb, line 11
    def call exception, deliver_to
      mail = Mail.new {
        from "backups@localhost"
        to deliver_to
        subject "Backup failed"
        body <<EOF
Backup failure

#{exception.message}

#{exception.backtrace.join("\n")}
EOF
      }
      if @smtp_server && @smtp_port
        mail.delivery_method :smtp, address: @smtp_server,
                                    port: @smtp_port,
                                    enable_starttls_auto: false
      end
      mail.deliver
    end