Getting started¶
Default configuration¶
The configuration is split into 3 basic parameters, this is because of limitation of YAML and easier representation.
- prosody__*_config_global
- prosody__*_config_components
- prosody__*_config_virtual_hosts
By default there are two components active prosody__http_upload
prosody__muc
Set this varables to false to disable the specific component.
Domains¶
The default virtual host uses prosody__domain
as domain.
The components uses two subdomains: conference.`prosody__domain and upload.`prosody__domain`
Example inventory¶
To enable Prosody server support on a host, it needs to be included in the Ansible inventory in a specific group:
[debops_service_prosody]
hostname
Example playbook¶
If you are using this role without DebOps, here's an example Ansible playbook
that uses the debops.prosody
role:
---
- name: Manage Prosody
collections: [ 'debops.debops', 'debops.roles01',
'debops.roles02', 'debops.roles03' ]
hosts: [ 'debops_service_prosody' ]
become: True
environment: '{{ inventory__environment | d({})
| combine(inventory__group_environment | d({}))
| combine(inventory__host_environment | d({})) }}'
roles:
- role: ferm
tags: [ 'role::ferm', 'skip::ferm' ]
ferm__dependent_rules:
- '{{ prosody__ferm__dependent_rules }}'
- role: prosody
tags: [ 'role::prosody', 'skip::prosody' ]
Ansible tags¶
You can use Ansible --tags
or --skip-tags
parameters to limit what
tasks are performed during Ansible run. This can be used after a host was first
configured to speed up playbook execution, when you are sure that most of the
configuration is already in the desired state.
Available role tags:
role::prosody
- Main role tag, should be used in the playbook to execute all of the role tasks as well as role dependencies.
role::ferm
- Role tag for configure the firewall ferm.