diff --git a/abusesa/manifests/init.pp b/abusesa/manifests/init.pp index da0f383..0d4a327 100644 --- a/abusesa/manifests/init.pp +++ b/abusesa/manifests/init.pp @@ -1,5 +1,10 @@ # Install AbuseSA. # +# === Global variables +# +# $abusesa_datadir +# AbuseSA home directory. Defaults to /var/lib/abusesa. +# class abusesa { case $::operatingsystem { @@ -26,6 +31,32 @@ class abusesa { } } + include user::system + realize(User["abusesa"], Group["abusesa"]) + + if $abusesa_datadir { + file { $abusesa_datadir: + ensure => directory, + mode => "2770", + owner => "abusesa", + group => "abusesa", + require => User["abusesa"], + } + file { "/var/lib/abusesa": + ensure => link, + target => $abusesa_datadir, + require => File[$abusesa_datadir], + } + } else { + file { "/var/lib/abusesa": + ensure => directory, + mode => "2770", + owner => "abusesa", + group => "abusesa", + require => User["abusesa"], + } + } + file { "/usr/local/src/abusesa.tar.gz": ensure => present, mode => "0644", diff --git a/user/manifests/init.pp b/user/manifests/init.pp index 65e1880..9aa7e64 100644 --- a/user/manifests/init.pp +++ b/user/manifests/init.pp @@ -245,6 +245,21 @@ class user::system { require => Group["etherpad"], } + # AbuseSA + @group { "abusesa": + ensure => present, + gid => 817, + } + @user { "abusesa": + ensure => present, + uid => 817, + gid => 817, + comment => "Service AbuseSA", + home => "/var/lib/abusesa", + shell => "/sbin/nologin", + require => Group["abusesa"], + } + }