class Barebones::AppGenerator

Protected Class Methods

source_paths() click to toggle source

Fall back to Rails default templates

Calls superclass method
# File lib/barebones/generators/app_generator.rb, line 162
def self.source_paths
  paths = super
  paths << Rails::Generators::AppGenerator.source_root
end
source_root() click to toggle source

Supply Thor with template root path

# File lib/barebones/generators/app_generator.rb, line 157
def self.source_root
  File.expand_path("../../../templates", File.dirname(__FILE__))
end

Public Instance Methods

configure_app() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 46
def configure_app
  say "Configuring application..."
  build :setup_autoload_paths
end
customizations() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 27
def customizations
  say "Invoking customizations..."
  invoke :setup_ruby
  invoke :configure_app
  invoke :setup_webserver
  invoke :setup_routes
  invoke :setup_api
  invoke :setup_secrets
  invoke :setup_environments
  invoke :setup_gems
  invoke :outro
end
outro() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 150
def outro
  say "\e[34mSweet, we're done!\e[0m"
end
setup_api() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 61
def setup_api
  unless options[:skip_api]
    say "Setting up an API..."
    build :setup_oj
    build :create_api_constraints
    build :create_api_v1_defaults
    build :create_api_configurations
    build :create_api_layouts
  end
end
setup_carrierwave() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 138
def setup_carrierwave
  unless options[:setup_carrierwave]
    say "Setting up Carrierwave gem..."
    build :configure_carrierwave
  end
end
setup_development_environment() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 84
def setup_development_environment
  build :raise_on_delivery_errors
end
setup_environments() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 77
def setup_environments
  say "Setting up environments..."
  invoke :setup_development_environment
  invoke :setup_staging_environment
  invoke :setup_production_environment
end
setup_factory_girl() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 103
def setup_factory_girl
  unless options[:skip_factory_girl]
    say "Setting up FactoryGirl gem..."
    build :configure_factory_girl
  end
end
setup_gems() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 95
def setup_gems
  invoke :setup_minitest
  invoke :setup_factory_girl
  invoke :setup_resque
  invoke :setup_sidekiq
  invoke :setup_carrierwave
end
setup_minitest() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 110
def setup_minitest
  unless options[:skip_minitest]
    say "Setting up Minitest gem..."
    build :configure_minitest
  end
end
setup_production_environment() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 92
def setup_production_environment
end
setup_puma() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 145
def setup_puma
  say "Setting up Puma..."
  build :configure_puma
end
setup_resque() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 117
def setup_resque
  unless options[:skip_resque]
    say "Setting up Resque/Redis gems..."
    build :configure_active_job_for_resque
    build :configure_redis
    build :configure_resque
    build :create_test_job
    build :create_resque_rake_task
  end
end
setup_routes() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 56
def setup_routes
  say "Setting up custom routes..."
  build :customize_routes
end
setup_ruby() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 40
def setup_ruby
  say "Setting ruby version..."
  build :set_ruby_version
  build :set_gemset
end
setup_secrets() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 72
def setup_secrets
  say "Setting up secrets..."
  build :customize_secrets
end
setup_sidekiq() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 128
def setup_sidekiq
  unless options[:skip_sidekiq]
    say "Setting up Sidekiq/Redis gems..."
    build :configure_active_job_for_sidekiq
    build :configure_redis
    build :configure_sidekiq
    build :create_test_job
  end
end
setup_staging_environment() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 88
def setup_staging_environment
  build :create_staging_environment
end
setup_webserver() click to toggle source
# File lib/barebones/generators/app_generator.rb, line 51
def setup_webserver
  say "Setting up webserver..."
  invoke :setup_puma
end

Protected Instance Methods

get_builder_class() click to toggle source

Look for custom builder class

# File lib/barebones/generators/app_generator.rb, line 168
def get_builder_class
  Barebones::AppBuilder
end
str_to_class(klass_str) click to toggle source

Custom

# File lib/barebones/generators/app_generator.rb, line 173
def str_to_class(klass_str)
  klass_str.gsub(/\s/,"_").camelize(:upper)
end