diff --git a/.travis.yml b/.travis.yml index 6382309..b44dd70 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,34 +1,17 @@ --- language: ruby -rvm: - - 1.8.7 - - 1.9.3 - - 2.0.0 - - 2.1.0 +bundler_args: --without system_tests development -env: - matrix: - - PUPPET_GEM_VERSION="~> 3.1.0" - - PUPPET_GEM_VERSION="~> 3.2.0" - - PUPPET_GEM_VERSION="~> 3.3.0" - - PUPPET_GEM_VERSION="~> 3.4.0" - - PUPPET_GEM_VERSION="~> 3.5.0" - - PUPPET_GEM_VERSION="~> 3.6.0" - - PUPPET_GEM_VERSION="~> 3.7.0" - - PUPPET_GEM_VERSION="~> 3.8.0" - - PUPPET_GEM_VERSION="~> 3" FUTURE_PARSER="yes" - - PUPPET_GEM_VERSION="~> 4.0.0" - - PUPPET_GEM_VERSION="~> 4.1.0" - - PUPPET_GEM_VERSION="~> 4.2.0" - - PUPPET_GEM_VERSION="~> 4.3.0" - - PUPPET_GEM_VERSION="~> 4.4.0" - - PUPPET_GEM_VERSION="~> 4.5.0" - - PUPPET_GEM_VERSION="~> 4.6.0" - - PUPPET_GEM_VERSION="~> 4.7.0" - - PUPPET_GEM_VERSION="~> 4.8.0" - - PUPPET_GEM_VERSION="~> 4.9.0" - - PUPPET_GEM_VERSION="~> 4" +cache: bundler + +before_install: + - bundle -v + - rm Gemfile.lock || true + - gem update --system + - gem update bundler + - gem --version + - bundle -v sudo: false @@ -36,47 +19,35 @@ script: 'SPEC_OPTS="--format documentation" bundle exec rake validate lint spec' matrix: fast_finish: true - exclude: - - rvm: 2.0.0 - env: PUPPET_GEM_VERSION="~> 3.1.0" - - rvm: 2.1.0 - env: PUPPET_GEM_VERSION="~> 3.1.0" - - rvm: 2.1.0 - env: PUPPET_GEM_VERSION="~> 3.2.0" - - rvm: 2.1.0 - env: PUPPET_GEM_VERSION="~> 3.3.0" - - rvm: 2.1.0 - env: PUPPET_GEM_VERSION="~> 3.4.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4.0.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4.1.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4.2.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4.3.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4.4.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4.5.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4.6.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4.7.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4.8.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4.9.0" - - rvm: 1.9.3 - env: PUPPET_GEM_VERSION="~> 4.9.0" - - rvm: 2.0.0 - env: PUPPET_GEM_VERSION="~> 4.9.0" - - rvm: 1.8.7 - env: PUPPET_GEM_VERSION="~> 4" - - rvm: 1.9.3 - env: PUPPET_GEM_VERSION="~> 4" - - rvm: 2.0.0 - env: PUPPET_GEM_VERSION="~> 4" + include: + - rvm: 1.8.7 + env: PUPPET_GEM_VERSION="~> 3" + - rvm: 1.8.7 + env: PUPPET_GEM_VERSION="~> 3" FUTURE_PARSER="yes" + - rvm: 1.9.3 + env: PUPPET_GEM_VERSION="~> 3" + - rvm: 1.9.3 + env: PUPPET_GEM_VERSION="~> 3" FUTURE_PARSER="yes" + - rvm: 2.0.0 + env: PUPPET_GEM_VERSION="~> 3" + - rvm: 2.0.0 + env: PUPPET_GEM_VERSION="~> 3" FUTURE_PARSER="yes" + - rvm: 2.1.9 + env: PUPPET_GEM_VERSION="~> 3" + - rvm: 2.1.9 + env: PUPPET_GEM_VERSION="~> 3" FUTURE_PARSER="yes" + - rvm: 2.1.9 + env: PUPPET_GEM_VERSION="~> 4.6.0" + - rvm: 2.1.9 + env: PUPPET_GEM_VERSION="~> 4.7.0" + - rvm: 2.1.9 + env: PUPPET_GEM_VERSION="~> 4.8.0" + - rvm: 2.1.9 + env: PUPPET_GEM_VERSION="~> 4.9.0" + - rvm: 2.1.9 + env: PUPPET_GEM_VERSION="~> 4.10.0" + - rvm: 2.1.9 + env: PUPPET_GEM_VERSION="~> 4" notifications: email: false diff --git a/Gemfile b/Gemfile index 65ffa5d..ca6cc29 100644 --- a/Gemfile +++ b/Gemfile @@ -6,27 +6,28 @@ else gem 'puppet', :require => false end -gem 'facter', '>= 1.7.0' -gem 'rspec-puppet', '~> 2.0' -gem 'puppet-lint', '~> 2.0' -gem 'puppet-lint-absolute_classname-check' -gem 'puppet-lint-alias-check' -gem 'puppet-lint-empty_string-check' -gem 'puppet-lint-file_ensure-check' -gem 'puppet-lint-file_source_rights-check' -gem 'puppet-lint-leading_zero-check' -gem 'puppet-lint-spaceship_operator_without_tag-check' -gem 'puppet-lint-trailing_comma-check' -gem 'puppet-lint-undef_in_function-check' -gem 'puppet-lint-unquoted_string-check' -gem 'puppet-lint-variable_contains_upcase' +gem 'facter', '>= 1.7.0', :require => false +gem 'rspec-puppet', '>= 2.4.0', :require => false +gem 'puppet-lint', '~> 2.0', :require => false +gem 'puppet-lint-absolute_classname-check', :require => false +gem 'puppet-lint-alias-check', :require => false +gem 'puppet-lint-empty_string-check', :require => false +gem 'puppet-lint-file_ensure-check', :require => false +gem 'puppet-lint-file_source_rights-check', :require => false +gem 'puppet-lint-leading_zero-check', :require => false +gem 'puppet-lint-spaceship_operator_without_tag-check', :require => false +gem 'puppet-lint-trailing_comma-check', :require => false +gem 'puppet-lint-undef_in_function-check', :require => false +gem 'puppet-lint-unquoted_string-check', :require => false +gem 'puppet-lint-variable_contains_upcase', :require => false -gem 'rspec', '~> 2.0' if RUBY_VERSION >= '1.8.7' && RUBY_VERSION < '1.9' -gem 'rake', '~> 10.0' if RUBY_VERSION >= '1.8.7' && RUBY_VERSION < '1.9' -gem 'json', '<= 1.8' if RUBY_VERSION < '2.0.0' -gem 'json_pure', '<= 2.0.1' if RUBY_VERSION < '2.0.0' -gem 'metadata-json-lint', '0.0.11' if RUBY_VERSION < '1.9' -gem 'metadata-json-lint' if RUBY_VERSION >= '1.9' +gem 'rspec', '~> 2.0', :require => false if RUBY_VERSION >= '1.8.7' && RUBY_VERSION < '1.9' +gem 'rake', '~> 10.0', :require => false if RUBY_VERSION >= '1.8.7' && RUBY_VERSION < '1.9' +gem 'json', '<= 1.8', :require => false if RUBY_VERSION < '2.0.0' +gem 'json_pure', '<= 2.0.1', :require => false if RUBY_VERSION < '2.0.0' +gem 'metadata-json-lint', '0.0.11' if RUBY_VERSION >= '1.8.7' && RUBY_VERSION < '1.9' +gem 'metadata-json-lint', '1.0.0' if RUBY_VERSION >= '1.9' && RUBY_VERSION < '2.0' +gem 'metadata-json-lint' if RUBY_VERSION >= '2.0' gem 'puppetlabs_spec_helper', '2.0.2', :require => false if RUBY_VERSION >= '1.8.7' && RUBY_VERSION < '1.9' gem 'puppetlabs_spec_helper', '>= 2.0.0', :require => false if RUBY_VERSION >= '1.9' diff --git a/README.md b/README.md index 351a575..1acc511 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ This module may be used with a simple `include ::ssh` This module has been tested to work on the following systems with Puppet versions v3, v3 with future parser, and v4 with Ruby versions 1.8.7 (Puppet v3 -only), 1.9.3, 2.0.0 and 2.1.0. See .travis.yml for the exact matrix. +only), 1.9.3, 2.0.0 and 2.1.9. See .travis.yml for the exact matrix. * Debian 7 * EL 5 diff --git a/Rakefile b/Rakefile index f2f0456..93b6400 100644 --- a/Rakefile +++ b/Rakefile @@ -3,17 +3,11 @@ require 'puppet-lint/tasks/puppet-lint' PuppetLint.configuration.send('disable_80chars') PuppetLint.configuration.send('disable_140chars') PuppetLint.configuration.relative = true -PuppetLint.configuration.ignore_paths = ["spec/**/*.pp", "pkg/**/*.pp"] +PuppetLint.configuration.ignore_paths = ['spec/**/*.pp', 'pkg/**/*.pp', 'vendor/**/*.pp'] -desc 'Validate manifests, templates, and ruby files' +desc 'Validate manifests, templates, ruby files and shell scripts' task :validate do - Dir['manifests/**/*.pp'].each do |manifest| - sh "puppet parser validate --noop #{manifest}" - end - Dir['spec/**/*.rb','lib/**/*.rb'].each do |ruby_file| + Dir['spec/**/*.rb', 'lib/**/*.rb'].each do |ruby_file| sh "ruby -c #{ruby_file}" unless ruby_file =~ /spec\/fixtures/ end - Dir['templates/**/*.erb'].each do |template| - sh "erb -P -x -T '-' #{template} | ruby -c" - end end