Support only latest Puppet v3 and later versions of Puppet v4

This commit is contained in:
Garrett Honeycutt 2017-07-24 13:48:31 -04:00
parent 140baa1942
commit a552656834
4 changed files with 64 additions and 98 deletions

View File

@ -1,34 +1,17 @@
--- ---
language: ruby language: ruby
rvm: bundler_args: --without system_tests development
- 1.8.7
- 1.9.3
- 2.0.0
- 2.1.0
env: cache: bundler
matrix:
- PUPPET_GEM_VERSION="~> 3.1.0" before_install:
- PUPPET_GEM_VERSION="~> 3.2.0" - bundle -v
- PUPPET_GEM_VERSION="~> 3.3.0" - rm Gemfile.lock || true
- PUPPET_GEM_VERSION="~> 3.4.0" - gem update --system
- PUPPET_GEM_VERSION="~> 3.5.0" - gem update bundler
- PUPPET_GEM_VERSION="~> 3.6.0" - gem --version
- PUPPET_GEM_VERSION="~> 3.7.0" - bundle -v
- 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"
sudo: false sudo: false
@ -36,47 +19,35 @@ script: 'SPEC_OPTS="--format documentation" bundle exec rake validate lint spec'
matrix: matrix:
fast_finish: true fast_finish: true
exclude: include:
- rvm: 2.0.0 - rvm: 1.8.7
env: PUPPET_GEM_VERSION="~> 3.1.0" env: PUPPET_GEM_VERSION="~> 3"
- rvm: 2.1.0 - rvm: 1.8.7
env: PUPPET_GEM_VERSION="~> 3.1.0" env: PUPPET_GEM_VERSION="~> 3" FUTURE_PARSER="yes"
- rvm: 2.1.0 - rvm: 1.9.3
env: PUPPET_GEM_VERSION="~> 3.2.0" env: PUPPET_GEM_VERSION="~> 3"
- rvm: 2.1.0 - rvm: 1.9.3
env: PUPPET_GEM_VERSION="~> 3.3.0" env: PUPPET_GEM_VERSION="~> 3" FUTURE_PARSER="yes"
- rvm: 2.1.0 - rvm: 2.0.0
env: PUPPET_GEM_VERSION="~> 3.4.0" env: PUPPET_GEM_VERSION="~> 3"
- rvm: 1.8.7 - rvm: 2.0.0
env: PUPPET_GEM_VERSION="~> 4.0.0" env: PUPPET_GEM_VERSION="~> 3" FUTURE_PARSER="yes"
- rvm: 1.8.7 - rvm: 2.1.9
env: PUPPET_GEM_VERSION="~> 4.1.0" env: PUPPET_GEM_VERSION="~> 3"
- rvm: 1.8.7 - rvm: 2.1.9
env: PUPPET_GEM_VERSION="~> 4.2.0" env: PUPPET_GEM_VERSION="~> 3" FUTURE_PARSER="yes"
- rvm: 1.8.7 - rvm: 2.1.9
env: PUPPET_GEM_VERSION="~> 4.3.0" env: PUPPET_GEM_VERSION="~> 4.6.0"
- rvm: 1.8.7 - rvm: 2.1.9
env: PUPPET_GEM_VERSION="~> 4.4.0" env: PUPPET_GEM_VERSION="~> 4.7.0"
- rvm: 1.8.7 - rvm: 2.1.9
env: PUPPET_GEM_VERSION="~> 4.5.0" env: PUPPET_GEM_VERSION="~> 4.8.0"
- rvm: 1.8.7 - rvm: 2.1.9
env: PUPPET_GEM_VERSION="~> 4.6.0" env: PUPPET_GEM_VERSION="~> 4.9.0"
- rvm: 1.8.7 - rvm: 2.1.9
env: PUPPET_GEM_VERSION="~> 4.7.0" env: PUPPET_GEM_VERSION="~> 4.10.0"
- rvm: 1.8.7 - rvm: 2.1.9
env: PUPPET_GEM_VERSION="~> 4.8.0" env: PUPPET_GEM_VERSION="~> 4"
- 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"
notifications: notifications:
email: false email: false

