From 33c579f57371f8fae78afe0ec4e79f6c3923aa33 Mon Sep 17 00:00:00 2001 From: Colleen Murphy Date: Thu, 13 Aug 2015 17:10:26 -0700 Subject: [PATCH] Add Gemfile and puppet 4 checks In anticipation of puppet 4, start trying to deal with puppet 4 things that can be helpfully predicted by puppet lint plugins. Also fix lint errors caught by the puppet-lint-empty_string-check gem: - releasestatus base class: replacing empty string defaults with undef - releasestatus::site class: replacing empty string defaults with reasonable default values inspired by system-config's usage Change-Id: I7ce45ac86da0d7dcdb90deb292973c8cdde0421a --- .gitignore | 2 ++ Gemfile | 30 ++++++++++++++++++++++++++++++ manifests/init.pp | 12 ++++++------ manifests/site.pp | 4 ++-- 4 files changed, 40 insertions(+), 8 deletions(-) create mode 100644 .gitignore create mode 100644 Gemfile diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..dade81e --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +Gemfile.lock +.bundled_gems/ diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..96912da --- /dev/null +++ b/Gemfile @@ -0,0 +1,30 @@ +source 'https://rubygems.org' + +group :development, :test do + gem 'puppetlabs_spec_helper', :require => false + + gem 'metadata-json-lint' + # This is nice and all, but let's not worry about it until we've actually + # got puppet 4.x sorted + # gem 'puppet-lint-param-docs' + gem 'puppet-lint-absolute_classname-check' + gem 'puppet-lint-absolute_template_path' + gem 'puppet-lint-trailing_newline-check' + + # Puppet 4.x related lint checks + gem 'puppet-lint-unquoted_string-check' + gem 'puppet-lint-empty_string-check' + gem 'puppet-lint-leading_zero-check' + gem 'puppet-lint-variable_contains_upcase' + gem 'puppet-lint-spaceship_operator_without_tag-check' + gem 'puppet-lint-undef_in_function-check' + + if puppetversion = ENV['PUPPET_GEM_VERSION'] + gem 'puppet', puppetversion, :require => false + else + gem 'puppet', '~> 3.0', :require => false + end + +end + +# vim:ft=ruby diff --git a/manifests/init.pp b/manifests/init.pp index 0c68a82..1005e99 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -15,9 +15,9 @@ # Class: releasestatus # class releasestatus ( - $releasestatus_prvkey_contents = '', - $releasestatus_pubkey_contents = '', - $releasestatus_gerrit_ssh_key = '', + $releasestatus_prvkey_contents = undef, + $releasestatus_pubkey_contents = undef, + $releasestatus_gerrit_ssh_key = undef, ) { if ! defined(Package['python-launchpadlib']) { package { 'python-launchpadlib': @@ -66,7 +66,7 @@ class releasestatus ( require => File['/var/lib/releasestatus'], } - if $releasestatus_prvkey_contents != '' { + if $releasestatus_prvkey_contents != undef { file { '/var/lib/releasestatus/.ssh/id_rsa': owner => 'releasestatus', group => 'releasestatus', @@ -77,7 +77,7 @@ class releasestatus ( } } - if $releasestatus_pubkey_contents != '' { + if $releasestatus_pubkey_contents != undef { file { '/var/lib/releasestatus/.ssh/id_rsa.pub': owner => 'releasestatus', group => 'releasestatus', @@ -88,7 +88,7 @@ class releasestatus ( } } - if $releasestatus_gerrit_ssh_key != '' { + if $releasestatus_gerrit_ssh_key != undef { file { '/var/lib/releasestatus/.ssh/known_hosts': owner => 'releasestatus', group => 'releasestatus', diff --git a/manifests/site.pp b/manifests/site.pp index 1289d40..1f2c843 100644 --- a/manifests/site.pp +++ b/manifests/site.pp @@ -15,8 +15,8 @@ # == Define: releasestatus # define releasestatus::site( - $configfile = '', - $httproot = '', + $configfile = 'integrated.yaml', + $httproot = '/srv/static/release', ) { file { "/var/lib/releasestatus/${configfile}":