Class: Jobshop::Generators::AppGenerator

Inherits:
Rails::Generators::AppGenerator
  • Object
show all
Defined in:
lib/generators/jobshop/app/app_generator.rb

Direct Known Subclasses

CanaryGenerator

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ AppGenerator

Returns a new instance of AppGenerator.



57
58
59
60
61
62
63
# File 'lib/generators/jobshop/app/app_generator.rb', line 57

def initialize(*args)
  super

  config = args.last.is_a?(Hash) ? args.pop : { }
  jobshop_options = config[:jobshop_options] || { }
  self.options = options.merge(jobshop_options).freeze
end

Class Method Details

.source_pathsObject



45
46
47
48
# File 'lib/generators/jobshop/app/app_generator.rb', line 45

def self.source_paths
  [ Rails::Generators::AppGenerator.source_root,
    Jobshop::Generators::AppGenerator.source_root ]
end

.source_rootObject



41
42
43
# File 'lib/generators/jobshop/app/app_generator.rb', line 41

def self.source_root
  File.expand_path("templates", __dir__)
end

Instance Method Details

#create_root_filesObject



65
66
67
68
# File 'lib/generators/jobshop/app/app_generator.rb', line 65

def create_root_files
  super
  build :procfile
end

#finish_templateObject



74
75
76
77
78
# File 'lib/generators/jobshop/app/app_generator.rb', line 74

def finish_template
  build :config_schema_format
  build :mount_engine
  super
end

#remove_session_store_initializer_until_rails_5_1Object



70
71
72
# File 'lib/generators/jobshop/app/app_generator.rb', line 70

def remove_session_store_initializer_until_rails_5_1
  remove_file "config/initializers/session_store.rb"
end

#run_bundleObject



80
81
82
83
84
# File 'lib/generators/jobshop/app/app_generator.rb', line 80

def run_bundle
  super
  bundle_command("binstub jobshop") if bundle_install?
  generate("jobshop:config") unless options[:pretend]
end