Class: Redpen::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/redpen/install/install_generator.rb

Overview

bin/rails generate redpen:install

Migration, initializer, mount line. Idempotent: run it twice and nothing doubles.

Instance Method Summary collapse

Instance Method Details

#copy_migrations ⇒ Object



9
10
11
# File 'lib/generators/redpen/install/install_generator.rb', line 9

def copy_migrations
  rake "redpen:install:migrations"
end

#create_initializer ⇒ Object



13
14
15
# File 'lib/generators/redpen/install/install_generator.rb', line 13

def create_initializer
  template "initializer.rb", "config/initializers/redpen.rb"
end

#mount_engine ⇒ Object



17
18
19
# File 'lib/generators/redpen/install/install_generator.rb', line 17

def mount_engine
  route 'mount Redpen::Engine, at: "/redpen"' unless File.read("config/routes.rb").include?("Redpen::Engine")
end

#show_next_steps ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
# File 'lib/generators/redpen/install/install_generator.rb', line 21

def show_next_steps
  say <<~MSG

    Red pen is installed. Three things left:

      1. bin/rails db:migrate
      2. Open config/initializers/redpen.rb and say who holds the pen.
      3. Put <%= redpen_rail if signed_in? %> as the last line of <body> in your layout.

  MSG
end