diff --git a/manifests/init.pp b/manifests/init.pp index fa396da..b47db98 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -5,8 +5,11 @@ class supervisord( $package_ensure = $supervisord::params::package_ensure, $package_name = $supervisord::params::package_name, + $package_enable = $supervisord::params::package_enable, + $package_manage = $supervisord::params::package_manage, $package_provider = $supervisord::params::package_provider, $service_ensure = $supervisord::params::service_ensure, + $service_manage = $supervisord::params::service_manage, $service_name = $supervisord::params::service_name, $install_init = $supervisord::params::install_init, $install_pip = false, @@ -123,7 +126,7 @@ Class['supervisord::pip'] -> Class['supervisord::install'] } - include supervisord::install, supervisord::config, supervisord::service, supervisord::reload + include supervisord::config, supervisord::reload, supervisord::install, supervisord::service Class['supervisord::install'] -> Class['supervisord::config'] ~> Class['supervisord::service'] Class['supervisord::reload'] -> Supervisord::Supervisorctl <| |> diff --git a/manifests/install.pp b/manifests/install.pp index 387c77f..c25ba1f 100644 --- a/manifests/install.pp +++ b/manifests/install.pp @@ -3,8 +3,10 @@ # Installs supervisor package (defaults to using pip) # class supervisord::install inherits supervisord { - package { $supervisord::package_name: - ensure => $supervisord::package_ensure, - provider => $supervisord::package_provider + if $supervisord::package_manage == true { + package { $supervisord::package_name: + ensure => $supervisord::package_ensure, + provider => $supervisord::package_provider + } } } diff --git a/manifests/params.pp b/manifests/params.pp index d00b51e..4b92456 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -26,8 +26,11 @@ # default supervisord params $package_ensure = 'installed' + $package_enable = true + $package_manage = true $package_provider = 'pip' $service_ensure = 'running' + $service_manage = true $service_name = 'supervisord' $package_name = 'supervisor' $executable = "${executable_path}/supervisord" diff --git a/manifests/reload.pp b/manifests/reload.pp index 79eca3d..1897f4a 100644 --- a/manifests/reload.pp +++ b/manifests/reload.pp @@ -6,14 +6,16 @@ $supervisorctl = $::supervisord::executable_ctl - exec { 'supervisorctl_reread': - command => "${supervisorctl} reread", - refreshonly => true, - require => Service[$supervisord::service_name], - } - exec { 'supervisorctl_update': - command => "${supervisorctl} update", - refreshonly => true, - require => Service[$supervisord::service_name], + if $supervisord::service_manage == true { + exec { 'supervisorctl_reread': + command => "${supervisorctl} reread", + refreshonly => true, + require => Service[$supervisord::service_name], + } + exec { 'supervisorctl_update': + command => "${supervisorctl} update", + refreshonly => true, + require => Service[$supervisord::service_name], + } } } diff --git a/manifests/service.pp b/manifests/service.pp index f02a0d0..95d161f 100644 --- a/manifests/service.pp +++ b/manifests/service.pp @@ -3,10 +3,12 @@ # Class for the supervisord service # class supervisord::service inherits supervisord { - service { $supervisord::service_name: - ensure => $supervisord::service_ensure, - enable => true, - hasrestart => true, - hasstatus => true + if $supervisord::service_manage == true { + service { $supervisord::service_name: + ensure => $supervisord::service_ensure, + enable => $supervisord::package_enable, + hasrestart => true, + hasstatus => true + } } }