summaryrefslogtreecommitdiff
path: root/roles/gemini/tasks/main.yml
blob: 73d730e02fe53cefa5389664a1ef0fb84fdefd15 (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
- name: Checkout joeac.net source code
  ansible.builtin.git:
    repo: https://git.joeac.net/joeac/joeac.net.git
    dest: "{{ src_dir }}/joeac.net"
    depth: 1
    version: main

- name: Run initial comitium refresh
  register: comitium_refresh
  ansible.builtin.command:
    cmd: /usr/local/bin/comitium refresh --data {{ src_dir }}/joeac.net/gemini/comitium-data
    creates: "{{ src_dir }}/joeac.net/gemini/comitium-data/feed.gmi"

- name: Schedule daily comitium refresh
  ansible.builtin.cron:
    special_time: daily
    job: /usr/local/bin/comitium refresh --data {{ src_dir }}/joeac.net/gemini/comitium-data
    name: daily comitium refresh for joeac.net capsule

- name: Build joeac.net capsule
  register: build_capsule
  community.general.make:
    chdir: "{{ src_dir }}/joeac.net/gemini"

- name: Install gemini service
  register: install_service
  ansible.builtin.template:
    src: openrc/gemini
    dest: /etc/init.d/gemini
    mode: "775"

- name: Start gemini service and configure to start on boot
  when: not ( comitium_refresh is changed or build_capsule is changed or install_service is changed )
  ansible.builtin.service:
    name: gemini
    enabled: true
    state: started

- name: Restart gemini service and configure to start on boot
  when: comitium_refresh is changed or build_capsule is changed or install_service is changed
  ansible.builtin.service:
    name: gemini
    enabled: true
    state: restarted