class Releaf::Generators::InstallGenerator

Public Class Methods

next_migration_number(path) click to toggle source
# File lib/generators/releaf/install_generator.rb, line 10
def self.next_migration_number(path)
  unless @prev_migration_nr
    @prev_migration_nr =  ActiveRecord::Generators::Base.next_migration_number(path).to_i
  else
    @prev_migration_nr += 1
  end

  @prev_migration_nr.to_s
end

Public Instance Methods

install_builders() click to toggle source
# File lib/generators/releaf/install_generator.rb, line 57
def install_builders
  copy_files 'builders', 'app/builders'
end
install_configs() click to toggle source
# File lib/generators/releaf/install_generator.rb, line 49
def install_configs
  copy_files 'config', 'config'
end
install_controllers() click to toggle source
# File lib/generators/releaf/install_generator.rb, line 61
def install_controllers
  copy_files 'controllers', 'app/controllers'
end
install_devise() click to toggle source
# File lib/generators/releaf/install_generator.rb, line 22
def install_devise
  # prevent dummy app from installing devise one more time
  if self.class == Releaf::Generators::InstallGenerator
    generate "devise:install"
    generate "dragonfly"
  end
end
install_initializer() click to toggle source
# File lib/generators/releaf/install_generator.rb, line 30
def install_initializer
  copy_files 'initializers', 'config/initializers'
end
install_migrations() click to toggle source
# File lib/generators/releaf/install_generator.rb, line 34
def install_migrations
  get_file_list('migrations').each do |migration|
    migration_template "migrations/#{migration}", "db/migrate/#{migration}"
  end
end
install_models() click to toggle source
# File lib/generators/releaf/install_generator.rb, line 45
def install_models
  copy_files 'models', 'app/models'
end
install_seeds() click to toggle source
# File lib/generators/releaf/install_generator.rb, line 40
def install_seeds
  seed_path = File.expand_path('../templates', __FILE__) + "/seeds/seeds.rb"
  append_to_file 'db/seeds.rb', File.read(seed_path)
end
install_views() click to toggle source
# File lib/generators/releaf/install_generator.rb, line 53
def install_views
  copy_files 'views', 'app/views'
end

Private Instance Methods

copy_files(subdir, dest_dir) click to toggle source
# File lib/generators/releaf/install_generator.rb, line 67
def copy_files subdir, dest_dir
  raise ArgumEnterror unless subdir.is_a? String
  raise ArgumEnterror unless dest_dir.is_a? String
  raise ArgumetnError if subdir.blank?
  raise ArgumetnError if dest_dir.blank?

  get_file_list(subdir).each do |image|
    copy_file [subdir, image].join('/'), [dest_dir, image].join('/')
  end
end
get_current_dir() click to toggle source
# File lib/generators/releaf/install_generator.rb, line 88
def get_current_dir
  File.dirname(__FILE__)
end
get_file_list(subdir) click to toggle source
# File lib/generators/releaf/install_generator.rb, line 78
def get_file_list subdir
  raise ArgumentError unless subdir.is_a? String
  raise ArgumetnError if subdir.blank?
  dir = get_current_dir
  search_path = [dir, 'templates', subdir].join('/') + '/'
  file_list = Dir.glob(search_path + '**/*').map { |filename| File.directory?(filename) ? nil : filename.sub(search_path, '') }
  file_list.delete nil
  return file_list
end