From 74b74a3194e9a03f76b6fb10b55977ca93b95228 Mon Sep 17 00:00:00 2001 From: William Yardley Date: Wed, 7 Mar 2018 10:38:17 -0800 Subject: [PATCH 1/2] Install package via title, add SLES 11 to metadata (#684) This fixes an issue with the package resource accepting an array for title, but not for the name parameter. It adds support in metadata.json for SLES 11 (only) to test the additional package we expect there. --- manifests/install.pp | 5 ++--- metadata.json | 6 ++++++ spec/classes/rabbitmq_spec.rb | 5 ++++- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/manifests/install.pp b/manifests/install.pp index cd11ba6c0..6c236e0fa 100644 --- a/manifests/install.pp +++ b/manifests/install.pp @@ -6,9 +6,8 @@ $package_name = $rabbitmq::package_name $rabbitmq_group = $rabbitmq::rabbitmq_group - package { 'rabbitmq-server': + package { $package_name: ensure => $package_ensure, - name => $package_name, notify => Class['rabbitmq::service'], } @@ -18,7 +17,7 @@ owner => 'root', group => $rabbitmq_group, mode => '0775', - require => Package['rabbitmq-server'], + require => Package[$package_name], } } } diff --git a/metadata.json b/metadata.json index b8c5ae4d2..0883f95d1 100644 --- a/metadata.json +++ b/metadata.json @@ -35,6 +35,12 @@ "16.04" ] }, + { + "operatingsystem": "SLES", + "operatingsystemrelease": [ + "11" + ] + }, { "operatingsystem": "FreeBSD" }, diff --git a/spec/classes/rabbitmq_spec.rb b/spec/classes/rabbitmq_spec.rb index b4aa37369..4c2a5be0c 100644 --- a/spec/classes/rabbitmq_spec.rb +++ b/spec/classes/rabbitmq_spec.rb @@ -36,7 +36,10 @@ it { is_expected.to contain_class('rabbitmq::config') } it { is_expected.to contain_class('rabbitmq::service') } - it { is_expected.to contain_package('rabbitmq-server').with_ensure('installed').with_name(packagename) } + it { is_expected.to contain_package(packagename).with_ensure('installed').with_name(packagename) } + if facts[:os]['family'] == 'Suse' + it { is_expected.to contain_package('rabbitmq-server-plugins') } + end context 'with default params' do it { is_expected.not_to contain_class('rabbitmq::repo::apt') } From ca32a67cc8bae3a7f7ab58d3ef990af3f42fb7da Mon Sep 17 00:00:00 2001 From: William Yardley Date: Tue, 13 Mar 2018 16:45:48 -0700 Subject: [PATCH 2/2] Rework class ordering to be a bit cleaner --- manifests/init.pp | 2 ++ manifests/repo/apt.pp | 1 - manifests/repo/rhel.pp | 2 -- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/manifests/init.pp b/manifests/init.pp index fe666ea61..12b0bd78e 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -298,9 +298,11 @@ case $facts['os']['family'] { 'RedHat': { contain rabbitmq::repo::rhel + Class['rabbitmq::repo::rhel'] -> Class['rabbitmq::install'] } 'Debian': { contain rabbitmq::repo::apt + Class['rabbitmq::repo::apt'] -> Class['rabbitmq::install'] } default: { } diff --git a/manifests/repo/apt.pp b/manifests/repo/apt.pp index 42d533353..651e4e377 100644 --- a/manifests/repo/apt.pp +++ b/manifests/repo/apt.pp @@ -16,7 +16,6 @@ # ordering / ensure to get the last version of repository Class['rabbitmq::repo::apt'] -> Class['apt::update'] - -> Package<| title == 'rabbitmq-server' |> $osname = downcase($facts['os']['name']) apt::source { 'rabbitmq': diff --git a/manifests/repo/rhel.pp b/manifests/repo/rhel.pp index 7832d7b18..093f607d9 100644 --- a/manifests/repo/rhel.pp +++ b/manifests/repo/rhel.pp @@ -5,8 +5,6 @@ String $key_source = $rabbitmq::package_gpg_key, ) { - Class['rabbitmq::repo::rhel'] -> Package<| title == 'rabbitmq-server' |> - yumrepo { 'rabbitmq': ensure => present, name => 'rabbitmq_rabbitmq-server',