diff options
author | varac <varacanero@zeromail.org> | 2016-06-09 17:33:38 +0200 |
---|---|---|
committer | varac <varacanero@zeromail.org> | 2016-06-14 12:05:18 +0200 |
commit | d48c5719fc050d806510fd282471b8c3b48fdc05 (patch) | |
tree | fcfa57ab3921d004db2231a3b29f8a8d1370c0ec /puppet/modules/rsyslog/manifests/database.pp | |
parent | e9ea918e8dd0abc8eb72a119c0f413117e6467bf (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.git"
commit: "cb2995b"
Diffstat (limited to 'puppet/modules/rsyslog/manifests/database.pp')
-rw-r--r-- | puppet/modules/rsyslog/manifests/database.pp | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/puppet/modules/rsyslog/manifests/database.pp b/puppet/modules/rsyslog/manifests/database.pp new file mode 100644 index 00000000..fe6d6ac8 --- /dev/null +++ b/puppet/modules/rsyslog/manifests/database.pp @@ -0,0 +1,57 @@ +# == Class: rsyslog::database +# +# Full description of class role here. +# +# === Parameters +# +# [*backend*] - Which backend server to use (mysql|pgsql) +# [*server*] - Server hostname +# [*database*] - Database name +# [*username*] - Database username +# [*password*] - Database password +# +# === Variables +# +# === Examples +# +# class { 'rsyslog::database': +# backend => 'mysql', +# server => 'localhost', +# database => 'mydb', +# username => 'myuser', +# password => 'mypass', +# } +# +class rsyslog::database ( + $backend, + $server, + $database, + $username, + $password +) inherits rsyslog { + + $db_module = "om${backend}" + $db_conf = "${rsyslog::rsyslog_d}${backend}.conf" + + case $backend { + mysql: { $db_package = $rsyslog::mysql_package_name } + pgsql: { $db_package = $rsyslog::pgsql_package_name } + default: { fail("Unsupported backend: ${backend}. Only MySQL (mysql) and PostgreSQL (pgsql) are supported.") } + } + + package { $db_package: + ensure => $rsyslog::package_status, + before => File[$db_conf], + } + + file { $db_conf: + ensure => present, + owner => 'root', + group => $rsyslog::run_group, + mode => '0600', + content => template("${module_name}/database.conf.erb"), + require => Class['rsyslog::config'], + notify => Class['rsyslog::service'], + } + +} |