Ruby on Rails
Wednesday, February 18, 2015
On Saturday, 14 February 2015 21:17:21 UTC-5, Stephen Burke wrote:
I am trying to figure out why this block of code in my environments/production.rb file is causing the dkim signing to break. I have email being sent from a rake task with my UserMailer class. It is derived from Devise::Mailer. If I have the action_mailer configuration block within the "config.after_initialize" the dkim signature does not go through. If I don't have that line "after_initialize" the signature goes through. Can someone shed some light on this for me?Here's the code for my UserMailer class and the production.rb file.user_mailer.rbrequire "#{Rails.root}/app/helpers/user_helper"
include UserHelper
class UserMailer < Devise::Mailer
helper :application # gives access to all helpers defined within `application_helper`.
include Devise::Controllers::UrlHelpers # Optional. eg. `confirmation_url`
default from: "Save The Sparkles <con...@savethesparkles.com>",
reply_to: "con...@savethesparkles.com"
...
endenvironments/production.rbconfig.action_mailer.asset_host = 'http://savethesparkles.com'
config.action_mailer.default_url_options = { host: 'savethesparkles.com' }
config.after_initialize do
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'email-smtp.us-east-1.amazonaws.com ',
port: 587,
domain: 'savethesparkles.com',
user_name: ENV['AWS_SES_USER'],
password: ENV['AWS_SES_PASS'],
authentication: :login,
enable_starttls_auto: true
}
end
The documentation for Rails::Railtie::Configuration describes after_initialize as the "last configurable block to run, called after frameworks initialize". ActionMailer's own initialization routine copies the values from config.action_mailer *before* the code above sets them. So the behavior you've described makes sense.
A better question is, why is having after_initialize here important? What's the intent?
--Matt Jones
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/cd54be92-1652-4b2b-9199-8371a70c8581%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment