diff options
author | Micah <micah@leap.se> | 2016-07-12 16:46:21 -0400 |
---|---|---|
committer | Micah <micah@leap.se> | 2016-07-12 16:46:21 -0400 |
commit | 04279dd8d1390d61d696d2c14817199304ccd4d8 (patch) | |
tree | bd6b3cf6f612f822ca3aa6823287f87f7c784390 /puppet/modules/stunnel/manifests/init.pp | |
parent | 297fadc8e6ad4729589d4ec21683f05a1e50bdf9 (diff) |
git subrepo clone https://leap.se/git/puppet_stunnel puppet/modules/stunnel
subrepo:
subdir: "puppet/modules/stunnel"
merged: "523612f"
upstream:
origin: "https://leap.se/git/puppet_stunnel"
branch: "master"
commit: "523612f"
git-subrepo:
version: "0.3.0"
origin: "https://github.com/ingydotnet/git-subrepo"
commit: "1e79595"
Change-Id: If384c84c99d9cabc67d2b4b9d7d2fbfa4a47550a
Diffstat (limited to 'puppet/modules/stunnel/manifests/init.pp')
-rw-r--r-- | puppet/modules/stunnel/manifests/init.pp | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/puppet/modules/stunnel/manifests/init.pp b/puppet/modules/stunnel/manifests/init.pp new file mode 100644 index 00000000..544ac04e --- /dev/null +++ b/puppet/modules/stunnel/manifests/init.pp @@ -0,0 +1,65 @@ +# +# stunnel puppet module +# +# Copyright 2009, Riseup Networks <micah@riseup.net> +# +# +# This program is free software; you can redistribute +# it and/or modify it under the terms of the GNU +# General Public License version 3 as published by +# the Free Software Foundation. +# +# 1. include stunnel: this will automatically include stunnel::debian, +# which automatically includes stunnel::linux, which automatically +# includes stunnel::base +# 2. stunnel::client allows you to configure different /etc/stunnel/*.conf files +# to provide various stunnel configurations + +# TODO: warn on cert/key issues, fail on false accept? + +class stunnel ( + $ensure_version = 'present', + $startboot = '1', + $default_extra = '', + $cluster = '' ) +{ + + case $::operatingsystem { + debian: { class { 'stunnel::debian': } } + centos: { class { 'stunnel::centos': } } + default: { class { 'stunnel::default': } } + } + + $stunnel_staging = "${::puppet_vardir}/stunnel4" + $stunnel_compdir = "${stunnel_staging}/configs" + + file { + [ $stunnel_staging, "${stunnel_staging}/bin" ]: + ensure => directory, + owner => 0, + group => 0, + mode => '0750'; + + "${stunnel_staging}/configs": + ensure => directory, + owner => 0, + group => 0, + mode => '0750', + recurse => true, + purge => true, + force => true, + source => undef, + notify => Exec['refresh_stunnel']; + + "${stunnel_staging}/bin/refresh_stunnel.sh": + owner => 0, + group => 0, + mode => '0755', + content => template('stunnel/refresh_stunnel.sh.erb'); + } + + exec { 'refresh_stunnel': + command => "${stunnel_staging}/bin/refresh_stunnel.sh", + require => [ Package['stunnel4'], File['/etc/default/stunnel4'] ] + } +} |