diff options
author | Micah <micah@leap.se> | 2016-07-12 16:46:28 -0400 |
---|---|---|
committer | Micah <micah@leap.se> | 2016-07-12 16:46:28 -0400 |
commit | 1e1e25286b64790141c9627f81b50f579b13b719 (patch) | |
tree | 0bddd4510b108b4f2e8a5abc0332972efeedd1da /puppet/modules/rsyslog/manifests/server.pp | |
parent | 850a14b59444737f703686d0d1996bf09ab08e2b (diff) |
git subrepo clone https://leap.se/git/puppet_rsyslog puppet/modules/rsyslog
subrepo:
subdir: "puppet/modules/rsyslog"
merged: "b8ef11c"
upstream:
origin: "https://leap.se/git/puppet_rsyslog"
branch: "master"
commit: "b8ef11c"
git-subrepo:
version: "0.3.0"
origin: "https://github.com/ingydotnet/git-subrepo"
commit: "1e79595"
Change-Id: Iee06502c6df609f1a261410742360cec8694dab5
Diffstat (limited to 'puppet/modules/rsyslog/manifests/server.pp')
-rw-r--r-- | puppet/modules/rsyslog/manifests/server.pp | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/puppet/modules/rsyslog/manifests/server.pp b/puppet/modules/rsyslog/manifests/server.pp new file mode 100644 index 00000000..13ee56de --- /dev/null +++ b/puppet/modules/rsyslog/manifests/server.pp @@ -0,0 +1,70 @@ +# == Class: rsyslog::server +# +# This class configures rsyslog for a server role. +# +# === Parameters +# +# [*enable_tcp*] +# [*enable_udp*] +# [*enable_onefile*] +# [*server_dir*] +# [*custom_config*] +# [*high_precision_timestamps*] +# [*ssl_ca*] +# [*ssl_cert*] +# [*ssl_key*] +# +# === Variables +# +# === Examples +# +# Defaults +# +# class { 'rsyslog::server': } +# +# Create seperate directory per host +# +# class { 'rsyslog::server': +# custom_config => 'rsyslog/server-hostname.conf.erb' +# } +# +class rsyslog::server ( + $enable_tcp = true, + $enable_udp = true, + $enable_onefile = false, + $server_dir = '/srv/log/', + $custom_config = undef, + $port = '514', + $high_precision_timestamps = false, + $ssl_ca = undef, + $ssl_cert = undef, + $ssl_key = undef, + $rotate = undef +) inherits rsyslog { + + ### Logrotate policy + $logpath = $rotate ? { + 'year' => '/%$YEAR%/', + 'YEAR' => '/%$YEAR%/', + 'month' => '/%$YEAR%/%$MONTH%/', + 'MONTH' => '/%$YEAR%/%$MONTH%/', + 'day' => '/%$YEAR%/%$MONTH%/%$DAY%/', + 'DAY' => '/%$YEAR%/%$MONTH%/%$DAY%/', + default => '/', + } + + if $custom_config { + $real_content = template($custom_config) + } else { + $real_content = template("${module_name}/server-default.conf.erb") + } + + rsyslog::snippet { $rsyslog::server_conf: + ensure => present, + content => $real_content, + } + + if $rsyslog::ssl and (!$enable_tcp or $ssl_ca == undef or $ssl_cert == undef or $ssl_key == undef) { + fail('You need to define all the ssl options and enable tcp in order to use SSL.') + } +} |