Class: Bankai::Builder

Inherits:
Rails::AppBuilder
  • Object
show all
Defined in:
lib/bankai/builder.rb

Overview

:nodoc:

Instance Method Summary collapse

Instance Method Details

#clear_seed_fileObject

rubocop:enable Metrics/MethodLength



73
74
75
# File 'lib/bankai/builder.rb', line 73

def clear_seed_file
  File.write("#{destination_root}/db/seeds.rb", '')
end

#configure_generatorsObject

rubocop:disable Metrics/MethodLength



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/bankai/builder.rb', line 43

def configure_generators
  application do
    <<-RUBY
config.generators do |generate|
  generate.helper false
  generate.javascripts false
  generate.request_specs false
  generate.routing_specs false
  generate.stylesheets false
  generate.test_framework :rspec
  generate.view_specs false
end
    RUBY
  end
end

#configure_puma_devObject



28
29
30
31
32
# File 'lib/bankai/builder.rb', line 28

def configure_puma_dev
  application(nil, env: 'development') do
    "config.hosts << '.test'"
  end
end

#configure_quiet_assetsObject



34
35
36
37
38
39
40
# File 'lib/bankai/builder.rb', line 34

def configure_quiet_assets
  return if options[:api]

  application do
    'config.assets.quiet = true'
  end
end

#copy_dotfilesObject



84
85
86
# File 'lib/bankai/builder.rb', line 84

def copy_dotfiles
  directory('dotfiles', '.')
end

#gemfileObject



14
15
16
# File 'lib/bankai/builder.rb', line 14

def gemfile
  template 'Gemfile.erb', 'Gemfile'
end

#gitignoreObject



10
11
12
# File 'lib/bankai/builder.rb', line 10

def gitignore
  template 'gitignore.erb', '.gitignore'
end

#readmeObject



6
7
8
# File 'lib/bankai/builder.rb', line 6

def readme
  template 'README.md.erb', 'README.md'
end

#replace_gemfile(path) ⇒ Object



18
19
20
21
22
23
24
25
26
# File 'lib/bankai/builder.rb', line 18

def replace_gemfile(path)
  template 'Gemfile.erb', 'Gemfile', force: true do |content|
    if path
      content.gsub(/gem .bankai./) { |s| %(#{s}, path: "#{path}") }
    else
      content
    end
  end
end

#setup_default_directoriesObject



59
60
61
62
63
64
65
66
67
68
69
70
# File 'lib/bankai/builder.rb', line 59

def setup_default_directories
  [
    'spec/lib',
    'spec/controllers',
    'spec/helpers',
    'spec/support/matchers',
    'spec/support/mixins',
    'spec/support/shared_examples'
  ].each do |dir|
    empty_directory_with_keep_file dir
  end
end

#setup_rack_mini_profilerObject



77
78
79
80
81
82
# File 'lib/bankai/builder.rb', line 77

def setup_rack_mini_profiler
  copy_file(
    'rack_mini_profiler.rb',
    'config/initializers/rack_mini_profiler.rb'
  )
end