Class: ReactOnRails::Generators::RubyLintersGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
GeneratorHelper
Defined in:
lib/generators/react_on_rails/ruby_linters_generator.rb

Instance Method Summary collapse

Methods included from GeneratorHelper

#copy_file_and_missing_parent_directories, #dest_dir_exists?, #dest_file_exists?, #empty_directory_with_keep_file, #keep_file, #setup_file_error, #symlink_dest_file_to_dest_file

Instance Method Details

#add_ruby_linter_gems_to_gemfileObject



11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/generators/react_on_rails/ruby_linters_generator.rb', line 11

def add_ruby_linter_gems_to_gemfile
  linter_gems = <<-GEMS.strip_heredoc

    # require: false is necessary for the linters as we only want them loaded
    # when used by the linting rake tasks.
    group :development do
      gem("rubocop", require: false)
      gem("ruby-lint", require: false)
      gem("scss_lint", require: false)
    end
  GEMS
  append_to_file("Gemfile", linter_gems)
end

#copy_ruby_linting_and_auditing_tasksObject



25
26
27
28
29
30
31
32
# File 'lib/generators/react_on_rails/ruby_linters_generator.rb', line 25

def copy_ruby_linting_and_auditing_tasks
  base_path = "ruby_linters/"
  %w(lib/tasks/brakeman.rake
     lib/tasks/ci.rake
     .rubocop.yml
     .scss-lint.yml).each { |file| copy_file(base_path + file, file) }
  template("ruby_linters/ruby-lint.yml.tt", "ruby-lint.yml")
end