diff options
author | varac <varacanero@zeromail.org> | 2016-01-06 10:58:45 +0100 |
---|---|---|
committer | varac <varacanero@zeromail.org> | 2016-01-06 10:58:45 +0100 |
commit | d459567bf246eee85cd101c2e2f17f451e6230b8 (patch) | |
tree | 19f67e954d34dbb695e98b33c11c0ccb31026782 | |
parent | e12c5bfd6c9ff5d1dc5e14c227e8c15388ecb042 (diff) | |
parent | fa1751c4de0154de7431ea18f57ddaeff329cf73 (diff) |
Merge remote-tracking branch 'shared/master' into leap_master
-rw-r--r-- | .gitlab-ci.yml | 12 | ||||
-rw-r--r-- | Gemfile | 28 | ||||
-rw-r--r-- | README | 4 | ||||
-rw-r--r-- | lib/facter/debian_nextcodename.rb | 9 | ||||
-rw-r--r-- | lib/facter/ubuntu_nextcodename.rb | 2 | ||||
-rw-r--r-- | lib/facter/util/ubuntu.rb | 1 | ||||
-rw-r--r-- | manifests/init.pp | 9 | ||||
-rw-r--r-- | manifests/preferences_snippet.pp | 3 | ||||
-rw-r--r-- | spec/unit/custom_facts_spec.rb | 27 |
9 files changed, 52 insertions, 43 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..f7b8eca --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,12 @@ +before_script: + - ruby -v + - gem install bundler --no-ri --no-rdoc + - bundle install --jobs $(nproc) "${FLAGS[@]}" + +# don't fail on lint warnings +rspec: + script: + - bundle exec rake lint || /bin/true + - bundle exec rake syntax + - bundle exec rake validate + - bundle exec rake spec @@ -1,37 +1,13 @@ source "https://rubygems.org" -def location_for(place, fake_version = nil) - if place =~ /^(git[:@][^#]*)#(.*)/ - [fake_version, { :git => $1, :branch => $2, :require => false }].compact - elsif place =~ /^file:\/\/(.*)/ - ['>= 0', { :path => File.expand_path($1), :require => false }] - else - [place, { :require => false }] - end -end - - group :test do gem "rake" gem "rspec", '< 3.2.0' + gem "puppet", ENV['PUPPET_VERSION'] || ENV['GEM_PUPPET_VERSION'] || ENV['PUPPET_GEM_VERSION'] || '~> 3.7.0' + gem "facter", ENV['FACTER_VERSION'] || ENV['GEM_FACTER_VERSION'] || ENV['FACTER_GEM_VERSION'] || '~> 2.2.0' gem "rspec-puppet" gem "puppetlabs_spec_helper" gem "metadata-json-lint" gem "rspec-puppet-facts" gem "mocha" end - -facterversion = ENV['GEM_FACTER_VERSION'] || ENV['FACTER_GEM_VERSION'] -if facterversion - gem 'facter', *location_for(facterversion) -else - gem 'facter', :require => false -end - -puppetversion = ENV['GEM_PUPPET_VERSION'] || ENV['PUPPET_GEM_VERSION'] -if puppetversion - gem 'puppet', *location_for(puppetversion) -else - gem 'puppet', :require => false -end - @@ -568,6 +568,10 @@ To run pupept rspec tests: bundle install --path vendor/bundle bundle exec rake spec +Using different facter/puppet versions: + + FACTER_GEM_VERSION=1.6.10 PUPPET_GEM_VERSION=2.7.23 bundle install --path vendor/bundle + bundle exec rake spec Licensing ========= diff --git a/lib/facter/debian_nextcodename.rb b/lib/facter/debian_nextcodename.rb index 6e994a4..c4c569b 100644 --- a/lib/facter/debian_nextcodename.rb +++ b/lib/facter/debian_nextcodename.rb @@ -8,11 +8,10 @@ def debian_codename_to_next(codename) if codename == "sid" return "experimental" else - codenames = Facter::Util::Debian::CODENAMES.values - i = codenames.index(codename) - if i and i+1 < codenames.count - return codenames[i+1] - end + codenames = Facter::Util::Debian::CODENAMES + versions = Facter::Util::Debian::CODENAMES.invert + current_version = versions[codename] + return codenames[(current_version.to_i + 1).to_s] end end diff --git a/lib/facter/ubuntu_nextcodename.rb b/lib/facter/ubuntu_nextcodename.rb index ba985bf..dcd1d42 100644 --- a/lib/facter/ubuntu_nextcodename.rb +++ b/lib/facter/ubuntu_nextcodename.rb @@ -1,7 +1,7 @@ begin require 'facter/util/ubuntu' rescue LoadError - require "#{File.dirname(__FILE__)}/util/debian" + require "#{File.dirname(__FILE__)}/util/ubuntu" end def ubuntu_codename_to_next(codename) diff --git a/lib/facter/util/ubuntu.rb b/lib/facter/util/ubuntu.rb index 1b2411a..52c15e8 100644 --- a/lib/facter/util/ubuntu.rb +++ b/lib/facter/util/ubuntu.rb @@ -14,6 +14,7 @@ module Facter "utopic", "vivid", "wily", + "xenial" ] end end diff --git a/manifests/init.pp b/manifests/init.pp index 6732ade..1e7ddd7 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -123,17 +123,14 @@ class apt( mode => '0755', } exec { 'custom_keys': - command => "find ${apt_base_dir}/keys.d -type f -exec apt-key add '{}' \\; && /usr/bin/apt-get update", + command => "find ${apt_base_dir}/keys.d -type f -exec apt-key add '{}' \\;", subscribe => File["${apt_base_dir}/keys.d"], refreshonly => true, + notify => Exec[refresh_apt] } if $custom_preferences != false { Exec['custom_keys'] { - before => [ Exec[refresh_apt], File['apt_config'] ] - } - } else { - Exec['custom_keys'] { - before => Exec[refresh_apt] + before => File['apt_config'] } } } diff --git a/manifests/preferences_snippet.pp b/manifests/preferences_snippet.pp index 0c7b7bb..99feac4 100644 --- a/manifests/preferences_snippet.pp +++ b/manifests/preferences_snippet.pp @@ -31,7 +31,8 @@ define apt::preferences_snippet ( file { "/etc/apt/preferences.d/${name}": ensure => $ensure, - owner => root, group => 0, mode => '0644'; + owner => root, group => 0, mode => '0644', + before => Exec['refresh_apt']; } case $source { diff --git a/spec/unit/custom_facts_spec.rb b/spec/unit/custom_facts_spec.rb index 2d36bd7..9a28d92 100644 --- a/spec/unit/custom_facts_spec.rb +++ b/spec/unit/custom_facts_spec.rb @@ -21,6 +21,14 @@ describe "Facter::Util::Fact" do it "debian_codename = wheezy" do expect(Facter.fact(:debian_codename).value).to eq('wheezy') end + + it "debian_nextcodename = jessie" do + expect(Facter.fact(:debian_nextcodename).value).to eq('jessie') + end + + it "debian_nextrelease = stable" do + expect(Facter.fact(:debian_nextrelease).value).to eq('stable') + end end context 'Debian 8' do @@ -37,20 +45,31 @@ describe "Facter::Util::Fact" do it "debian_codename = jessie" do expect(Facter.fact(:debian_codename).value).to eq('jessie') end + + it "debian_nextcodename = stretch" do + expect(Facter.fact(:debian_nextcodename).value).to eq('stretch') + end + + it "debian_nextrelease = testing" do + expect(Facter.fact(:debian_nextrelease).value).to eq('testing') + end end context 'Ubuntu 15.10' do before do Facter.fact(:operatingsystem).stubs(:value).returns("Ubuntu") Facter.fact(:operatingsystemrelease).stubs(:value).returns("15.10") - Facter.fact(:lsbdistcodename).stubs(:value).returns("Vivid") + Facter.fact(:lsbdistcodename).stubs(:value).returns("wily") end - it "ubuntu_codename = Vivid" do - expect(Facter.fact(:ubuntu_codename).value).to eq('Vivid') + it "ubuntu_codename = wily" do + expect(Facter.fact(:ubuntu_codename).value).to eq('wily') end - end + it "ubuntu_nextcodename = xenial" do + expect(Facter.fact(:ubuntu_nextcodename).value).to eq('xenial') + end + end end describe "Test 'apt_running' fact" do |