xoxys.matrix/tasks/install.yml

71 lines
2.0 KiB
YAML

---
- name: Prepare base folders
file:
path: "{{ item }}"
state: directory
owner: "{{ matrix_user }}"
group: "{{ matrix_user }}"
mode: 0750
loop:
- "{{ matrix_base_dir }}"
- "{{ matrix_conf_dir }}"
- "{{ matrix_data_dir }}"
- "{{ matrix_log_dir }}"
become: True
become_user: root
- block:
- name: Upgrade python dependencies
pip:
name: "{{ item }}"
virtualenv: "{{ matrix_base_dir }}/env"
virtualenv_command: /usr/bin/python3 -m venv
extra_args: --upgrade
loop:
- pip
- setuptools
- "psycopg2~=2.7.0"
- "Twisted>=20.3.0"
- name: Install Synapse in virtualenv
pip:
name: matrix-synapse[all]
version: "{{ matrix_version }}"
virtualenv: "{{ matrix_base_dir }}/env"
virtualenv_command: /usr/bin/python3 -m venv
notify: __matrix_restart
- name: Install ldap3 auth provider
pip:
name: "matrix-synapse-ldap3"
virtualenv: "{{ matrix_base_dir }}/env"
virtualenv_command: /usr/bin/python3 -m venv
when: matrix_ldap_auth_enabled | bool
- name: Create signing key
shell: "{{ matrix_base_dir }}/env/bin/python -c \"from signedjson import key; file = open('{{ matrix_conf_dir }}/{{ matrix_server_url }}.signing.key','w'); key.write_signing_keys(file, [key.generate_signing_key('first')]); file.close()\""
args:
creates: "{{ matrix_conf_dir }}/{{ matrix_server_url }}.signing.key"
notify: __matrix_restart
- name: Deploy global config files
template:
src: "opt/matrix/config/{{ item }}.j2"
dest: "{{ matrix_conf_dir }}/{{ item }}"
mode: 0600
loop:
- "homeserver.yml"
- "logging.config"
notify: __matrix_restart
become: True
become_user: "{{ matrix_user }}"
- block:
- name: Copy systemd unit file
template:
src: "etc/systemd/system/matrix.service.j2"
dest: "/etc/systemd/system/matrix.service"
notify: __matrix_restart
become: True
become_user: root