Michael Grote
1763fdf1b6
Reviewed-on: #20 Co-authored-by: Michael Grote <michael.grote@posteo.de> Co-committed-by: Michael Grote <michael.grote@posteo.de>
42 lines
1.3 KiB
YAML
42 lines
1.3 KiB
YAML
---
|
|
- name: Ensure needed directories exist
|
|
ansible.builtin.file:
|
|
path: "{{ cv4pve_base_path }}"
|
|
state: directory
|
|
owner: "{{ cv4pve_user }}"
|
|
group: "{{ cv4pve_user_group }}"
|
|
mode: "0644"
|
|
|
|
- name: Download specified version
|
|
ansible.builtin.unarchive:
|
|
src: "{{ cv4pve_dl_link }}"
|
|
dest: "{{ cv4pve_base_path }}"
|
|
mode: '0755'
|
|
owner: "{{ cv4pve_user }}"
|
|
group: "{{ cv4pve_user_group }}"
|
|
remote_src: true
|
|
creates: "{{ cv4pve_base_path }}/cv4pve-autosnap-{{ cv4pve_version }}"
|
|
list_files: true
|
|
register: download
|
|
|
|
- name: Rename binary # noqa no-changed-when no-handler
|
|
ansible.builtin.command: |
|
|
mv "{{ cv4pve_base_path }}/cv4pve-autosnap" "{{ cv4pve_base_path }}/cv4pve-autosnap-{{ cv4pve_version }}"
|
|
when: download.changed
|
|
|
|
# https://stackoverflow.com/questions/20252057/using-ansible-how-would-i-delete-all-items-except-for-a-specified-set-in-a-dire
|
|
- name: Find old versions
|
|
ansible.builtin.find:
|
|
paths: "{{ cv4pve_base_path }}"
|
|
file_type: file
|
|
use_regex: false
|
|
excludes:
|
|
- "cv4pve-autosnap-{{ cv4pve_version }}"
|
|
register: found_files
|
|
|
|
- name: Ensure old versions are absent
|
|
ansible.builtin.file:
|
|
path: "{{ item.path }}"
|
|
state: absent
|
|
with_items: "{{ found_files['files'] }}"
|
|
...
|