From 6226b1632a1bae8cce7dcbc10e759cea5b53ec72 Mon Sep 17 00:00:00 2001 From: Luke Hoersten Date: Sun, 3 May 2020 12:57:47 -0500 Subject: Completed writefreely role --- writefreely/tasks/main.yaml | 108 ++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 103 insertions(+), 5 deletions(-) (limited to 'writefreely/tasks') diff --git a/writefreely/tasks/main.yaml b/writefreely/tasks/main.yaml index a28c7c8..d8aff93 100644 --- a/writefreely/tasks/main.yaml +++ b/writefreely/tasks/main.yaml @@ -1,8 +1,106 @@ --- -- name: install apt packages - apt: name="{{writefreely_apt_packages}}" +- name: add writefreely user + become: yes + user: name="{{writefreely_user}}" -- name: download writefreely - archive: - src: "{{writefreely_release}}" +- name: unarchive writefreely + become: yes + unarchive: + remote_src: yes + src: "{{writefreely_tar}}" + dest: "/tmp/" + creates: "/tmp/writefreely/" + owner: "root" + group: "root" + +- name: install writefreely binary + become: yes + command: "install -m 0755 -o {{writefreely_user}} -g {{writefreely_user}} -t /usr/local/bin /tmp/writefreely/writefreely" + changed_when: false + +- name: create root dir + become: yes + file: + path: "{{writefreely_dir}}" + state: "directory" + owner: "{{writefreely_user}}" + group: "{{writefreely_user}}" + mode: "0755" + notify: reload service + +- name: create instance dir + become: yes + file: + path: "{{writefreely_dir}}/{{writefreely_instance}}" + state: "directory" + owner: "{{writefreely_user}}" + group: "{{writefreely_user}}" + mode: "0755" + notify: reload service + +- name: install static content + become: yes + copy: + src: "/tmp/writefreely/" + remote_src: yes + dest: "{{writefreely_dir}}/{{writefreely_instance}}/" + owner: "{{writefreely_user}}" + group: "{{writefreely_user}}" + mode: "0755" + +- name: configure + become: yes + template: + src: "config.ini.j2" + dest: "{{writefreely_dir}}/{{writefreely_instance}}/config.ini" + mode: "0644" + owner: "{{writefreely_user}}" + group: "{{writefreely_user}}" + notify: reload service + +- name: generate keys + become: yes + become_user: "{{writefreely_user}}" + command: "writefreely keys gen" + args: + chdir: "{{writefreely_dir}}/{{writefreely_instance}}/" + +- name: check if db exists + stat: + path: "{{writefreely_dir}}/{{writefreely_instance}}/writefreely.db" + register: db_file + +- name: create db + become: yes + become_user: "{{writefreely_user}}" + command: "writefreely db init" + args: + chdir: "{{writefreely_dir}}/{{writefreely_instance}}/" + when: not db_file.stat.exists + +- name: create admin + become: yes + become_user: "{{writefreely_user}}" + command: "writefreely --create-admin admin:admin" + args: + chdir: "{{writefreely_dir}}/{{writefreely_instance}}/" + when: not db_file.stat.exists + +- name: migrate db + become: yes + become_user: "{{writefreely_user}}" + command: "writefreely db migrate" + args: + chdir: "{{writefreely_dir}}/{{writefreely_instance}}/" + when: db_file.stat.exists + +- name: install systemd service + become: yes + template: + src: "writefreely@.service.j2" + dest: "/lib/systemd/system/writefreely@.service" + +- name: ensure service is started + become: yes + systemd: name="writefreely@{{writefreely_instance}}.service" enabled="yes" state="started" -- cgit v1.2.3