From 399a2ca6331e390cec7ee71bc998f853f433c9ad Mon Sep 17 00:00:00 2001 From: Colleen Murphy Date: Sun, 11 Jun 2017 19:20:48 +0200 Subject: [PATCH] Parameterize JRE package Add a params class so that puppet can distinguish between JRE packages on different Ubuntu releases. Change-Id: Ia1d22379d915d347c549c8cb8785920d97470f06 --- manifests/init.pp | 7 ++++--- manifests/params.pp | 12 ++++++++++++ spec/acceptance/basic_spec.rb | 2 +- 3 files changed, 17 insertions(+), 4 deletions(-) create mode 100644 manifests/params.pp diff --git a/manifests/init.pp b/manifests/init.pp index 07c0003..cf99ec6 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -17,6 +17,7 @@ # Class to install common logstash items. # class logstash { + include ::logstash::params include ::logrotate archive { '/tmp/logstash-2.4.1_all.deb': @@ -26,8 +27,8 @@ class logstash { checksum_type => 'sha1', } - if ! defined(Package['openjdk-7-jre-headless']) { - package { 'openjdk-7-jre-headless': + if ! defined(Package[$::logstash::params::jre_package]) { + package { $::logstash::params::jre_package: ensure => present, } } @@ -38,7 +39,7 @@ class logstash { provider => 'dpkg', require => [ Package['logrotate'], - Package['openjdk-7-jre-headless'], + Package[$::logstash::params::jre_package], Archive['/tmp/logstash-2.4.1_all.deb'], ] } diff --git a/manifests/params.pp b/manifests/params.pp new file mode 100644 index 0000000..594e4b3 --- /dev/null +++ b/manifests/params.pp @@ -0,0 +1,12 @@ +# logstash::params +class logstash::params( +) { + case $::lsbdistcodename { + 'xenial': { + $jre_package = 'openjdk-8-jre-headless' + } + default: { + $jre_package = 'openjdk-7-jre-headless' + } + } +} diff --git a/spec/acceptance/basic_spec.rb b/spec/acceptance/basic_spec.rb index 58f939f..2738608 100644 --- a/spec/acceptance/basic_spec.rb +++ b/spec/acceptance/basic_spec.rb @@ -52,7 +52,7 @@ describe 'puppet-logstash module', :if => ['debian', 'ubuntu'].include?(os[:fami end describe 'required package' do - describe package('openjdk-7-jre-headless') do + describe package('openjdk-8-jre-headless') do it { should be_installed } end