pdksync_heads/master-0-g34e3266 pdksync_heads/master-0-g34e3266
authorHelen Campbell <helen@puppet.com>
Fri, 18 May 2018 14:16:06 +0000 (15:16 +0100)
committerHelen Campbell <helen@puppet.com>
Fri, 18 May 2018 14:16:06 +0000 (15:16 +0100)
15 files changed:
.gitignore
.pdkignore [new file with mode: 0644]
.rubocop.yml
.travis.yml
.yardopts [new file with mode: 0644]
Gemfile
Rakefile
metadata.json
spec/classes/apt_update_spec.rb
spec/default_facts.yml [new file with mode: 0644]
spec/defines/key_spec.rb
spec/spec_helper.rb
spec/spec_helper_acceptance.rb
spec/unit/facter/apt_dist_package_security_updates_spec.rb
spec/unit/facter/apt_package_security_updates_spec.rb

index d17e98715d6e45b12d4799528826268f25b0f1e6..49bc2a40140e2bff6b74d81ffaacd7cce0fac4a9 100644 (file)
 /Gemfile.lock
 /junit/
 /log/
-/log/
 /pkg/
 /spec/fixtures/manifests/
 /spec/fixtures/modules/
 /tmp/
 /vendor/
 /convert_report.txt
-
+/update_report.txt
+.DS_Store
diff --git a/.pdkignore b/.pdkignore
new file mode 100644 (file)
index 0000000..49bc2a4
--- /dev/null
@@ -0,0 +1,23 @@
+.*.sw[op]
+.metadata
+.yardoc
+.yardwarns
+*.iml
+/.bundle/
+/.idea/
+/.vagrant/
+/coverage/
+/bin/
+/doc/
+/Gemfile.local
+/Gemfile.lock
+/junit/
+/log/
+/pkg/
+/spec/fixtures/manifests/
+/spec/fixtures/modules/
+/tmp/
+/vendor/
+/convert_report.txt
+/update_report.txt
+.DS_Store
index a658984b32a6a64c2d4dfcc8fcf7056657b41eec..7ed6225c7d1406fceafc68b90288f8eb93c37b1e 100644 (file)
@@ -8,11 +8,14 @@ AllCops:
   Exclude:
   - bin/*
   - ".vendor/**/*"
-  - Gemfile
-  - Rakefile
+  - "**/Gemfile"
+  - "**/Rakefile"
   - pkg/**/*
   - spec/fixtures/**/*
   - vendor/**/*
+  - "**/Puppetfile"
+  - "**/Vagrantfile"
+  - "**/Guardfile"
 Metrics/LineLength:
   Description: People have wide screens, use them.
   Max: 200
@@ -63,6 +66,13 @@ Style/TrailingCommaInLiteral:
 Style/SymbolArray:
   Description: Using percent style obscures symbolic intent of array's contents.
   EnforcedStyle: brackets
+RSpec/MessageSpies:
+  EnforcedStyle: receive
+Style/Documentation:
+  Exclude:
+  - lib/puppet/parser/functions/**/*
+Style/WordArray:
+  EnforcedStyle: brackets
 Style/CollectionMethods:
   Enabled: true
 Style/MethodCalledOnDoEndBlock:
index bc1d2dc6eaecfb8fc92a320365782daa230944ab..256d5c5fd43bd19c309301d013ee811d4e882da2 100644 (file)
@@ -7,7 +7,6 @@ before_install:
   - bundle -v
   - rm -f Gemfile.lock
   - gem update --system
-  - gem update bundler
   - gem --version
   - bundle -v
 script:
@@ -16,14 +15,15 @@ bundler_args: --without system_tests
 rvm:
   - 2.4.1
 env:
-  - PUPPET_GEM_VERSION="~> 5.0" CHECK=spec
+  global:
+    - BEAKER_PUPPET_COLLECTION=puppet5 PUPPET_GEM_VERSION="~> 5.0"
 matrix:
   fast_finish: true
   include:
     -
       bundler_args: 
       dist: trusty
-      env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_set=docker/debian-8
+      env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_PUPPET_COLLECTION=puppet5 BEAKER_set=docker/debian-8
       rvm: 2.4.1
       script: bundle exec rake beaker
       services: docker
