Added ejabberd collab customizations

This commit is contained in:
Ossi Salmi 2012-01-26 11:23:28 +02:00
parent c01a2afb9b
commit ed87bf4941

View file

@ -145,6 +145,61 @@ class ejabberd {
} }
# Install ejabberd with collab customizations.
#
# === Global variables
#
# $ejabberd_package:
# Name of ejabberd package with collab patches.
#
class ejabberd::collab inherits ejabberd {
if !$ejabberd_package {
fail("Must define \$ejabberd_package")
}
exec { "usermod-ejabberd":
path => "/bin:/usr/bin:/sbin:/usr/sbin",
command => "usermod -a -G collab ejabberd",
unless => "id -n -G ejabberd | grep '\\bcollab\\b'",
require => [ User["ejabberd"], Group["collab"] ],
}
case $operatingsystem {
"centos", "fedora": {
package { ["erlang", "erlang-esasl"]:
ensure => installed,
before => Package["ejabberd"],
}
}
"debian", "ubuntu": {
package { ["erlang", "erlang-base"]:
ensure => installed,
before => Package["ejabberd"],
}
}
}
file { "/usr/local/src/${ejabberd_package}":
ensure => present,
mode => 0644,
owner => "root",
group => "root",
source => "puppet:///files/packages/${ejabberd_package}",
before => Package["ejabberd"],
}
Package["ejabberd"] {
provider => $operatingsystem ? {
"centos" => "rpm",
"fedora" => "rpm",
"debian" => "dpkg",
"ubuntu" => "dpkg",
},
source => "/usr/local/src/${ejabberd_package}",
}
}
# Install ejabberd backup cron script. # Install ejabberd backup cron script.
# #
# === Global variables # === Global variables