41
Gemfile
View File

@ -6,27 +6,28 @@ else
gem 'puppet', :require => false gem 'puppet', :require => false
end end
gem 'facter', '>= 1.7.0' gem 'facter', '>= 1.7.0', :require => false
gem 'rspec-puppet', '~> 2.0' gem 'rspec-puppet', '>= 2.4.0', :require => false
gem 'puppet-lint', '~> 2.0' gem 'puppet-lint', '~> 2.0', :require => false
gem 'puppet-lint-absolute_classname-check' gem 'puppet-lint-absolute_classname-check', :require => false
gem 'puppet-lint-alias-check' gem 'puppet-lint-alias-check', :require => false
gem 'puppet-lint-empty_string-check' gem 'puppet-lint-empty_string-check', :require => false
gem 'puppet-lint-file_ensure-check' gem 'puppet-lint-file_ensure-check', :require => false
gem 'puppet-lint-file_source_rights-check' gem 'puppet-lint-file_source_rights-check', :require => false
gem 'puppet-lint-leading_zero-check' gem 'puppet-lint-leading_zero-check', :require => false
gem 'puppet-lint-spaceship_operator_without_tag-check' gem 'puppet-lint-spaceship_operator_without_tag-check', :require => false
gem 'puppet-lint-trailing_comma-check' gem 'puppet-lint-trailing_comma-check', :require => false
gem 'puppet-lint-undef_in_function-check' gem 'puppet-lint-undef_in_function-check', :require => false
gem 'puppet-lint-unquoted_string-check' gem 'puppet-lint-unquoted_string-check', :require => false
gem 'puppet-lint-variable_contains_upcase' gem 'puppet-lint-variable_contains_upcase', :require => false
gem 'rspec', '~> 2.0' if RUBY_VERSION >= '1.8.7' && RUBY_VERSION < '1.9' gem 'rspec', '~> 2.0', :require => false 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 'rake', '~> 10.0', :require => false if RUBY_VERSION >= '1.8.7' && RUBY_VERSION < '1.9'
gem 'json', '<= 1.8' if RUBY_VERSION < '2.0.0' gem 'json', '<= 1.8', :require => false if RUBY_VERSION < '2.0.0'
gem 'json_pure', '<= 2.0.1' 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.9' gem 'metadata-json-lint', '0.0.11' if RUBY_VERSION >= '1.8.7' && RUBY_VERSION < '1.9'
gem 'metadata-json-lint' if 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.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' gem 'puppetlabs_spec_helper', '>= 2.0.0', :require => false if RUBY_VERSION >= '1.9'

View File

@ -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 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 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 * Debian 7
* EL 5 * EL 5

View File

@ -3,17 +3,11 @@ require 'puppet-lint/tasks/puppet-lint'
PuppetLint.configuration.send('disable_80chars') PuppetLint.configuration.send('disable_80chars')
PuppetLint.configuration.send('disable_140chars') PuppetLint.configuration.send('disable_140chars')
PuppetLint.configuration.relative = true 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 task :validate do
Dir['manifests/**/*.pp'].each do |manifest| Dir['spec/**/*.rb', 'lib/**/*.rb'].each do |ruby_file|
sh "puppet parser validate --noop #{manifest}"
end
Dir['spec/**/*.rb','lib/**/*.rb'].each do |ruby_file|
sh "ruby -c #{ruby_file}" unless ruby_file =~ /spec\/fixtures/ sh "ruby -c #{ruby_file}" unless ruby_file =~ /spec\/fixtures/
end end
Dir['templates/**/*.erb'].each do |template|
sh "erb -P -x -T '-' #{template} | ruby -c"
end
end end