Class: SolidusFriendlyPromotions::Generators::InstallGenerator

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

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.exit_on_failure?Boolean

Returns:

  • (Boolean)


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

def self.exit_on_failure?
  true
end

Instance Method Details

#add_migrationsObject



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

def add_migrations
  run "bin/rails railties:install:migrations FROM=solidus_friendly_promotions"
end

#copy_initializerObject



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

def copy_initializer
  template "initializer.rb", "config/initializers/solidus_friendly_promotions.rb"
end

#mount_engineObject



21
22
23
24
25
26
# File 'lib/generators/solidus_friendly_promotions/install/install_generator.rb', line 21

def mount_engine
  inject_into_file "config/routes.rb",
    "  mount SolidusFriendlyPromotions::Engine => '/'\n",
    before: /  mount Spree::Core::Engine.*/,
    verbose: true
end

#run_migrationsObject



28
29
30
31
32
33
34
35
# File 'lib/generators/solidus_friendly_promotions/install/install_generator.rb', line 28

def run_migrations
  run_migrations = options[:auto_run_migrations] || ["", "y", "Y"].include?(ask("Would you like to run the migrations now? [Y/n]")) # rubocop:disable Layout/LineLength
  if run_migrations
    run "bin/rails db:migrate"
  else
    puts "Skipping bin/rails db:migrate, don't forget to run it!" # rubocop:disable Rails/Output
  end
end