class Sunrise::Generators::InstallGenerator

Public Instance Methods

add_routes() click to toggle source

Add devise routes

# File lib/generators/sunrise/install_generator.rb, line 42
def add_routes
  route 'root :to => "welcome#index"'
  route 'resources :pages, :only => [:show]'
  route 'devise_for :users'
  route "mount Sunrise::Engine => '/manage'"
end
autoload_paths() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 49
def autoload_paths
  log :autoload_paths, 'models/defaults'
  sentinel = %r{\.autoload_paths\s+\+=\s+\%W\(\#\{config\.root\}/extras\)\s*$}

  code = 'config.autoload_paths += %W(#{config.root}/app/models/defaults #{config.root}/app/sunrise)'

  in_root do
    inject_into_file 'config/application.rb', "    #{code}\n", after: sentinel, verbose: false
  end
end
copy_configurations() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 25
def copy_configurations
  copy_file('config/seeds.rb', 'db/seeds.rb')
  copy_file("config/#{orm}/sunrise.rb", 'config/initializers/sunrise.rb')

  template('config/database.yml', 'config/database.yml.sample')
  template('config/logrotate-config', 'config/logrotate-config.sample')
  template('config/nginx-unicorn', 'config/nginx-unicorn.sample')
  template('config/nginx-passenger', 'config/nginx-passenger.sample')
end
copy_gitignore() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 65
def copy_gitignore
  copy_file('gitignore', '.gitignore')
end
copy_models() click to toggle source

copy models

# File lib/generators/sunrise/install_generator.rb, line 36
def copy_models
  directory "models/#{orm}", 'app/models/defaults'
  directory 'models/sunrise', 'app/sunrise'
end
copy_specs() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 60
def copy_specs
  directory 'spec', 'spec'
  copy_file('rspec', '.rspec')
end
copy_sunrise_assets() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 69
def copy_sunrise_assets
  copy_file('assets/plugins.js', 'app/assets/javascripts/sunrise/plugins.js')
  copy_file('assets/plugins.css', 'app/assets/stylesheets/sunrise/plugins.css')
end
copy_uploaders() click to toggle source

copy uploaders

# File lib/generators/sunrise/install_generator.rb, line 21
def copy_uploaders
  directory 'uploaders', 'app/uploaders'
end
copy_views() click to toggle source

copy views

# File lib/generators/sunrise/install_generator.rb, line 16
def copy_views
  directory 'views', 'app/views'
end

Protected Instance Methods

app_const() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 95
def app_const
  @app_const ||= "#{app_const_base}::Application"
end
app_const_base() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 91
def app_const_base
  @app_const_base ||= defined_app_const_base || app_name.gsub(/\W/, '_').squeeze('_').camelize
end
app_name() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 76
def app_name
  @app_name ||= defined_app_const_base? ? defined_app_name : File.basename(destination_root)
end
app_path() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 99
def app_path
  @app_path ||= Rails.root.to_s
end
defined_app_const_base() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 84
def defined_app_const_base
  Rails.respond_to?(:application) && defined?(Rails::Application) &&
    Rails.application.is_a?(Rails::Application) && Rails.application.class.name.sub(/::Application$/, '')
end
Also aliased as: defined_app_const_base?
defined_app_const_base?()
defined_app_name() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 80
def defined_app_name
  defined_app_const_base.underscore
end
orm() click to toggle source
# File lib/generators/sunrise/install_generator.rb, line 103
def orm
  options[:orm] || 'active_record'
end