diff --git a/.rubocop.yml b/.rubocop.yml index e800711..5905bdb 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,11 +1,8 @@ +--- AllCops: Exclude: - - vendor/** - - metadata.rb - - '**/Puppetfile' - - Puppetfile - - + - vendor/**/* + - "*/puppet/Puppetfile" Documentation: Enabled: false AlignParameters: @@ -17,6 +14,10 @@ HashSyntax: LineLength: Enabled: false MethodLength: - Max: 30 + Max: 40 NumericLiterals: MinDigits: 10 +Metrics/CyclomaticComplexity: + Max: 10 +Metrics/PerceivedComplexity: + Max: 10 diff --git a/Gemfile b/Gemfile index 5e53cd2..76cf704 100644 --- a/Gemfile +++ b/Gemfile @@ -3,5 +3,6 @@ source 'https://rubygems.org' gem 'rake' -gem 'serverspec' +gem 'serverspec', '~> 2.3.0' gem 'rubocop', '~> 0.23' +gem 'highline', '~> 1.6.0' diff --git a/default/serverspec/spec_helper.rb b/default/serverspec/spec_helper.rb index 1e1d3f0..78e701b 100644 --- a/default/serverspec/spec_helper.rb +++ b/default/serverspec/spec_helper.rb @@ -22,9 +22,7 @@ require 'net/ssh' require 'highline/import' - include Serverspec::Helper::Ssh - include Serverspec::Helper::Exec - include Serverspec::Helper::DetectOS + set :backend, :ssh RSpec.configure do |c| @@ -43,41 +41,23 @@ end if ENV['ASK_LOGIN_USERNAME'] - user = ask("\nEnter login username: ") { |q| q.echo = false } + options[:user] = ask("\nEnter login username: ") { |q| q.echo = false } else - user = ENV['LOGIN_USERNAME'] || ENV['user'] || Etc.getlogin + options[:user] = ENV['LOGIN_USERNAME'] || ENV['user'] || Etc.getlogin end - if user.nil? + if options[:user].nil? puts 'specify login user env LOGIN_USERNAME= or user=' exit 1 end - # @see https://github.com/serverspec/serverspec/issues/267 - ENV['LANG'] = 'C' - options[:send_env] = options[:send_env] | [/^LANG$/] - - c.host = ENV['TARGET_HOST'] - options.merge(Net::SSH::Config.for(c.host)) - c.ssh = Net::SSH.start(c.host, user, options) - c.os = backend.check_os + c.host = ENV['TARGET_HOST'] + c.ssh_options = options.merge(Net::SSH::Config.for(c.host)) end else require 'serverspec' - require 'pathname' - - include Serverspec::Helper::Exec - include Serverspec::Helper::DetectOS - - RSpec.configure do |c| - - # @see https://github.com/serverspec/serverspec/issues/267 - ENV['LANG'] = 'C' - c.before :all do - c.os = backend(Serverspec::Commands::Base).check_os - end - end + set :backend, :exec end