src.nth.io/

summaryrefslogtreecommitdiff
path: root/writefreely/tasks/main.yaml
blob: b0d1e4536607a0e22968fe0460447639c8b24aa3 (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
104
105
106
107
108
109
110
111
---

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

- 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: "[email protected]"
    dest: "/lib/systemd/system/[email protected]"

- name: ensure service is started
  become: yes
  systemd: name="writefreely@{{writefreely_instance}}.service" enabled="yes" state="started"