matrix-docker-ansible-deploy/docs/configuring-playbook.md
Slavi Pantaleev e46ba5deba Add matrix-appservice-kakaotalk support
Adds support for: https://src.miscworks.net/fair/matrix-appservice-kakaotalk

This is pretty similar to
https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1977
which just appeared, but has mostly been done independently.

I've taken some inspiration and did some fixups based on that PR.
Thanks to https://github.com/hnarjis for taking the time to contribute!

Notable differences between this branch compared to that PR:

- better naming and documentation around the "configuration" variables
- no unnecessary (5 sec.) intentional delay when starting `matrix-appservice-kakaotalk-node.service`
- stores configuration in `config/`, not in `data/`
- passes configuration as read-only and starts the bridge with (`--no-update`) to ensure no changes are made to it
- starts containers more securely - with `matrix:matrix` user:group (not `root`) and
  reduced capabilities (`--cap-drop=ALL`)
- uses `tcp` for communication between the "node" and the appservice (simpler than sharing unix sockets)
- `registration.yaml` which is closer to the one generated by `matrix-appservice-kakaotalk` (no `de.sorunome.msc2409.push_ephemeral` stuff, etc.)
- `registration.yaml` which is more customizable (customizable bot username and prefix for puppets - see `matrix_appservice_kakaotalk_appservice_bot_username` and `matrix_appservice_kakaotalk_user_prefix`)
- less fragile and more extensible bridge permissions configuration via `matrix_appservice_kakaotalk_bridge_permissions`. Doing `{% if matrix_admin %}` in the bridge configuration sometimes causes syntax problems (I hit some myself) and is not ideal. Other bridges should be redone as well.
- configurable command prefix for the bridge, instead of hardcoding `!kt` (see `matrix_appservice_kakaotalk_command_prefix`)
- logging that is more consistent with the rest of the playbook (console / journald only, no logging to files), as well as configurable log level (via `matrix_appservice_kakaotalk_logging_level`)
- somewhat more detailed documentation (`docs/configuring-playbook-bridge-appservice-kakaotalk.md`)
- removed some dead code (data relocation tasks from `tasks/setup_install.yml`, as well as likely unnecessary SQLite -> Postgres migration)
2022-07-25 16:01:15 +03:00

8.3 KiB

Configuring the Ansible playbook

To configure the playbook, you need to have done the following things:

You can then follow these steps inside the playbook directory:

  1. create a directory to hold your configuration (mkdir inventory/host_vars/matrix.<your-domain>)

  2. copy the sample configuration file (cp examples/vars.yml inventory/host_vars/matrix.<your-domain>/vars.yml)

  3. edit the configuration file (inventory/host_vars/matrix.<your-domain>/vars.yml) to your liking. You may also take a look at the various roles/ROLE_NAME_HERE/defaults/main.yml files and see if there's something you'd like to copy over and override in your vars.yml configuration file.

  4. copy the sample inventory hosts file (cp examples/hosts inventory/hosts)

  5. edit the inventory hosts file (inventory/hosts) to your liking

For a basic Matrix installation, that's all you need. For a more custom setup, see the Other configuration options below.

When you're done with all the configuration you'd like to do, continue with Installing.

Other configuration options

Additional useful services

Core service adjustments

Server connectivity

Bridging other networks

Bots

Backups

Other specialized services