@@ -31,23 +31,17 @@ matrix:
     -
       bundler_args: 
       dist: trusty
-      env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_set=docker/ubuntu-14.04
+      env: PUPPET_INSTALL_TYPE=agent BEAKER_debug=true BEAKER_PUPPET_COLLECTION=puppet5 BEAKER_set=docker/ubuntu-14.04
       rvm: 2.4.1
       script: bundle exec rake beaker
       services: docker
       sudo: required
     -
-      env: CHECK=rubocop
+      env: CHECK="syntax lint metadata_lint check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop"
     -
-      env: CHECK="syntax lint"
+      env: CHECK=parallel_spec
     -
-      env: CHECK=metadata_lint
-    -
-      env: CHECK=release_checks
-    -
-      env: CHECK=spec
-    -
-      env: PUPPET_GEM_VERSION="~> 4.0" CHECK=spec
+      env: PUPPET_GEM_VERSION="~> 4.0" CHECK=parallel_spec
       rvm: 2.1.9
 branches:
   only:
diff --git a/.yardopts b/.yardopts
new file mode 100644 (file)
index 0000000..29c933b
--- /dev/null
+++ b/.yardopts
@@ -0,0 +1 @@
+--markup markdown
diff --git a/Gemfile b/Gemfile
index 37597a30357cf2e94485747e80bff543e9237a3d..a7ec8208c87b09f474d1b60c900bdd36b444ca42 100644 (file)
--- a/Gemfile
+++ b/Gemfile
@@ -28,11 +28,12 @@ group :development do
   gem "fast_gettext",                                  require: false if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.1.0')
   gem "json_pure", '<= 2.0.1',                         require: false if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.0.0')
   gem "json", '= 1.8.1',                               require: false if Gem::Version.new(RUBY_VERSION.dup) == Gem::Version.new('2.1.9')
+  gem "json", '<= 2.0.4',                              require: false if Gem::Version.new(RUBY_VERSION.dup) == Gem::Version.new('2.4.4')
   gem "puppet-module-posix-default-r#{minor_version}", require: false, platforms: [:ruby]
   gem "puppet-module-posix-dev-r#{minor_version}",     require: false, platforms: [:ruby]
   gem "puppet-module-win-default-r#{minor_version}",   require: false, platforms: [:mswin, :mingw, :x64_mingw]
   gem "puppet-module-win-dev-r#{minor_version}",       require: false, platforms: [:mswin, :mingw, :x64_mingw]
-  gem "puppet-blacksmith", '~> 3.4',                   require: false
+  gem "puppet-blacksmith", '~> 3.4',                   require: false, platforms: [:ruby]
 end
 group :system_tests do
   gem "puppet-module-posix-system-r#{minor_version}",                            require: false, platforms: [:ruby]
@@ -49,73 +50,24 @@ puppet_type = gem_type(puppet_version)
 facter_version = ENV['FACTER_GEM_VERSION']
 hiera_version = ENV['HIERA_GEM_VERSION']
 
-def puppet_older_than?(version)
-  puppet_version = ENV['PUPPET_GEM_VERSION']
-  !puppet_version.nil? &&
-    Gem::Version.correct?(puppet_version) &&
-    Gem::Requirement.new("< #{version}").satisfied_by?(Gem::Version.new(puppet_version.dup))
-end
-
 gems = {}
 
 gems['puppet'] = location_for(puppet_version)
 
 # If facter or hiera versions have been specified via the environment
-# variables, use those versions. If not, and if the puppet version is < 3.5.0,
-# use known good versions of both for puppet < 3.5.0.
-if facter_version
-  gems['facter'] = location_for(facter_version)
-elsif puppet_type == :gem && puppet_older_than?('3.5.0')
-  gems['facter'] = ['>= 1.6.11', '<= 1.7.5', require: false]
-end
-
-if hiera_version
-  gems['hiera'] = location_for(ENV['HIERA_GEM_VERSION'])
-elsif puppet_type == :gem && puppet_older_than?('3.5.0')
-  gems['hiera'] = ['>= 1.0.0', '<= 1.3.0', require: false]
-end
+# variables
 
