41 lines
1.3 KiB
Markdown
41 lines
1.3 KiB
Markdown
# `finallycoffee.matrix.synapse` ansible role
|
|
|
|
## Configuration
|
|
|
|
### Required
|
|
|
|
The following variables need to be populated:
|
|
|
|
- `synapse_domain` - the domain this homeserver should be authoritative for.
|
|
- `synapse_signing_key` - the signing key synapse should use.
|
|
Set either this or `synapse_role_generate_signing_key: true`.
|
|
|
|
## Other
|
|
|
|
- [Configure your database](docs/database.md)
|
|
- [Configure your listeners](docs/listeners.md)
|
|
- [Configure logging](docs/logging.md)
|
|
|
|
## Deployment methods
|
|
|
|
- `docker`
|
|
- `podman`
|
|
- `virtualenv` - Python virtual env supervised with `systemd`
|
|
|
|
Set `synapse_deployment_method` to one of the supported deployment methods.
|
|
The current default is `docker`.
|
|
|
|
### `virtualenv` deployment method
|
|
|
|
This deployment method installs a `systemd` service called `synapse.service` to
|
|
control the homeserver process. The service depends on the `network.target` by
|
|
default (see [`synapse_systemd_unit_after`](synapse/main/systemd.yml)), and
|
|
uses the `default.target` as it's `WantedBy`
|
|
(see [`synapse_systemd_install_wanted_by`](synapse/main/systemd.yml)).
|
|
|
|
To only start synapse after, for example, services for redis and postgresql are up,
|
|
set `synapse_systemd_unit_wants: [ "postgresql.service", "redis.service" ]`.
|
|
|
|
> [!NOTE]
|
|
> Requires `systemd >= 245` on the target machine
|