src.nth.io/

summaryrefslogtreecommitdiff
path: root/roles/pleroma/tasks/main.yaml
blob: ba3af9e670b74df916f3468987ef286c33771910 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
---

- name: add erland solutions key
  become: yes
  apt_key: "url=http://packages.erlang-solutions.com/debian/erlang_solutions.asc"

- name: install erland solutions repo
  become: yes
  apt_repository: repo="deb http://binaries.erlang-solutions.com/debian bionic contrib"

- name: update apt package cache
  become: yes
  apt: upgrade="dist" update_cache="yes" cache_valid_time="3600"

- name: install extra apt packages
  become: yes
  apt: name="{{item}}"
  with_items:
    - "postgresql"
    - "esl-erlang"
    - "elixir"
    - "build-essential"
    - "git"

- name: add users
  become: yes
  user: name="{{pleroma_user}}" shell="/bin/bash"

- name: checkout plemora
  become: yes
  become_user: "{{pleroma_user}}"
  git:
    repo: "https://git.pleroma.social/pleroma/pleroma.git"
    dest: "~{{pleroma_user}}/pleroma"
    force: yes

- name: install pleroma config files
  template:
    src: "{{item}}.j2"
    dest: "~{{pleroma_user}}/pleroma/config/{{item}}"
    owner: "{{pleroma_user}}"
    group: "{{pleroma_user}}"
    mode: "0775"
  become: yes
  become_user: "{{pleroma_user}}"
  with_items:
    - "setup_db.psql"
    - "dev.secret.exs"
  notify: restart pleroma

- name: install pleroma psql
  become: yes
  become_user: "postgres"
  command: "psql -f ~{{pleroma_user}}/pleroma/config/setup_db.psql"
  notify: restart pleroma

- name: migrate db
  become: yes
  become_user: "{{pleroma_user}}"
  command: "{{item}}"
  args:
    chdir: "~{{pleroma_user}}/pleroma/"
  with_items:
    - "mix local.hex --force"
    - "mix local.rebar --force"
    - "mix deps.get"
    - "mix ecto.migrate"
  notify: restart pleroma

- name: install pleroma systemd service
  template:
    src: "pleroma.service.j2"
    dest: "/lib/systemd/system/pleroma.service"
    owner: "{{pleroma_user}}"
    group: "{{pleroma_user}}"
    mode: "0770"
  become: yes

- name: enable pleroma systemd service
  systemd: name="pleroma" enabled="yes" state="started"
  become: yes