Skip to content

Commit 33c6712

Browse files
committed
Manage /etc/default file and set autostart
1 parent d15f39a commit 33c6712

File tree

3 files changed

+43
-0
lines changed

3 files changed

+43
-0
lines changed

manifests/init.pp

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
$openvpn_dir = $openvpn::params::openvpn_dir,
77
$package_name = $openvpn::params::package_name,
88
$manage_service = $openvpn::params::manage_service,
9+
$autostart_all = $openvpn::params::autostart_all
910
) inherits openvpn::params {
1011

1112
package { $package_name:
@@ -26,5 +27,20 @@
2627
enable => true,
2728
require => File[$openvpn_dir],
2829
}
30+
31+
if $::osfamily == 'Debian' {
32+
concat { '/etc/default/openvpn':
33+
owner => root,
34+
group => 0,
35+
mode => '0644',
36+
warn => true,
37+
}
38+
39+
concat::fragment { 'openvpn.default.header':
40+
content => template('openvpn/etc-default-openvpn.erb'),
41+
target => '/etc/default/openvpn',
42+
order => '01',
43+
}
44+
}
2945
}
3046
}

manifests/params.pp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
$openvpn_dir = '/usr/local/etc/openvpn'
1010
$package_name = 'security/openvpn'
1111
$manage_service = true
12+
$autostart_all = true
1213
$openvpn_user = undef
1314
$openvpn_group = undef
1415
$openssl = '/usr/bin/openssl'
@@ -17,6 +18,7 @@
1718
$openvpn_dir = '/etc/openvpn'
1819
$package_name = 'openvpn'
1920
$manage_service = false
21+
$autostart_all = false
2022
$openvpn_user = '_openvpn'
2123
$openvpn_group = '_openvpn'
2224
if ( versioncmp($::kernelversion, '5.7') < 0 ) {
@@ -29,6 +31,7 @@
2931
$openvpn_dir = '/etc/openvpn'
3032
$package_name = 'openvpn'
3133
$manage_service = true
34+
$autostart_all = true
3235
$openvpn_user = 'nobody'
3336
$openvpn_group = 'nobody'
3437
$openssl = '/usr/bin/openssl'

templates/etc-default-openvpn.erb

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# This is the configuration file for /etc/init.d/openvpn
2+
3+
#
4+
# Start only these VPNs automatically via init script.
5+
# Allowed values are "all", "none" or space separated list of
6+
# names of the VPNs. If empty, "all" is assumed.
7+
#
8+
#AUTOSTART="all"
9+
#AUTOSTART="none"
10+
#AUTOSTART="home office"
11+
#
12+
# Refresh interval (in seconds) of default status files
13+
# located in /var/run/openvpn.$NAME.status
14+
# Defaults to 10, 0 disables status file generation
15+
#
16+
#STATUSREFRESH=10
17+
#STATUSREFRESH=0
18+
# Optional arguments to openvpn's command line
19+
OPTARGS=""
20+
<% if scope.lookupvar('::openvpn::autostart_all') -%>
21+
AUTOSTART="all"
22+
<% else -%>
23+
AUTOSTART=""
24+
<% end -%>

0 commit comments

Comments
 (0)