diff -r 1b7ccb729164 -r 05d0cf32e077 writefreely/server/tasks/main.yaml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/writefreely/server/tasks/main.yaml Sun Jul 04 12:05:24 2021 -0500 @@ -0,0 +1,103 @@ +--- + +- name: add writefreely user + become: yes + user: name="{{writefreely_user}}" + +- 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 + copy: + src: "/tmp/writefreely/writefreely" + dest: "/usr/local/bin/" + remote_src: yes + owner: "{{writefreely_user}}" + group: "{{writefreely_user}}" + mode: "0755" + notify: migrate db + +- name: create instance dir + become: yes + file: + path: "{{item}}" + state: "directory" + owner: "{{writefreely_user}}" + group: "{{writefreely_user}}" + mode: "0755" + notify: reload service + loop: + - "{{writefreely_dir}}" + - "{{writefreely_dir}}/{{writefreely_instance}}" + +- 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: check if keys exists + stat: + path: "{{writefreely_dir}}/{{writefreely_instance}}/keys/cookies_auth.aes256" + register: keys_file + +- name: generate keys + become: yes + become_user: "{{writefreely_user}}" + command: "writefreely keys gen" + args: + chdir: "{{writefreely_dir}}/{{writefreely_instance}}/" + when: not keys_file.stat.exists + +- 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: 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"