This repository has been archived on 2020-08-09. You can view files and clone it, but cannot push or open issues or pull requests.
ansible-pleroma/tasks/main.yml

97 lines
2.3 KiB
YAML

- name: Copy production build config
copy:
dest: '/home/repositories/pleroma/config/prod.secret.exs'
content: 'import Mix.Config'
follow: yes
tags:
- pleroma
- build
- name: Fetch dependencies
loop:
- "mix local.hex --force"
- "mix local.rebar --force"
- "mix deps.get --only prod --force"
shell:
chdir: "/home/repositories/pleroma/"
cmd: "MIX_ENV=prod {{ item }}"
tags:
- pleroma
- build
- name: Ensure that output dir is created
file:
path: "{{ pleroma.root }}"
state: directory
follow: yes
tags:
- pleroma
- build
- name: Copy custom files
loop:
- "priv/static/static/themes/redxen.json"
- "priv/static/static/styles.json"
- "priv/static/static/background.jpg"
- "priv/static/static/logo.png"
- "priv/static/favicon.png"
- "priv/static/static/terms-of-service.html"
copy:
src: '{{ role_path }}/files/{{ item }}'
dest: '/home/repositories/pleroma/{{ item }}'
tags:
- pleroma
- name: Build pleroma
shell:
chdir: "/home/repositories/pleroma/"
cmd: "MIX_ENV=prod mix release --path {{ pleroma.root }} --force"
tags:
- pleroma
- build
- name: Change ownership of build output
shell:
chdir: "/etc/pleroma"
cmd: "chown -R nobody:root ."
warn: false
tags:
- pleroma
- build
- name: Copy configuration files
loop:
- "config.exs"
- "mrf.exs"
template:
src: "{{ item }}.j2"
dest: "/etc/pleroma/{{ item }}"
follow: yes
owner: "nobody"
group: "root"
mode: "700"
tags:
- pleroma
- configs
- name: Copy secrets
template:
src: "{{ role_path }}/vault/secret.exs"
dest: "/etc/pleroma/secret.exs"
follow: yes
owner: "nobody"
group: "root"
mode: "700"
tags:
- pleroma
- vault
- name: Copy systemd service file
template:
follow: yes
src: 'pleroma.service.j2'
dest: '/etc/systemd/system/pleroma.service'
notify: Restart services
tags:
- pleroma
- systemd
- name: Make the binary exectuable
file:
mode: "755"
path: "/etc/pleroma/bin/pleroma"
tags:
- pleroma
- build