src.nth.io/

summaryrefslogtreecommitdiff
path: root/roles/pleroma/tasks/main.yaml
blob: 8cd1cb599d0c62a84ea1848ca78c4b2c4e3e6e32 (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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
---

- 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 buster contrib"

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

- name: install pleroma apt packages
  become: yes
  apt: name="{{pleroma_apt_packages}}"

- 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"
    version: "{{pleroma_version}}"
    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
  with_items:
    - "setup_db.psql"
    - "prod.secret.exs"
  notify: restart pleroma

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

# - name: restore
#   postgresql_db:
#     state: "restore"
#     db: "{{pleroma_user}}"
#     target: "/tmp/{{pleroma_user}}-backup.sql"
#     login_user: "{{pleroma_user}}"
#     login_password: "{{pleroma_db_passwd}}"
#     login_host: "{{pleroma_db_host}}"
#   when: "{{pleroma_restore_db}}"

- 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
  environment:
    MIX_ENV: "prod"

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

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


# - name: backup db
#   postgresql_db:
#     state: "dump"
#     db: "{{pleroma_user}}"
#     target: "/tmp/{{pleroma_user}}-backup.sql"
#     login_user: "{{pleroma_user}}"
#     login_password: "{{pleroma_db_passwd}}"
#     login_host: "{{pleroma_db_host}}"





# pg_dump -U pleroma_nth_io -h pleroma.ctzpnw3lfkwz.us-east-1.rds.amazonaws.com pleroma_nth_io -f pleroma_nth_io_dump.sql