ejabberd: Lint fixes
This commit is contained in:
parent
4a4c5fe9b2
commit
ea49680a0f
1 changed files with 268 additions and 266 deletions
|
@ -66,112 +66,112 @@ class ejabberd(
|
||||||
$hosts=[$::homename],
|
$hosts=[$::homename],
|
||||||
$admins=[],
|
$admins=[],
|
||||||
$webhosts=undef,
|
$webhosts=undef,
|
||||||
$auth="internal",
|
$auth='internal',
|
||||||
$extauth=undef,
|
$extauth=undef,
|
||||||
$muclog_datadir=undef,
|
$muclog_datadir=undef,
|
||||||
$muclog_format="plaintext",
|
$muclog_format='plaintext',
|
||||||
$ssl_key="${::puppet_ssldir}/private_keys/${::homename}.pem",
|
$ssl_key="${::puppet_ssldir}/private_keys/${::homename}.pem",
|
||||||
$ssl_cert="${::puppet_ssldir}/certs/${::homename}.pem",
|
$ssl_cert="${::puppet_ssldir}/certs/${::homename}.pem",
|
||||||
$ssl_chain=undef,
|
$ssl_chain=undef,
|
||||||
$ldap_server=undef,
|
$ldap_server=undef,
|
||||||
$ldap_basedn=undef,
|
$ldap_basedn=undef,
|
||||||
$ldap_encrypt="tls",
|
$ldap_encrypt='tls',
|
||||||
$ldap_port="636",
|
$ldap_port='636',
|
||||||
$ldap_uid="uid",
|
$ldap_uid='uid',
|
||||||
$ldap_rootdn=undef,
|
$ldap_rootdn=undef,
|
||||||
$ldap_password=undef
|
$ldap_password=undef
|
||||||
) {
|
) {
|
||||||
|
|
||||||
include user::system
|
include user::system
|
||||||
realize(User["ejabberd"], Group["ejabberd"])
|
realize(User['ejabberd'], Group['ejabberd'])
|
||||||
|
|
||||||
if ! ($muclog_format in [ "html", "plaintext" ]) {
|
if ! ($muclog_format in [ 'html', 'plaintext' ]) {
|
||||||
fail("Invalid value ${muclog_format} for muclog_format")
|
fail("Invalid value ${muclog_format} for muclog_format")
|
||||||
}
|
}
|
||||||
|
|
||||||
case $::operatingsystem {
|
case $::operatingsystem {
|
||||||
"centos","redhat","fedora": {
|
'centos','redhat','fedora': {
|
||||||
$package_provider = "rpm"
|
$package_provider = 'rpm'
|
||||||
}
|
}
|
||||||
"debian","ubuntu": {
|
'debian','ubuntu': {
|
||||||
$package_provider = "dpkg"
|
$package_provider = 'dpkg'
|
||||||
}
|
}
|
||||||
default: {
|
default: {
|
||||||
fail("ejabberd not supported on ${::operatingsystem}.")
|
fail("ejabberd not supported on ${::operatingsystem}.")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if $package and versioncmp($package, "ejabberd-13.10") >= 0 {
|
if $package and versioncmp($package, 'ejabberd-13.10') >= 0 {
|
||||||
if $::operatingsystem != 'CentOS' {
|
if $::operatingsystem != 'CentOS' {
|
||||||
fail("ejabberd ${package} not supported on ${::operatingsystem}")
|
fail("ejabberd ${package} not supported on ${::operatingsystem}")
|
||||||
}
|
}
|
||||||
$config = "ejabberd.yml"
|
$config = 'ejabberd.yml'
|
||||||
$erlang_solutions = true
|
$erlang_solutions = true
|
||||||
} else {
|
} else {
|
||||||
$config = "ejabberd.cfg"
|
$config = 'ejabberd.cfg'
|
||||||
$erlang_solutions = false
|
$erlang_solutions = false
|
||||||
}
|
}
|
||||||
|
|
||||||
class { "erlang":
|
class { 'erlang':
|
||||||
erlang_solutions => $erlang_solutions,
|
erlang_solutions => $erlang_solutions,
|
||||||
before => Package["ejabberd"],
|
before => Package['ejabberd'],
|
||||||
}
|
}
|
||||||
|
|
||||||
if $collab == true {
|
if $collab == true {
|
||||||
if ! $package {
|
if ! $package {
|
||||||
fail("Must define package for collab integration")
|
fail('Must define package for collab integration')
|
||||||
}
|
}
|
||||||
|
|
||||||
file { "/usr/local/src/${package}":
|
file { "/usr/local/src/${package}":
|
||||||
ensure => present,
|
ensure => present,
|
||||||
mode => "0644",
|
mode => '0644',
|
||||||
owner => "root",
|
owner => 'root',
|
||||||
group => "root",
|
group => 'root',
|
||||||
source => "puppet:///files/packages/${package}",
|
source => "puppet:///files/packages/${package}",
|
||||||
before => Package["ejabberd"],
|
before => Package['ejabberd'],
|
||||||
}
|
}
|
||||||
|
|
||||||
Package["ejabberd"] {
|
Package['ejabberd'] {
|
||||||
provider => $package_provider,
|
provider => $package_provider,
|
||||||
source => "/usr/local/src/${package}",
|
source => "/usr/local/src/${package}",
|
||||||
}
|
}
|
||||||
|
|
||||||
exec { "usermod-ejabberd":
|
exec { 'usermod-ejabberd':
|
||||||
path => "/bin:/usr/bin:/sbin:/usr/sbin",
|
path => '/bin:/usr/bin:/sbin:/usr/sbin',
|
||||||
command => "usermod -a -G collab ejabberd",
|
command => 'usermod -a -G collab ejabberd',
|
||||||
unless => "id -n -G ejabberd | grep '\\bcollab\\b'",
|
unless => "id -n -G ejabberd | grep '\\bcollab\\b'",
|
||||||
require => [ User["ejabberd"], Group["collab"] ],
|
require => [ User['ejabberd'], Group['collab'] ],
|
||||||
notify => Service["ejabberd"],
|
notify => Service['ejabberd'],
|
||||||
}
|
}
|
||||||
|
|
||||||
Service["ejabberd"] {
|
Service['ejabberd'] {
|
||||||
require => Class["wiki::collab"],
|
require => Class['wiki::collab'],
|
||||||
}
|
}
|
||||||
|
|
||||||
if $muclog_datadir {
|
if $muclog_datadir {
|
||||||
file { $muclog_datadir:
|
file { $muclog_datadir:
|
||||||
ensure => directory,
|
ensure => directory,
|
||||||
mode => "2770",
|
mode => '2770',
|
||||||
owner => "collab",
|
owner => 'collab',
|
||||||
group => "collab",
|
group => 'collab',
|
||||||
require => User["collab"],
|
require => User['collab'],
|
||||||
before => Service["ejabberd"],
|
before => Service['ejabberd'],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
package { "ejabberd":
|
package { 'ejabberd':
|
||||||
ensure => $collab ? {
|
ensure => $collab ? {
|
||||||
true => latest,
|
true => latest,
|
||||||
default => installed,
|
default => installed,
|
||||||
},
|
},
|
||||||
require => [ User["ejabberd"], Group["ejabberd"] ],
|
require => [ User['ejabberd'], Group['ejabberd'] ],
|
||||||
}
|
}
|
||||||
|
|
||||||
service { "ejabberd":
|
service { 'ejabberd':
|
||||||
ensure => running,
|
ensure => running,
|
||||||
enable => true,
|
enable => true,
|
||||||
status => "ejabberdctl status >/dev/null",
|
status => 'ejabberdctl status >/dev/null',
|
||||||
}
|
}
|
||||||
|
|
||||||
include ssl
|
include ssl
|
||||||
|
@ -179,73 +179,73 @@ class ejabberd(
|
||||||
file { "${ssl::private}/ejabberd.key":
|
file { "${ssl::private}/ejabberd.key":
|
||||||
ensure => present,
|
ensure => present,
|
||||||
source => $ssl_key,
|
source => $ssl_key,
|
||||||
mode => "0600",
|
mode => '0600',
|
||||||
owner => "root",
|
owner => 'root',
|
||||||
group => "root",
|
group => 'root',
|
||||||
notify => Exec["generate-ejabberd-pem"],
|
notify => Exec['generate-ejabberd-pem'],
|
||||||
}
|
}
|
||||||
file { "${ssl::certs}/ejabberd.crt":
|
file { "${ssl::certs}/ejabberd.crt":
|
||||||
ensure => present,
|
ensure => present,
|
||||||
source => $ssl_cert,
|
source => $ssl_cert,
|
||||||
mode => "0644",
|
mode => '0644',
|
||||||
owner => "root",
|
owner => 'root',
|
||||||
group => "root",
|
group => 'root',
|
||||||
notify => Exec["generate-ejabberd-pem"],
|
notify => Exec['generate-ejabberd-pem'],
|
||||||
}
|
}
|
||||||
if $ssl_chain {
|
if $ssl_chain {
|
||||||
file { "${ssl::certs}/ejabberd.chain.crt":
|
file { "${ssl::certs}/ejabberd.chain.crt":
|
||||||
ensure => present,
|
ensure => present,
|
||||||
source => $ssl_chain,
|
source => $ssl_chain,
|
||||||
mode => "0644",
|
mode => '0644',
|
||||||
owner => "root",
|
owner => 'root',
|
||||||
group => "root",
|
group => 'root',
|
||||||
notify => Exec["generate-ejabberd-pem"],
|
notify => Exec['generate-ejabberd-pem'],
|
||||||
}
|
}
|
||||||
$cert_files = "${ssl::private}/ejabberd.key ${ssl::certs}/ejabberd.crt ${ssl::certs}/ejabberd.chain.crt"
|
$cert_files = "${ssl::private}/ejabberd.key ${ssl::certs}/ejabberd.crt ${ssl::certs}/ejabberd.chain.crt"
|
||||||
} else {
|
} else {
|
||||||
$cert_files = "${ssl::private}/ejabberd.key ${ssl::certs}/ejabberd.crt"
|
$cert_files = "${ssl::private}/ejabberd.key ${ssl::certs}/ejabberd.crt"
|
||||||
}
|
}
|
||||||
|
|
||||||
exec { "generate-ejabberd-pem":
|
exec { 'generate-ejabberd-pem':
|
||||||
path => "/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin",
|
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin',
|
||||||
command => "/bin/sh -c 'umask 077 ; cat ${cert_files} > /etc/ejabberd/ejabberd.pem'",
|
command => "/bin/sh -c 'umask 077 ; cat ${cert_files} > /etc/ejabberd/ejabberd.pem'",
|
||||||
refreshonly => true,
|
refreshonly => true,
|
||||||
before => File["/etc/ejabberd/ejabberd.pem"],
|
before => File['/etc/ejabberd/ejabberd.pem'],
|
||||||
require => Package["ejabberd"],
|
require => Package['ejabberd'],
|
||||||
notify => Service["ejabberd"],
|
notify => Service['ejabberd'],
|
||||||
}
|
}
|
||||||
|
|
||||||
file { "/etc/ejabberd/ejabberd.pem":
|
file { '/etc/ejabberd/ejabberd.pem':
|
||||||
ensure => present,
|
ensure => present,
|
||||||
mode => "0640",
|
mode => '0640',
|
||||||
owner => "root",
|
owner => 'root',
|
||||||
group => "ejabberd",
|
group => 'ejabberd',
|
||||||
require => Package["ejabberd"],
|
require => Package['ejabberd'],
|
||||||
}
|
}
|
||||||
|
|
||||||
file { "/etc/ejabberd/${config}":
|
file { "/etc/ejabberd/${config}":
|
||||||
ensure => present,
|
ensure => present,
|
||||||
mode => "0640",
|
mode => '0640',
|
||||||
owner => "root",
|
owner => 'root',
|
||||||
group => "ejabberd",
|
group => 'ejabberd',
|
||||||
content => template("ejabberd/${config}.erb"),
|
content => template("ejabberd/${config}.erb"),
|
||||||
require => Package["ejabberd"],
|
require => Package['ejabberd'],
|
||||||
notify => Service["ejabberd"],
|
notify => Service['ejabberd'],
|
||||||
}
|
}
|
||||||
|
|
||||||
case $::operatingsystem {
|
case $::operatingsystem {
|
||||||
"debian", "ubuntu": {
|
'debian', 'ubuntu': {
|
||||||
augeas { "set-ejabberd-default":
|
augeas { 'set-ejabberd-default':
|
||||||
context => "/files/etc/default/ejabberd",
|
context => '/files/etc/default/ejabberd',
|
||||||
changes => [ "set POLL true", "set SMP auto" ],
|
changes => [ 'set POLL true', 'set SMP auto' ],
|
||||||
require => Package["ejabberd"],
|
require => Package['ejabberd'],
|
||||||
notify => Service["ejabberd"],
|
notify => Service['ejabberd'],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
default: { }
|
default: { }
|
||||||
}
|
}
|
||||||
|
|
||||||
$htdocs = "/usr/share/ejabberd/htdocs"
|
$htdocs = '/usr/share/ejabberd/htdocs'
|
||||||
|
|
||||||
if $webhosts {
|
if $webhosts {
|
||||||
include apache::mod::proxy
|
include apache::mod::proxy
|
||||||
|
@ -254,28 +254,28 @@ class ejabberd(
|
||||||
|
|
||||||
file { $htdocs:
|
file { $htdocs:
|
||||||
ensure => directory,
|
ensure => directory,
|
||||||
mode => "0755",
|
mode => '0755',
|
||||||
owner => "root",
|
owner => 'root',
|
||||||
group => "root",
|
group => 'root',
|
||||||
require => Package["ejabberd"],
|
require => Package['ejabberd'],
|
||||||
}
|
}
|
||||||
|
|
||||||
file { "${htdocs}/.htaccess":
|
file { "${htdocs}/.htaccess":
|
||||||
ensure => present,
|
ensure => present,
|
||||||
mode => "0644",
|
mode => '0644',
|
||||||
owner => "root",
|
owner => 'root',
|
||||||
group => "root",
|
group => 'root',
|
||||||
content => template("ejabberd/htaccess.erb"),
|
content => template('ejabberd/htaccess.erb'),
|
||||||
}
|
}
|
||||||
|
|
||||||
apache::configfile { "ejabberd.conf":
|
apache::configfile { 'ejabberd.conf':
|
||||||
http => false,
|
http => false,
|
||||||
source => "puppet:///modules/ejabberd/ejabberd-httpd.conf",
|
source => 'puppet:///modules/ejabberd/ejabberd-httpd.conf',
|
||||||
}
|
}
|
||||||
|
|
||||||
selinux::manage_port { "5280":
|
selinux::manage_port { '5280':
|
||||||
type => "http_port_t",
|
type => 'http_port_t',
|
||||||
proto => "tcp",
|
proto => 'tcp',
|
||||||
}
|
}
|
||||||
|
|
||||||
ejabberd::configwebhost { $webhosts:
|
ejabberd::configwebhost { $webhosts:
|
||||||
|
@ -305,30 +305,32 @@ define ejabberd::configwebhost($htdocs) {
|
||||||
# $datadir:
|
# $datadir:
|
||||||
# Path where to store the backups. Defaults to "/srv/ejabberd-backup".
|
# Path where to store the backups. Defaults to "/srv/ejabberd-backup".
|
||||||
#
|
#
|
||||||
class ejabberd::backup($datadir="/srv/ejabberd-backup") {
|
class ejabberd::backup(
|
||||||
|
$datadir='/srv/ejabberd-backup',
|
||||||
|
) {
|
||||||
|
|
||||||
file { $datadir:
|
file { $datadir:
|
||||||
ensure => directory,
|
ensure => directory,
|
||||||
mode => "0700",
|
mode => '0700',
|
||||||
owner => "root",
|
owner => 'root',
|
||||||
group => "root",
|
group => 'root',
|
||||||
}
|
}
|
||||||
|
|
||||||
file { "/usr/local/sbin/ejabberd-backup":
|
file { '/usr/local/sbin/ejabberd-backup':
|
||||||
ensure => present,
|
ensure => present,
|
||||||
mode => "0755",
|
mode => '0755',
|
||||||
owner => "root",
|
owner => 'root',
|
||||||
group => "root",
|
group => 'root',
|
||||||
content => template("ejabberd/ejabberd-backup.erb"),
|
content => template('ejabberd/ejabberd-backup.erb'),
|
||||||
}
|
}
|
||||||
|
|
||||||
cron { "ejabberd-backup":
|
cron { 'ejabberd-backup':
|
||||||
ensure => present,
|
ensure => present,
|
||||||
command => "/usr/local/sbin/ejabberd-backup",
|
command => '/usr/local/sbin/ejabberd-backup',
|
||||||
user => "root",
|
user => 'root',
|
||||||
minute => "15",
|
minute => '15',
|
||||||
hour => "21",
|
hour => '21',
|
||||||
require => File[$datadir, "/usr/local/sbin/ejabberd-backup"],
|
require => File[$datadir, '/usr/local/sbin/ejabberd-backup'],
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue