Class: DiscoApp::Generators::MailifyGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/disco_app/mailify/mailify_generator.rb

Instance Method Summary collapse

Instance Method Details

#add_env_variablesObject

Add entries to .env and .env.local



42
43
44
45
46
47
48
49
50
# File 'lib/generators/disco_app/mailify/mailify_generator.rb', line 42

def add_env_variables
  configuration = "\n    MAILGUN_API_KEY=\n    MAILGUN_API_DOMAIN=\n  CONFIG\n  append_to_file '.env', configuration\n  append_to_file '.env.local', configuration\nend\n".strip_heredoc

#configure_applicationObject

Set application configuration



26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/generators/disco_app/mailify/mailify_generator.rb', line 26

def configure_application
  configuration = "\n    # Configure ActionMailer to use MailGun\n    if ENV['MAILGUN_API_KEY']\n      config.action_mailer.delivery_method = :mailgun\n      config.action_mailer.mailgun_settings = {\n        api_key: ENV['MAILGUN_API_KEY'],\n        domain: ENV['MAILGUN_API_DOMAIN']\n      }\n    end\n  CONFIG\n  application configuration, env: :production\nend\n".strip_heredoc

#install_gemObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/generators/disco_app/mailify/mailify_generator.rb', line 7

def install_gem
  # Add premailer gem to Gemfile.
  gem 'premailer-rails', '~> 1.8.2'

  # Add explicit dependency on Nokogiri
  gem 'nokogiri', '~> 1.6.6.1'

  # Add the Mailgun rails gem (production only)
  gem_group :production do
    gem 'mailgun_rails', '~> 0.7.0'
  end

  # Install gem.
  Bundler.with_clean_env do
    run 'bundle install'
  end
end