-if Gem.win_platform? && (puppet_type != :gem || puppet_older_than?('3.5.0'))
-  # For Puppet gems < 3.5.0 (tested as far back as 3.0.0) on Windows
-  if puppet_type == :gem
-    gems['ffi'] =            ['1.9.0',                require: false]
-    gems['minitar'] =        ['0.5.4',                require: false]
-    gems['win32-eventlog'] = ['0.5.3',    '<= 0.6.5', require: false]
-    gems['win32-process'] =  ['0.6.5',    '<= 0.7.5', require: false]
-    gems['win32-security'] = ['~> 0.1.2', '<= 0.2.5', require: false]
-    gems['win32-service'] =  ['0.7.2',    '<= 0.8.8', require: false]
-  else
-    gems['ffi'] =            ['~> 1.9.0',             require: false]
-    gems['minitar'] =        ['~> 0.5.4',             require: false]
-    gems['win32-eventlog'] = ['~> 0.5',   '<= 0.6.5', require: false]
-    gems['win32-process'] =  ['~> 0.6',   '<= 0.7.5', require: false]
-    gems['win32-security'] = ['~> 0.1',   '<= 0.2.5', require: false]
-    gems['win32-service'] =  ['~> 0.7',   '<= 0.8.8', require: false]
-  end
-
-  gems['win32-dir'] = ['~> 0.3', '<= 0.4.9', require: false]
-
-  if RUBY_VERSION.start_with?('1.')
-    gems['win32console'] = ['1.3.2', require: false]
-    # sys-admin was removed in Puppet 3.7.0 and doesn't compile under Ruby 2.x
-    gems['sys-admin'] =    ['1.5.6', require: false]
-  end
+gems['facter'] = location_for(facter_version) if facter_version
+gems['hiera'] = location_for(hiera_version) if hiera_version
 
-  # Puppet < 3.7.0 requires these.
-  # Puppet >= 3.5.0 gem includes these as requirements.
-  # The following versions are tested to work with 3.0.0 <= puppet < 3.7.0.
-  gems['win32-api'] =           ['1.4.8', require: false]
-  gems['win32-taskscheduler'] = ['0.2.2', require: false]
-  gems['windows-api'] =         ['0.4.3', require: false]
-  gems['windows-pr'] =          ['1.2.3', require: false]
-elsif Gem.win_platform?
+if Gem.win_platform? && puppet_version =~ %r{^(file:///|git://)}
   # If we're using a Puppet gem on Windows which handles its own win32-xxx gem
   # dependencies (>= 3.5.0), set the maximum versions (see PUP-6445).
   gems['win32-dir'] =      ['<= 0.4.9', require: false]
   gems['win32-eventlog'] = ['<= 0.6.5', require: false]
   gems['win32-process'] =  ['<= 0.7.5', require: false]
   gems['win32-security'] = ['<= 0.2.5', require: false]
-  gems['win32-service'] =  ['<= 0.8.8', require: false]
+  gems['win32-service'] =  ['0.8.8', require: false]
 end
 
 gems.each do |gem_name, gem_params|
index 802f67b501c5cdb37473ae6a5ac17bd4983cbb17..d4e36dadfd3a36312b46fb3bf972ed0fb00c6a69 100644 (file)
--- a/Rakefile
+++ b/Rakefile
@@ -1,3 +1,6 @@
 require 'puppetlabs_spec_helper/rake_tasks'
 require 'puppet-syntax/tasks/puppet-syntax'
-require 'puppet_blacksmith/rake_tasks'
+require 'puppet_blacksmith/rake_tasks' if Bundler.rubygems.find_name('puppet-blacksmith').any?
+
+PuppetLint.configuration.send('disable_relative')
+
index d5b31f2428e5ac56ccb376aa733413a719b5d5ac..080cda35e5e6ce117cb7df80504ecce7b348ff2e 100644 (file)
@@ -35,6 +35,7 @@
       "version_requirement": ">= 4.7.0 < 6.0.0"
     }
   ],
-  "template-url": "file:///opt/puppetlabs/pdk/share/cache/pdk-templates.git",
-  "template-ref": "1.3.2-0-g07678c8"
+  "template-url": "https://github.com/puppetlabs/pdk-templates",
+  "template-ref": "heads/master-0-g34e3266",
+  "pdk-version": "1.5.0"
 }
