Module: Satorix::CI::Test::Ruby::Rubocop
Instance Method Summary
collapse
#colorize, #colors, #humanize_time, #log, #log_bench, #log_command, #log_duration, #log_error, #log_error_and_abort, #log_header, #run_command, #source_env_from
Instance Method Details
#create_rubocop_config ⇒ Object
29
30
31
32
33
34
35
36
37
38
|
# File 'lib/satorix/CI/test/ruby/rubocop.rb', line 29
def create_rubocop_config
if config_exist?
log 'Using existing .rubocop.yml file from project.'
else
log 'A .rubocop.yml file was not found, generating a default configuration file for this project.'
content = Satorix.rails_app? ? config_content_rails : config_content_default
save_rubocop_config content
end
log 'For more information, please refer to https://www.satorix.com/docs/articles/app_using_ruby_on_rails#rubocop.'
end
|
#go ⇒ Object
14
15
16
17
18
19
|
# File 'lib/satorix/CI/test/ruby/rubocop.rb', line 14
def go
log_bench('Displaying current Ruby version...') { run_command 'ruby -v' }
log_bench('Installing Rubocop...') { install_gems }
log_bench('Configuring Rubocop...') { create_rubocop_config }
log_bench('Running Rubocop inspection...') { run_scan }
end
|
#install_gems ⇒ Object
22
23
24
25
26
|
# File 'lib/satorix/CI/test/ruby/rubocop.rb', line 22
def install_gems
run_command "gem install rubocop --no-document --bindir #{ Satorix.bin_dir }"
run_command "gem install rubocop-performance --no-document --bindir #{ Satorix.bin_dir }"
run_command "gem install rubocop-rails_config --no-document --bindir #{ Satorix.bin_dir }" if Satorix.rails_app?
end
|
#run_scan ⇒ Object
41
42
43
|
# File 'lib/satorix/CI/test/ruby/rubocop.rb', line 41
def run_scan
run_command "rubocop --require rubocop-performance #{ '--require rubocop-rails ' if Satorix.rails_app? }--display-cop-names --extra-details --display-style-guide --parallel"
end
|