vikunja/tasks/frontend.yml
2023-02-06 21:27:37 +01:00

90 lines
2.3 KiB
YAML

- name: "Get vikunja gitea release json"
uri:
url: https://kolaente.dev/api/v1/repos/vikunja/frontend/releases
method: GET
return_content: yes
status_code: 200
body_format: json
register: vikunja_repo
tags:
- frontend
- name: "Remove v on release name"
ansible.builtin.shell: "echo {{ vikunja_repo.json.0.tag_name }} | sed 's/v//g'"
register: vikunja_version_without_v
tags:
- frontend
- name: "Get vikunja version"
set_fact: vikunja_version={{ vikunja_version_without_v.stdout }}
tags:
- frontend
- name: Display version of API
ansible.builtin.debug:
msg:
- "API version use : {{ vikunja_version }}"
- name: Download Vikunja
ansible.builtin.get_url:
url: "https://dl.vikunja.io/frontend/vikunja-frontend-{{ vikunja_version }}.zip"
dest: "{{ item.home | default('/var/opt/vikunja') }}/frontend.zip"
mode: '0640'
tags:
- frontend
become: yes
become_user : "{{ item.name | default('vikunja') }}"
become_method: su
become_flags: '-s /bin/bash'
loop: "{{ vikunja }}"
- name: "Clean www folder"
ansible.builtin.file:
path: "{{ item.home | default('/var/opt/vikunja') }}/www"
state: absent
tags:
- frontend
become: yes
become_user : "{{ item.name | default('vikunja') }}"
become_method: su
become_flags: '-s /bin/bash'
loop: "{{ vikunja }}"
- name: "Create www directory"
ansible.builtin.file:
path: "{{ item.home | default('/var/opt/vikunja') }}/www"
state: directory
mode: '0755'
become: yes
become_user : "{{ item.name | default('vikunja') }}"
become_method: su
become_flags: '-s /bin/bash'
loop: "{{ vikunja }}"
tags:
- frontend
- name: "Unarchive vikunja frontend"
ansible.builtin.unarchive:
src: "{{ item.home | default('/var/opt/vikunja') }}/frontend.zip"
dest: "{{ item.home | default('/var/opt/vikunja') }}/www"
remote_src: yes
become: yes
become_user : "{{ item.name | default('vikunja') }}"
become_method: su
become_flags: '-s /bin/bash'
loop: "{{ vikunja }}"
tags:
- frontend
- name: "Clean frontend.zip"
ansible.builtin.file:
path: "{{ item.home | default('/var/opt/vikunja') }}/frontend.zip"
state: absent
tags:
- frontend
become: yes
become_user : "{{ item.name | default('vikunja') }}"
become_method: su
become_flags: '-s /bin/bash'
loop: "{{ vikunja }}"