From 695d098adc1070c3b0b992eb5799123ec40a3159 Mon Sep 17 00:00:00 2001 From: Erik Geiger Date: Mon, 19 Aug 2019 16:49:43 +0200 Subject: [PATCH 1/6] allow disabling service management and manage service depending on provider for client configurations --- manifests/deploy/client.pp | 50 ++++++++++++++++++++++++++++++++++--- manifests/deploy/prepare.pp | 1 - manifests/deploy/service.pp | 13 ---------- 3 files changed, 46 insertions(+), 18 deletions(-) delete mode 100644 manifests/deploy/service.pp diff --git a/manifests/deploy/client.pp b/manifests/deploy/client.pp index 5e6e50e0..84290345 100644 --- a/manifests/deploy/client.pp +++ b/manifests/deploy/client.pp @@ -11,14 +11,15 @@ define openvpn::deploy::client ( String $server, Boolean $manage_etc = true, + Boolean $manage_service = true, ) { include openvpn::deploy::prepare + File <<| tag == "${server}-${name}" |>> + Class['openvpn::deploy::install'] -> Openvpn::Deploy::Client[$name] - ~> Class['openvpn::deploy::service'] - if $manage_etc { file { [ @@ -36,7 +37,48 @@ } } - File <<| tag == "${server}-${name}" |>> - ~> Class['openvpn::deploy::service'] + if $manage_service { + + if $facts['service_provider'] == 'systemd' { + $service = "openvpn@${name}" + service { "$service": + ensure => running, + enable => true, + provider => 'systemd', + require => File["${openvpn::deploy::prepare::etc_directory}/openvpn/${name}.conf"], + } + } + elsif $openvpn::namespecific_rclink { + $service = "openvpn_${name}" + file { "/usr/local/etc/rc.d/openvpn_${name}": + ensure => link, + target => "${openvpn::deploy::prepare::etc_directory}/rc.d/openvpn", + } + file { "/etc/rc.conf.d/openvpn_${name}": + owner => root, + group => 0, + mode => '0644', + content => template('openvpn/etc-rc.d-openvpn.erb'), + } + service { "$service": + ensure => running, + enable => true, + require => [ + File["${openvpn::deploy::prepare::etc_directory}/openvpn/${name}.conf"], + File["/usr/local/etc/rc.d/openvpn_${name}"], + ], + } + } + else { + $service = "openvpn" + service { "$service": + ensure => running, + enable => true, + hasrestart => true, + hasstatus => true, + } + } + + } } diff --git a/manifests/deploy/prepare.pp b/manifests/deploy/prepare.pp index 9260e6c2..4189001a 100644 --- a/manifests/deploy/prepare.pp +++ b/manifests/deploy/prepare.pp @@ -10,6 +10,5 @@ ) { class { 'openvpn::deploy::install': } - ~> class { 'openvpn::deploy::service': } } diff --git a/manifests/deploy/service.pp b/manifests/deploy/service.pp deleted file mode 100644 index 5e6978c5..00000000 --- a/manifests/deploy/service.pp +++ /dev/null @@ -1,13 +0,0 @@ -# -# @summary Base profile -# -class openvpn::deploy::service { - - service { 'openvpn': - ensure => running, - enable => true, - hasrestart => true, - hasstatus => true; - } - -} From ca6b44a89fa7b6ebda52b6809a95f95eddcd5353 Mon Sep 17 00:00:00 2001 From: Erik Geiger Date: Tue, 20 Aug 2019 10:08:37 +0200 Subject: [PATCH 2/6] fixing double to single quotes for service variable --- manifests/deploy/client.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/deploy/client.pp b/manifests/deploy/client.pp index 84290345..a5b799bb 100644 --- a/manifests/deploy/client.pp +++ b/manifests/deploy/client.pp @@ -70,7 +70,7 @@ } } else { - $service = "openvpn" + $service = 'openvpn' service { "$service": ensure => running, enable => true, From f7abd0938c85f0b61abadf6972dd5bc2391e0d4e Mon Sep 17 00:00:00 2001 From: Erik Geiger Date: Tue, 20 Aug 2019 10:26:06 +0200 Subject: [PATCH 3/6] fixing warnings from travis --- manifests/deploy/client.pp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/manifests/deploy/client.pp b/manifests/deploy/client.pp index a5b799bb..89aad8f1 100644 --- a/manifests/deploy/client.pp +++ b/manifests/deploy/client.pp @@ -41,7 +41,7 @@ if $facts['service_provider'] == 'systemd' { $service = "openvpn@${name}" - service { "$service": + service { ${service}: ensure => running, enable => true, provider => 'systemd', @@ -60,7 +60,7 @@ mode => '0644', content => template('openvpn/etc-rc.d-openvpn.erb'), } - service { "$service": + service { ${service}: ensure => running, enable => true, require => [ @@ -71,7 +71,7 @@ } else { $service = 'openvpn' - service { "$service": + service { ${service}: ensure => running, enable => true, hasrestart => true, From 663dbae8d959b16af250455b0ff0b26bad7d7ffa Mon Sep 17 00:00:00 2001 From: Erik Geiger Date: Tue, 20 Aug 2019 10:43:02 +0200 Subject: [PATCH 4/6] adding quotes, again.... --- manifests/deploy/client.pp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/manifests/deploy/client.pp b/manifests/deploy/client.pp index 89aad8f1..645eec09 100644 --- a/manifests/deploy/client.pp +++ b/manifests/deploy/client.pp @@ -41,7 +41,7 @@ if $facts['service_provider'] == 'systemd' { $service = "openvpn@${name}" - service { ${service}: + service { "${service}": ensure => running, enable => true, provider => 'systemd', @@ -60,7 +60,7 @@ mode => '0644', content => template('openvpn/etc-rc.d-openvpn.erb'), } - service { ${service}: + service { "${service}": ensure => running, enable => true, require => [ @@ -71,7 +71,7 @@ } else { $service = 'openvpn' - service { ${service}: + service { "${service}": ensure => running, enable => true, hasrestart => true, From 574129073f6ab9992dba8a9ff629155b5a1849b1 Mon Sep 17 00:00:00 2001 From: Erik Geiger Date: Tue, 27 Aug 2019 23:19:23 +0200 Subject: [PATCH 5/6] fixing travis warnings --- manifests/deploy/client.pp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/manifests/deploy/client.pp b/manifests/deploy/client.pp index 645eec09..898f8161 100644 --- a/manifests/deploy/client.pp +++ b/manifests/deploy/client.pp @@ -41,7 +41,7 @@ if $facts['service_provider'] == 'systemd' { $service = "openvpn@${name}" - service { "${service}": + service { $service: ensure => running, enable => true, provider => 'systemd', @@ -60,7 +60,7 @@ mode => '0644', content => template('openvpn/etc-rc.d-openvpn.erb'), } - service { "${service}": + service { $service: ensure => running, enable => true, require => [ @@ -71,7 +71,7 @@ } else { $service = 'openvpn' - service { "${service}": + service { $service: ensure => running, enable => true, hasrestart => true, From a69b664a1471f7d016f59a8a54e4f2388a0c9443 Mon Sep 17 00:00:00 2001 From: Erik Geiger Date: Wed, 28 Aug 2019 09:38:55 +0200 Subject: [PATCH 6/6] fixing issue with namespecific_rclink variable --- manifests/deploy/client.pp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/manifests/deploy/client.pp b/manifests/deploy/client.pp index 898f8161..470a739d 100644 --- a/manifests/deploy/client.pp +++ b/manifests/deploy/client.pp @@ -12,6 +12,7 @@ String $server, Boolean $manage_etc = true, Boolean $manage_service = true, + Boolean $namespecific_rclink = lookup('openvpn::namespecific_rclink', Boolean, 'first', false), ) { include openvpn::deploy::prepare @@ -48,7 +49,7 @@ require => File["${openvpn::deploy::prepare::etc_directory}/openvpn/${name}.conf"], } } - elsif $openvpn::namespecific_rclink { + elsif $namespecific_rclink { $service = "openvpn_${name}" file { "/usr/local/etc/rc.d/openvpn_${name}": ensure => link,