roles/pleroma/tasks/main.yaml
author Luke Hoersten <luke@hoersten.org>
Mon, 20 Jan 2020 13:18:18 -0600
changeset 88 63efc98132f7
parent 86 3dcdaac4adbf
permissions -rw-r--r--
Added pleroma instance backup to s3.

---

- 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
  template:
    src: "prod.secret.exs.j2"
    dest: "~{{pleroma_user}}/pleroma/config/prod.secret.exs"
    owner: "{{pleroma_user}}"
    group: "{{pleroma_user}}"
    mode: "0600"
  become: yes
  notify: restart pleroma

- name: install pleroma db schema file
  template:
    src: "setup_db.psql.j2"
    dest: "/tmp/setup_db.psql"
    owner: "{{pleroma_db_superuser}}"
    group: "{{pleroma_db_superuser}}"
    mode: "0600"
  become: yes

- name: install pleroma psql
  become: yes
  become_user: "{{pleroma_db_superuser}}"
  command: "psql -f /tmp/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
  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: "0660"
  become: yes

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