Class: Aptible::Tasks::Rubocop

Inherits:
Object
  • Object
show all
Defined in:
lib/aptible/tasks/rubocop.rb

Instance Method Summary collapse

Instance Method Details

#configObject



23
24
25
# File 'lib/aptible/tasks/rubocop.rb', line 23

def config
  ::RuboCop::ConfigLoader.load_file(config_file)
end

#config_fileObject



6
7
8
9
# File 'lib/aptible/tasks/rubocop.rb', line 6

def config_file
  project_config_file ||
    File.join(File.dirname(__FILE__), '..', '..', '..', '.rubocop.yml')
end

#project_config_file(dir = Dir.pwd) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
# File 'lib/aptible/tasks/rubocop.rb', line 11

def project_config_file(dir = Dir.pwd)
  previous = File.expand_path('..', dir)
  local_rubocop_yml = File.join(dir, '.rubocop.yml')
  if File.exist?(local_rubocop_yml)
    local_rubocop_yml
  elsif previous == dir
    nil
  else
    project_config_file(previous)
  end
end

#runObject



27
28
29
30
31
# File 'lib/aptible/tasks/rubocop.rb', line 27

def run
  cli = ::RuboCop::CLI.new
  result = cli.run(%W(-c #{config_file}))
  abort unless result.zero?
end