ejabberd: Add support for opencollab-ejabberd on Ubuntu

This commit is contained in:
Ossi Salmi 2016-09-09 00:10:50 +03:00
parent 17d0f6ccbf
commit 7d2005eaad

View file

@ -5,6 +5,10 @@
# $collab:
# Boolean for enabling collab integration. Defaults to false.
#
# $erlang_solutions:
# Boolean for automatically enabling Erlang Solutions repository.
# Defaults to true.
#
# $package:
# Ejabberd package source. Required for collab integration.
#
@ -78,6 +82,7 @@
#
class ejabberd(
$collab=false,
$erlang_solutions=true,
$package=undef,
$hosts=[$::homename],
$admins=undef,
@ -113,30 +118,35 @@ class ejabberd(
case $::operatingsystem {
'centos','redhat','fedora': {
$package_provider = 'rpm'
if $package and versioncmp($package, 'ejabberd-13.10') >= 0 {
$config = 'ejabberd.yml'
$erlang_solutions_real = $erlang_solutions
package { 'libyaml':
ensure => installed,
before => Package['ejabberd'],
}
} else {
$config = 'ejabberd.cfg'
$erlang_solutions_real = false
}
}
'debian','ubuntu': {
$package_provider = 'dpkg'
if $package and versioncmp($package, 'ejabberd_13.10') >= 0 {
$config = 'ejabberd.yml'
$erlang_solutions_real = $erlang_solutions
} else {
$config = 'ejabberd.cfg'
$erlang_solutions_real = false
}
}
default: {
fail("ejabberd not supported on ${::operatingsystem}.")
}
}
if $package and versioncmp($package, 'ejabberd-13.10') >= 0 {
if $::operatingsystem != 'CentOS' {
fail("ejabberd ${package} not supported on ${::operatingsystem}")
}
$config = 'ejabberd.yml'
$erlang_solutions = true
package { 'libyaml':
ensure => installed,
before => Package['ejabberd'],
}
} else {
$config = 'ejabberd.cfg'
$erlang_solutions = false
}
class { 'erlang':
erlang_solutions => $erlang_solutions,
before => Package['ejabberd'],