aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGarrett Honeycutt <code@garretthoneycutt.com>2020-02-11 16:24:51 -0500
committerGitHub <noreply@github.com>2020-02-11 16:24:51 -0500
commit05997e0d9e30ba0e53dead0ace65121801c03d7f (patch)
tree4cdeb3f5c8e3d12e0ebb7cc2907b2e78940f85eb
parent76833ebc2f9313afb3f36d37b351933c06b112f2 (diff)
parentbe298bed6169c9f59148042af47e12faffe48881 (diff)
downloadpuppet-ferm-05997e0d9e30ba0e53dead0ace65121801c03d7f.tar.gz
puppet-ferm-05997e0d9e30ba0e53dead0ace65121801c03d7f.tar.bz2
Merge pull request #94 from voxpupuli/modulesync
modulesync 3.0.0
-rw-r--r--.github/CONTRIBUTING.md6
-rw-r--r--.msync.yml2
-rw-r--r--.rubocop.yml3
-rw-r--r--Gemfile25
-rw-r--r--Rakefile33
-rw-r--r--spec/spec_helper.rb51
6 files changed, 16 insertions, 104 deletions
diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
index f3ffb57..2240a97 100644
--- a/.github/CONTRIBUTING.md
+++ b/.github/CONTRIBUTING.md
@@ -256,18 +256,20 @@ Beaker also supports docker containers. We also use that in our automated CI
pipeline at [travis-ci](http://travis-ci.org). To use that instead of Vagrant:
```sh
-PUPPET_INSTALL_TYPE=agent BEAKER_IS_PE=no BEAKER_PUPPET_COLLECTION=puppet5 BEAKER_debug=true BEAKER_setfile=debian9-64{hypervisor=docker} BEAKER_destroy=yes bundle exec rake beaker
+PUPPET_INSTALL_TYPE=agent BEAKER_IS_PE=no BEAKER_PUPPET_COLLECTION=puppet6 BEAKER_debug=true BEAKER_setfile=debian10-64{hypervisor=docker} BEAKER_destroy=yes bundle exec rake beaker
```
-You can replace the string `debian9` with any common operating system.
+You can replace the string `debian10` with any common operating system.
The following strings are known to work:
* ubuntu1604
* ubuntu1804
* debian8
* debian9
+* debian10
* centos6
* centos7
+* centos8
The easiest way to debug in a docker container is to open a shell:
diff --git a/.msync.yml b/.msync.yml
index 11aed5f..2825b0c 100644
--- a/.msync.yml
+++ b/.msync.yml
@@ -1 +1 @@
-modulesync_config_version: '2.10.0'
+modulesync_config_version: '2.11.0'
diff --git a/.rubocop.yml b/.rubocop.yml
index 5984ccc..c2ebc88 100644
--- a/.rubocop.yml
+++ b/.rubocop.yml
@@ -1,6 +1,7 @@
require: rubocop-rspec
AllCops:
- TargetRubyVersion: 2.1
+# Puppet Server 5 defaults to jruby 1.7 so TargetRubyVersion must stay at 1.9 until we drop support for puppet 5
+ TargetRubyVersion: 1.9
Include:
- ./**/*.rb
Exclude:
diff --git a/Gemfile b/Gemfile
index 50a9030..4d187cc 100644
--- a/Gemfile
+++ b/Gemfile
@@ -11,27 +11,9 @@ def location_for(place, fake_version = nil)
end
group :test do
- gem 'puppetlabs_spec_helper', '>= 2.14.0', :require => false
- gem 'rspec-puppet-facts', '>= 1.9.5', :require => false
- gem 'rspec-puppet-utils', :require => false
- gem 'puppet-lint-leading_zero-check', :require => false
- gem 'puppet-lint-trailing_comma-check', :require => false
- gem 'puppet-lint-version_comparison-check', :require => false
- gem 'puppet-lint-classes_and_types_beginning_with_digits-check', :require => false
- gem 'puppet-lint-unquoted_string-check', :require => false
- gem 'puppet-lint-variable_contains_upcase', :require => false
- gem 'puppet-lint-absolute_classname-check', '>= 2.0.0', :require => false
- gem 'puppet-lint-topscope-variable-check', :require => false
- gem 'puppet-lint-legacy_facts-check', :require => false
- gem 'puppet-lint-anchor-check', :require => false
- gem 'metadata-json-lint', :require => false
- gem 'redcarpet', :require => false
- gem 'rubocop', '~> 0.49.1', :require => false
- gem 'rubocop-rspec', '~> 1.15.0', :require => false
- gem 'mocha', '~> 1.4.0', :require => false
- gem 'coveralls', :require => false
- gem 'simplecov-console', :require => false
- gem 'parallel_tests', :require => false
+ gem 'voxpupuli-test', :require => false
+ gem 'coveralls', :require => false
+ gem 'simplecov-console', :require => false
end
group :development do
@@ -62,6 +44,7 @@ group :system_tests do
gem 'rbnacl', '>= 4', :require => false
gem 'rbnacl-libsodium', :require => false
gem 'bcrypt_pbkdf', :require => false
+ gem 'ed25519', :require => false
end
group :release do
diff --git a/Rakefile b/Rakefile
index c0f2d37..b450fe7 100644
--- a/Rakefile
+++ b/Rakefile
@@ -1,4 +1,4 @@
-require 'puppetlabs_spec_helper/rake_tasks'
+require 'voxpupuli/test/rake'
# load optional tasks for releases
# only available if gem group releases is installed
@@ -7,37 +7,6 @@ begin
rescue LoadError
end
-PuppetLint.configuration.log_format = '%{path}:%{line}:%{check}:%{KIND}:%{message}'
-
-desc 'Auto-correct puppet-lint offenses'
-task 'lint:auto_correct' do
- Rake::Task[:lint_fix].invoke
-end
-
-desc 'Run acceptance tests'
-RSpec::Core::RakeTask.new(:acceptance) do |t|
- t.pattern = 'spec/acceptance'
-end
-
-desc 'Run tests'
-task test: [:release_checks]
-
-namespace :check do
- desc 'Check for trailing whitespace'
- task :trailing_whitespace do
- Dir.glob('**/*.md', File::FNM_DOTMATCH).sort.each do |filename|
- next if filename =~ %r{^((modules|acceptance|\.?vendor|spec/fixtures|pkg)/|REFERENCE.md)}
- File.foreach(filename).each_with_index do |line, index|
- if line =~ %r{\s\n$}
- puts "#{filename} has trailing whitespace on line #{index + 1}"
- exit 1
- end
- end
- end
- end
-end
-Rake::Task[:release_checks].enhance ['check:trailing_whitespace']
-
desc "Run main 'test' task and report merged results to coveralls"
task test_with_coveralls: [:test] do
if Dir.exist?(File.expand_path('../lib', __FILE__))
diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb
index 93f417a..b2b2704 100644
--- a/spec/spec_helper.rb
+++ b/spec/spec_helper.rb
@@ -1,19 +1,12 @@
# This file is managed via modulesync
# https://github.com/voxpupuli/modulesync
# https://github.com/voxpupuli/modulesync_config
-RSpec.configure do |c|
- c.mock_with :rspec
-end
-require 'puppetlabs_spec_helper/module_spec_helper'
-require 'rspec-puppet-facts'
-require 'bundler'
-include RspecPuppetFacts
+# puppetlabs_spec_helper will set up coverage if the env variable is set.
+# We want to do this if lib exists and it hasn't been explicitly set.
+ENV['COVERAGE'] ||= 'yes' if Dir.exist?(File.expand_path('../../lib', __FILE__))
-if ENV['DEBUG']
- Puppet::Util::Log.level = :debug
- Puppet::Util::Log.newdestination(:console)
-end
+require 'voxpupuli/test/spec_helper'
if File.exist?(File.join(__dir__, 'default_module_facts.yml'))
facts = YAML.load(File.read(File.join(__dir__, 'default_module_facts.yml')))
@@ -23,39 +16,3 @@ if File.exist?(File.join(__dir__, 'default_module_facts.yml'))
end
end
end
-
-if Dir.exist?(File.expand_path('../../lib', __FILE__))
- require 'coveralls'
- require 'simplecov'
- require 'simplecov-console'
- SimpleCov.formatters = [
- SimpleCov::Formatter::HTMLFormatter,
- SimpleCov::Formatter::Console
- ]
- SimpleCov.start do
- track_files 'lib/**/*.rb'
- add_filter '/spec'
- add_filter '/vendor'
- add_filter '/.vendor'
- add_filter Bundler.configured_bundle_path.path
- end
-end
-
-RSpec.configure do |c|
- # getting the correct facter version is tricky. We use facterdb as a source to mock facts
- # see https://github.com/camptocamp/facterdb
- # people might provide a specific facter version. In that case we use it.
- # Otherwise we need to match the correct facter version to the used puppet version.
- # as of 2019-10-31, puppet 5 ships facter 3.11 and puppet 6 ships facter 3.14
- # https://puppet.com/docs/puppet/5.5/about_agent.html
- c.default_facter_version = if ENV['FACTERDB_FACTS_VERSION']
- ENV['FACTERDB_FACTS_VERSION']
- else
- Gem::Dependency.new('', ENV['PUPPET_VERSION']).match?('', '5') ? '3.11.0' : '3.14.0'
- end
-
- # Coverage generation
- c.after(:suite) do
- RSpec::Puppet::Coverage.report!
- end
-end