Class: Recipes::Mailer

Inherits:
Rails::AppBuilder
  • Object
show all
Defined in:
lib/potassium/recipes/mailer.rb

Instance Method Summary collapse

Instance Method Details

#askObject



2
3
4
5
6
7
8
9
10
11
12
13
# File 'lib/potassium/recipes/mailer.rb', line 2

def ask
  email_services = {
    aws_ses: "Amazon SES",
    sendgrid: "Sendgrid (beta)",
    none: "None, thanks"
  }

  email_service = answer(:email_service) do
    email_services.keys[Ask.list("Which email service are you using?", email_services.values)]
  end
  set :email_service, email_service.to_sym
end

#createObject



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/potassium/recipes/mailer.rb', line 15

def create
  email_service = email_services(get(:email_service))
  return if email_service.nil?

  set(:mailer_delivery_method, email_service[:delivery_method])
  set(:mailer_gem_name, email_service[:gem_name])

  add_readme_header :mailing

  dependencies(email_service)
  config(email_service)

  background_processor = load_recipe(:background_processor)
  background_processor.add_sidekiq unless background_processor.installed?
end

#installObject



31
32
33
34
# File 'lib/potassium/recipes/mailer.rb', line 31

def install
  ask
  create
end