From 93673444759dc9938a949c166be388b09bbd7f24 Mon Sep 17 00:00:00 2001 From: Dennis Hoppe Date: Fri, 3 May 2019 13:46:07 +0200 Subject: [PATCH 1/4] Refactor install.pp * Update header for puppet-strings * Assert that class is private * Remove useless variables --- manifests/install.pp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/manifests/install.pp b/manifests/install.pp index b172ba14a..4b30d1327 100644 --- a/manifests/install.pp +++ b/manifests/install.pp @@ -1,14 +1,14 @@ -# Ensures that rabbitmq-server exists +# @summary +# This class handles the RabbitMQ package. # # @api private +# class rabbitmq::install { - $package_ensure = $rabbitmq::package_ensure - $package_name = $rabbitmq::package_name - $rabbitmq_group = $rabbitmq::rabbitmq_group + assert_private() - package { $package_name: - ensure => $package_ensure, + package { $rabbitmq::package_name: + ensure => $rabbitmq::package_ensure, notify => Class['rabbitmq::service'], } @@ -16,9 +16,9 @@ file { $rabbitmq::environment_variables['MNESIA_BASE']: ensure => 'directory', owner => 'root', - group => $rabbitmq_group, + group => $rabbitmq::rabbitmq_group, mode => '0775', - require => Package[$package_name], + require => Package[$rabbitmq::package_name], } } } From 2098429c041f15754b44dbf7edbb7ad930068765 Mon Sep 17 00:00:00 2001 From: Dennis Hoppe Date: Fri, 3 May 2019 13:50:16 +0200 Subject: [PATCH 2/4] Refactor service.pp * Update header for puppet-strings * Assert that class is private * Remove useless variables --- manifests/service.pp | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/manifests/service.pp b/manifests/service.pp index f226007eb..8e1e1fb8e 100644 --- a/manifests/service.pp +++ b/manifests/service.pp @@ -1,14 +1,14 @@ -# This class manages the rabbitmq server service itself. +# @summary +# This class handles the RabbitMQ service. # # @api private -class rabbitmq::service( - Enum['running', 'stopped'] $service_ensure = $rabbitmq::service_ensure, - Boolean $service_manage = $rabbitmq::service_manage, - $service_name = $rabbitmq::service_name, -) inherits rabbitmq { +# +class rabbitmq::service { + + assert_private() - if ($service_manage) { - if $service_ensure == 'running' { + if ($rabbitmq::service_manage) { + if $rabbitmq::service_ensure == 'running' { $ensure_real = 'running' $enable_real = true } else { @@ -21,12 +21,11 @@ enable => $enable_real, hasstatus => true, hasrestart => true, - name => $service_name, + name => $rabbitmq::service_name, } if $facts['systemd'] { Class['systemd::systemctl::daemon_reload'] -> Service['rabbitmq-server'] } } - } From d0e5d0a1d9b03bd4dc18a5fa2fc2be674f3805fd Mon Sep 17 00:00:00 2001 From: Dennis Hoppe Date: Fri, 3 May 2019 13:52:00 +0200 Subject: [PATCH 3/4] Refactor management.pp * Update header for puppet-strings * Assert that class is private --- manifests/management.pp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/manifests/management.pp b/manifests/management.pp index 3467c7402..520bc7361 100644 --- a/manifests/management.pp +++ b/manifests/management.pp @@ -1,15 +1,16 @@ -# Manage presence / absence of user resource for guest management user. +# @summary +# This class handles the RabbitMQ guest user. # # @api private +# class rabbitmq::management { - $delete_guest_user = $rabbitmq::delete_guest_user + assert_private() - if $delete_guest_user { - rabbitmq_user{ 'guest': + if $rabbitmq::delete_guest_user { + rabbitmq_user { 'guest': ensure => absent, provider => 'rabbitmqctl', } } - } From 1ea1171a68f0f68c0962806fb0499963faa7db83 Mon Sep 17 00:00:00 2001 From: Dennis Hoppe Date: Fri, 3 May 2019 13:52:44 +0200 Subject: [PATCH 4/4] Refactor install/rabbitmqadmin.pp * Update header for puppet-strings * Assert that class is private * Remove useless variables * Use groupname instead of gid * Make class more readable --- manifests/install/rabbitmqadmin.pp | 54 +++++++++++++++++------------- 1 file changed, 30 insertions(+), 24 deletions(-) diff --git a/manifests/install/rabbitmqadmin.pp b/manifests/install/rabbitmqadmin.pp index acd6728d9..e29671ee1 100644 --- a/manifests/install/rabbitmqadmin.pp +++ b/manifests/install/rabbitmqadmin.pp @@ -1,20 +1,25 @@ -# Install rabbitmq admin +# @summary +# This class handles the RabbitMQ admin package. # # @api private +# class rabbitmq::install::rabbitmqadmin { + assert_private() + if $rabbitmq::rabbitmqadmin_package { - package{'rabbitmqadmin': + package { 'rabbitmqadmin': ensure => 'present', name => $rabbitmq::rabbitmqadmin_package, } } else { - - $python_package = $rabbitmq::params::python_package # Some systems (e.g., Ubuntu 16.04) don't ship Python 2 by default if $rabbitmq::manage_python { - ensure_packages([$python_package]) - $rabbitmqadmin_require = [Archive['rabbitmqadmin'], Package[$python_package]] + ensure_packages([$rabbitmq::params::python_package]) + $rabbitmqadmin_require = [ + Archive['rabbitmqadmin'], + Package[$rabbitmq::params::python_package] + ] } else { $rabbitmqadmin_require = Archive['rabbitmqadmin'] } @@ -27,43 +32,44 @@ $protocol = 'http' } - $default_user = $rabbitmq::default_user - $default_pass = $rabbitmq::default_pass - $management_ip_address = $rabbitmq::management_ip_address - $archive_options = $rabbitmq::archive_options - - if !($management_ip_address) { + if !($rabbitmq::management_ip_address) { # Pull from localhost if we don't have an explicit bind address - $curl_prefix = '' + $curl_prefix = '' $sanitized_ip = '127.0.0.1' - } elsif $management_ip_address =~ Stdlib::Compat::Ipv6 { - $curl_prefix = "--noproxy ${management_ip_address} -g -6" - $sanitized_ip = join(enclose_ipv6(any2array($management_ip_address)), ',') + } elsif $rabbitmq::management_ip_address =~ Stdlib::Compat::Ipv6 { + $curl_prefix = "--noproxy ${rabbitmq::management_ip_address} -g -6" + $sanitized_ip = join(enclose_ipv6(any2array($rabbitmq::management_ip_address)), ',') } else { - $curl_prefix = "--noproxy ${management_ip_address}" - $sanitized_ip = $management_ip_address + $curl_prefix = "--noproxy ${rabbitmq::management_ip_address}" + $sanitized_ip = $rabbitmq::management_ip_address } if !($rabbitmq::use_config_file_for_plugins) { - $rabbitmqadmin_archive_require = [Class['rabbitmq::service'], Rabbitmq_plugin['rabbitmq_management']] + $rabbitmqadmin_archive_require = [ + Class['rabbitmq::service'], + Rabbitmq_plugin['rabbitmq_management'] + ] } else { - $rabbitmqadmin_archive_require = [Class['rabbitmq::service'], File['enabled_plugins']] + $rabbitmqadmin_archive_require = [ + Class['rabbitmq::service'], + File['enabled_plugins'] + ] } archive { 'rabbitmqadmin': path => "${rabbitmq::rabbitmq_home}/rabbitmqadmin", source => "${protocol}://${sanitized_ip}:${management_port}/cli/rabbitmqadmin", - username => $default_user, - password => $default_pass, + username => $rabbitmq::default_user, + password => $rabbitmq::default_pass, allow_insecure => true, - download_options => $archive_options, + download_options => $rabbitmq::archive_options, cleanup => false, require => $rabbitmqadmin_archive_require, } file { '/usr/local/bin/rabbitmqadmin': owner => 'root', - group => '0', + group => 'root', source => "${rabbitmq::rabbitmq_home}/rabbitmqadmin", mode => '0755', require => $rabbitmqadmin_require,