123 lines
2.9 KiB
YAML
123 lines
2.9 KiB
YAML
---
|
|
- name: install matrix packages
|
|
apt:
|
|
pkg:
|
|
- matrix-synapse
|
|
- matrix-synapse-ldap3
|
|
- python3-psycopg2
|
|
- python3-jinja2
|
|
- python3-bleach
|
|
- openjdk-8-jre-headless
|
|
- mxisd
|
|
state: latest
|
|
|
|
- name: install the rest auth provider
|
|
get_url:
|
|
url: "https://raw.githubusercontent.com/kamax-matrix/matrix-synapse-rest-auth/master/rest_auth_provider.py"
|
|
dest: "/usr/lib/python3/dist-packages/rest_auth_provider.py"
|
|
|
|
- name: ensure services are started and enabled
|
|
service:
|
|
name: "{{ item }}"
|
|
state: started
|
|
enabled: yes
|
|
with_items:
|
|
- matrix-synapse
|
|
- mxisd
|
|
|
|
- name: install matrix-synapse configurations
|
|
template:
|
|
src: "{{ item.src }}.j2"
|
|
dest: "{{ item.dest }}"
|
|
owner: matrix-synapse
|
|
group: adm
|
|
mode: 0640
|
|
notify: restart matrix-synapse
|
|
with_items:
|
|
- { src: "matrix-homeserver.yaml", dest: "/etc/matrix-synapse/homeserver.yaml" }
|
|
- { src: "matrix-server_name.yaml", dest: "/etc/matrix-synapse/conf.d/server_name.yaml" }
|
|
- { src: "matrix-report_stats.yaml", dest: "/etc/matrix-synapse/conf.d/report_stats.yaml" }
|
|
- { src: "matrix-homeserver.signing.key", dest: "/etc/matrix-synapse/homeserver.signing.key" }
|
|
|
|
- name: install mxisd configurations
|
|
template:
|
|
src: "{{ item.src }}.j2"
|
|
dest: "{{ item.dest }}"
|
|
owner: mxisd
|
|
group: adm
|
|
mode: 0640
|
|
notify: restart mxisd
|
|
with_items:
|
|
- { src: "mxisd.yaml", dest: "/etc/mxisd/mxisd.yaml" }
|
|
|
|
- name: link the res folder to the right place
|
|
file:
|
|
src: "/usr/lib/python3/dist-packages/synapse/res"
|
|
dest: "/var/lib/matrix-synapse/res"
|
|
state: link
|
|
|
|
- name: create matrix data directories
|
|
file:
|
|
dest: "/srv/matrix/{{ item }}"
|
|
state: directory
|
|
owner: matrix-synapse
|
|
group: sudo
|
|
mode: 0750
|
|
with_items:
|
|
- media
|
|
- uploads
|
|
|
|
- name: install nginx packages
|
|
apt:
|
|
pkg:
|
|
- nginx
|
|
state: latest
|
|
|
|
- name: ensure services are started and enabled
|
|
service:
|
|
name: "{{ item }}"
|
|
state: started
|
|
enabled: yes
|
|
with_items:
|
|
- nginx
|
|
|
|
- name: disable default nginx configuration
|
|
file:
|
|
dest: "/etc/nginx/sites-enabled/default"
|
|
state: "absent"
|
|
|
|
- name: install nginx configuration
|
|
template:
|
|
src: "riot-nginx.j2"
|
|
dest: "/etc/nginx/sites-enabled/riot"
|
|
notify: restart nginx
|
|
|
|
- name: download riot
|
|
get_url:
|
|
url: "https://github.com/vector-im/riot-web/releases/download/{{ riot_version }}/riot-{{ riot_version }}.tar.gz"
|
|
dest: "/var/www/riot.tar.gz"
|
|
|
|
- name: extract riot
|
|
unarchive:
|
|
src: "/var/www/riot.tar.gz"
|
|
dest: "/var/www"
|
|
owner: www-data
|
|
group: www-data
|
|
copy: no
|
|
creates: "/var/www/riot-{{ riot_version }}"
|
|
|
|
- name: create versionless riot symlink
|
|
file:
|
|
src: "/var/www/riot-{{ riot_version }}"
|
|
dest: "/var/www/riot"
|
|
state: link
|
|
|
|
- name: install riot configuration
|
|
template:
|
|
src: "riot-config.json.j2"
|
|
dest: "/var/www/riot/config.json"
|
|
owner: www-data
|
|
group: www-data
|
|
notify: restart nginx
|
|
|