index 675bbd2c9bd5eca9adee11484421891488a62df1..9553e7221c314c2b39cf04d4dfdf29bdc6d7f957 100644 (file)
@@ -89,7 +89,7 @@ describe 'apt::update', type: :class do
       end
     end
   end
-  %w[daily weekly].each do |update_frequency|
+  ['daily', 'weekly'].each do |update_frequency|
     context "when apt::update['frequency'] has the value of #{update_frequency}" do
       { 'we are due for a run' => 1_406_660_561, 'the update-success-stamp file does not exist' => -1 }.each_pair do |desc, factval|
         context "when $::apt_update_last_success indicates #{desc}" do
diff --git a/spec/default_facts.yml b/spec/default_facts.yml
new file mode 100644 (file)
index 0000000..3248be5
--- /dev/null
@@ -0,0 +1,8 @@
+# Use default_module_facts.yml for module specific facts.
+#
+# Facts specified here will override the values provided by rspec-puppet-facts.
+---
+concat_basedir: "/tmp"
+ipaddress: "172.16.254.254"
+is_pe: false
+macaddress: "AA:AA:AA:AA:AA:AA"
index 6a5a89ffd04ade005baa1946e9146b38c12e7a63..2378d777914415b1636747842a9cc1f76299cb9e 100644 (file)
@@ -317,7 +317,7 @@ describe 'apt::key' do
     end
 
     context 'with invalid ensure' do
-      %w[foo aabsent absenta apresent presenta].each do |param|
+      ['foo', 'aabsent', 'absenta', 'apresent', 'presenta'].each do |param|
         let :params do
           {
             ensure: param,
index 15266c201ac0f21c7918ba53178ff9f423e36d59..e117192684d1d907d001bf542592bdea4f0e470e 100644 (file)
@@ -1,5 +1,13 @@
+
 require 'puppetlabs_spec_helper/module_spec_helper'
 require 'rspec-puppet-facts'
+
+begin
+  require 'spec_helper_local' if File.file?(File.join(File.dirname(__FILE__), 'spec_helper_local.rb'))
+rescue LoadError => loaderror
+  warn "Could not require spec_helper_local: #{loaderror.message}"
+end
+
 include RspecPuppetFacts
 
 default_facts = {
@@ -20,4 +28,9 @@ end
 
 RSpec.configure do |c|
   c.default_facts = default_facts
+  c.before :each do
+    # set to strictest setting for testing
+    # by default Puppet runs at warning level
+    Puppet.settings[:strict] = :warning
+  end
 end
index 2ec2dba4b2201dcc270bf8a7b34d66d744755fea..258116c5629d4b5bddd33958cc3552fd22027cda 100644 (file)
@@ -15,7 +15,7 @@ install_bolt_on(hosts) unless pe_install?
 install_module_on(hosts)
 install_module_dependencies_on(hosts)
 
-UNSUPPORTED_PLATFORMS = %w[RedHat Suse windows AIX Solaris].freeze
+UNSUPPORTED_PLATFORMS = ['RedHat', 'Suse', 'windows', 'AIX', 'Solaris'].freeze
 
 DEFAULT_PASSWORD = if default[:hypervisor] == 'vagrant'
                      'vagrant'
index 7f4f16a6c1263117e9d22f3089f722312b223ba2..d6f0a9f11b6ca9a8826d9b0301a55277221f699f 100644 (file)
@@ -53,7 +53,7 @@ describe 'apt_package_security_dist_updates fact' do
       if Facter.version < '2.0.0'
         it { is_expected.to eq('extremetuxracer,vim') }
       else
-        it { is_expected.to eq(%w[extremetuxracer vim]) }
+        it { is_expected.to eq(['extremetuxracer', 'vim']) }
       end
     end
   end
index 1cd992d616fce5a4644746401783438264168adc..1bc1fda0483d7f40c9f4f1b7b26dd4beb5740266 100644 (file)
@@ -51,7 +51,7 @@ describe 'apt_package_security_updates fact' do
       if Facter.version < '2.0.0'
         it { is_expected.to eq('tzdata,curl') }
       else
-        it { is_expected.to eq(%w[tzdata curl]) }
+        it { is_expected.to eq(['tzdata', 'curl']) }
       end
     end
   end