parent
4b1e9a4827
commit
68ed2ebefa
@ -0,0 +1,16 @@
|
||||
# Setting up Synapse Simple Antispam (optional, advanced)
|
||||
|
||||
The playbook can install and configure [synapse-simple-antispam](https://github.com/t2bot/synapse-simple-antispam) for you.
|
||||
|
||||
See that project's documentation to learn what it does and why it might be useful to you.
|
||||
In short, it lets you fight invite-spam by automatically blocking invitiations from a list of servers specified by you (blacklisting).
|
||||
|
||||
If you decide that you'd like to let this playbook install it for you, you need some configuration like this:
|
||||
|
||||
```yaml
|
||||
matrix_synapse_ext_spam_checker_synapse_simple_antispam_enabled: true
|
||||
|
||||
matrix_synapse_ext_spam_checker_synapse_simple_antispam_config_blocked_homeservers:
|
||||
- example.com
|
||||
- another.com
|
||||
```
|
@ -0,0 +1,7 @@
|
||||
---
|
||||
|
||||
- import_tasks: "{{ role_path }}/tasks/ext/synapse-simple-antispam/setup_install.yml"
|
||||
when: matrix_synapse_ext_spam_checker_synapse_simple_antispam_enabled|bool
|
||||
|
||||
- import_tasks: "{{ role_path }}/tasks/ext/synapse-simple-antispam/setup_uninstall.yml"
|
||||
when: "not matrix_synapse_ext_spam_checker_synapse_simple_antispam_enabled|bool"
|
@ -0,0 +1,41 @@
|
||||
---
|
||||
|
||||
- name: Fail if Synapse Simple Antispam blocked homeservers is not set
|
||||
fail:
|
||||
msg: "Synapse Simple Antispam is enabled, but no blocked homeservers have been set in matrix_synapse_ext_spam_checker_synapse_simple_antispam_config_blocked_homeservers"
|
||||
when: "matrix_synapse_ext_spam_checker_synapse_simple_antispam_config_blocked_homeservers|length == 0"
|
||||
|
||||
- name: Ensure git installed (RedHat)
|
||||
yum:
|
||||
name:
|
||||
- git
|
||||
state: present
|
||||
update_cache: no
|
||||
when: "ansible_os_family == 'RedHat'"
|
||||
|
||||
- name: Ensure git installed (Debian)
|
||||
apt:
|
||||
name:
|
||||
- openssl
|
||||
state: present
|
||||
update_cache: no
|
||||
when: "ansible_os_family == 'Debian'"
|
||||
|
||||
- name: Clone synapse-simple-antispam git repository
|
||||
git:
|
||||
repo: "{{ matrix_synapse_ext_spam_checker_synapse_simple_antispam_git_repository_url }}"
|
||||
version: "{{ matrix_synapse_ext_spam_checker_synapse_simple_antispam_git_version }}"
|
||||
dest: "{{ matrix_synapse_ext_path }}/synapse-simple-antispam"
|
||||
become: true
|
||||
become_user: "{{ matrix_user_username }}"
|
||||
|
||||
- set_fact:
|
||||
matrix_synapse_spam_checker:
|
||||
module: "synapse_simple_antispam.AntiSpamInvites"
|
||||
config:
|
||||
blocked_homeservers: "{{ matrix_synapse_ext_spam_checker_synapse_simple_antispam_config_blocked_homeservers }}"
|
||||
|
||||
matrix_synapse_container_extra_arguments: >
|
||||
{{ matrix_synapse_container_extra_arguments|default([]) }}
|
||||
+
|
||||
{{ ["--mount type=bind,src={{ matrix_synapse_ext_path }}/synapse-simple-antispam/synapse_simple_antispam,dst={{ matrix_synapse_in_container_python_packages_path }}/synapse_simple_antispam,ro"] }}
|
@ -0,0 +1,6 @@
|
||||
---
|
||||
|
||||
- name: Ensure synapse-simple-antispam doesn't exist
|
||||
file:
|
||||
path: "{{ matrix_synapse_ext_path }}/synapse-simple-antispam"
|
||||
state: absent
|
Loading…
Reference in new issue