diff --git a/config/environments/development.rb b/config/environments/development.rb index f8f77b86927d7107f85b08ebf40d302ee7d48ac8..0fc3ccce03b8b9d28156def72920c9c560e1bea3 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -57,10 +57,11 @@ Rails.application.configure do if ENV['SMTP_SERVER'].present? config.action_mailer.perform_deliveries = true config.action_mailer.delivery_method = :smtp - config.action_mailer.smtp_settings = { - address: ENV.fetch('SMTP_SERVER', nil), - port: ENV.fetch('SMTP_PORT', nil), - domain: ENV.fetch('SMTP_DOMAIN', nil), + + smtp_settings = { + address: ENV.fetch('SMTP_SERVER'), + port: ENV.fetch('SMTP_PORT'), + domain: ENV.fetch('SMTP_DOMAIN'), user_name: ENV.fetch('SMTP_USERNAME', nil), password: ENV.fetch('SMTP_PASSWORD', nil), authentication: ENV.fetch('SMTP_AUTH', nil), @@ -68,7 +69,9 @@ Rails.application.configure do enable_starttls: ActiveModel::Type::Boolean.new.cast(ENV.fetch('SMTP_STARTTLS', 'false')), tls: ActiveModel::Type::Boolean.new.cast(ENV.fetch('SMTP_TLS', 'false')), openssl_verify_mode: ENV.fetch('SMTP_SSL_VERIFY', 'true') == 'false' ? OpenSSL::SSL::VERIFY_NONE : OpenSSL::SSL::VERIFY_PEER - } + }.compact + + config.action_mailer.smtp_settings = smtp_settings config.action_mailer.default_options = { from: ActionMailer::Base.email_address_with_name(ENV.fetch('SMTP_SENDER_EMAIL'), ENV.fetch('SMTP_SENDER_NAME', nil)) } diff --git a/config/environments/production.rb b/config/environments/production.rb index 908fd4dfdc73131e2041e9d17bedf0fb0d85409a..a4ce4a6e1cace42f0a8ff34c74a5909f05251a7e 100644 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -67,18 +67,21 @@ Rails.application.configure do if ENV['SMTP_SERVER'].present? config.action_mailer.perform_deliveries = true config.action_mailer.delivery_method = :smtp - config.action_mailer.smtp_settings = { + + smtp_settings = { address: ENV.fetch('SMTP_SERVER'), port: ENV.fetch('SMTP_PORT'), domain: ENV.fetch('SMTP_DOMAIN'), - user_name: ENV.fetch('SMTP_USERNAME'), - password: ENV.fetch('SMTP_PASSWORD'), - authentication: ENV.fetch('SMTP_AUTH'), + user_name: ENV.fetch('SMTP_USERNAME', nil), + password: ENV.fetch('SMTP_PASSWORD', nil), + authentication: ENV.fetch('SMTP_AUTH', nil), enable_starttls_auto: ActiveModel::Type::Boolean.new.cast(ENV.fetch('SMTP_STARTTLS_AUTO', 'true')), enable_starttls: ActiveModel::Type::Boolean.new.cast(ENV.fetch('SMTP_STARTTLS', 'false')), tls: ActiveModel::Type::Boolean.new.cast(ENV.fetch('SMTP_TLS', 'false')), openssl_verify_mode: ENV.fetch('SMTP_SSL_VERIFY', 'true') == 'false' ? OpenSSL::SSL::VERIFY_NONE : OpenSSL::SSL::VERIFY_PEER - } + }.compact + + config.action_mailer.smtp_settings = smtp_settings config.action_mailer.default_options = { from: ActionMailer::Base.email_address_with_name(ENV.fetch('SMTP_SENDER_EMAIL'), ENV.fetch('SMTP_SENDER_NAME', nil)) }