Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
main.yml 8.61 KiB
- name: Create ssl cert
  include_role:
    name: certificate
  vars:
    domains: ["{{ matrix_domain }}"]
  when: 'matrix_domain is defined'

- name: Install packages
  pacman:
    name:
      - coturn
      - freetype2
      - gcc
      - git
      - jemalloc
      - libffi
      - libjpeg-turbo
      - libolm
      - libtiff
      - libwebp
      - libxslt
      - libzip
      - make
      - npm
      - openssl
      - pkgconf
      - postgresql-libs
      - python
      - redis
      - tcl
      - tk
      - yarn
      - zlib

- name: Add synapse group
  group: name=synapse system=yes gid=198

- name: Add synapse user
  user: name=synapse system=yes uid=198 group=synapse home=/var/lib/synapse shell=/bin/false createhome=no

- name: Create synapse home
  file: path={{ item }} state=directory owner=synapse group=synapse mode=0700
  with_items:
    - /var/lib/synapse
    - /var/lib/synapse/media_store
    - /var/lib/synapse/mjolnir-data
    - /var/lib/synapse/pantalaimon-data

- name: Make virtualenvs
  command: 'python -m venv {{ item }}'
  args:
    creates: '{{ item }}/bin/python'
  become: true
  become_user: synapse
  become_method: sudo
  with_items:
    - /var/lib/synapse/venv
    - /var/lib/synapse/venv-pantalaimon

- name: Update virtualenvs
  pip:
    name:
      - pip
      - wheel
    state: latest
    extra_args: '--upgrade-strategy=eager'
    virtualenv: '{{ item }}'
  become: true
  become_user: synapse
  become_method: sudo