Forge Home

prosody

Simple Puppet module for managing the Prosody Jabber/XMPP server

7,786 downloads

7,786 latest version

5.0 quality score

Version information

  • 1.0.0 (latest)
released Apr 26th 2021
This version is compatible with:
  • Puppet Enterprise 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x
  • Puppet >= 6.1.0 < 8

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'puppet-prosody', '1.0.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add puppet-prosody
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install puppet-prosody --version 1.0.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

puppet/prosody — version 1.0.0 Apr 26th 2021

Prosody

Build Status

Puppet module for the Prosody Jabber/XMPP server.

This module is a fork of rtyler/puppet-prosody because the upstream is dead. A bunch of features were added and bugs were fixed.

If you want to use Prosody in a production environment, this is the Puppet module to use.

Using

Note: This module has currently been tested on CentOS 7, Ubuntu and OpenBSD.

node myserver {

  class { 'prosody':
    user              => 'prosody',
    group             => 'prosody',
    community_modules => ['mod_auth_ldap'],
    authentication    => 'ldap',
    components => {
      'conference'        => {
        'name' => 'conf.example.org',
        'type' =>'muc',
      },
      'bridge'            => {
        'name'   => 'bridge.example.org',
        'secret' =>  'mysupersecret',
      },
      'focus'             => {
        'name'   => 'focus.example.org',
        'secret' => 'anothersupersecret',
      }
    },
    custom_options    => {
                            'ldap_base'     => 'OU="accounts",DC="mydomain",DC="com"',
                            'ldap_server'   => 'ldapserver1:636 ldapserver2:636',
                            'ldap_rootdn'   => 'DN="prosody",OU="accounts",DC="mydomain",DC="com"',
                            'ldap_password' => hiera(prosody-ldap-password),
                            'ldap_scope'    => 'subtree',
                            'ldap_tls'      => 'true',
                          },
  }

  prosody::virtualhost {
    'mydomain.com' :
      ensure   => present,
      ssl_key  => '/etc/ssl/key/mydomain.com.key',
      ssl_cert => '/etc/ssl/crt/mydomain.com.crt',
  }

  prosody::user { 'foo':
    host => 'mydomain.com',
    pass => 'itsasecret',
  }
}

Support

Please file bugs and enhancement requests in the GitHub issue tracker