From 27b34c0a674bdc63be340917d5aadb4952bd705a Mon Sep 17 00:00:00 2001 From: Ahmed Abdelhalim Date: Sat, 27 Jun 2026 00:33:35 +0200 Subject: Add restic role w/testing --- roles/restic/defaults/main.yml | 2 ++ roles/restic/meta/argument_specs.yml | 8 ++++++++ roles/restic/meta/main.yml | 18 ++++++++++++++++++ roles/restic/tasks/main.yml | 12 ++++++++++++ 4 files changed, 40 insertions(+) create mode 100644 roles/restic/defaults/main.yml create mode 100644 roles/restic/meta/argument_specs.yml create mode 100644 roles/restic/meta/main.yml create mode 100644 roles/restic/tasks/main.yml (limited to 'roles') diff --git a/roles/restic/defaults/main.yml b/roles/restic/defaults/main.yml new file mode 100644 index 00000000..0b3fbd93 --- /dev/null +++ b/roles/restic/defaults/main.yml @@ -0,0 +1,2 @@ +--- +restic_version: "latest" diff --git a/roles/restic/meta/argument_specs.yml b/roles/restic/meta/argument_specs.yml new file mode 100644 index 00000000..4622a3f8 --- /dev/null +++ b/roles/restic/meta/argument_specs.yml @@ -0,0 +1,8 @@ +--- +argument_specs: + main: + options: + restic_version: + type: "str" + description: "Restic version to install via mise (e.g. 'latest', '0.17.3')" + default: "latest" diff --git a/roles/restic/meta/main.yml b/roles/restic/meta/main.yml new file mode 100644 index 00000000..539ca10d --- /dev/null +++ b/roles/restic/meta/main.yml @@ -0,0 +1,18 @@ +--- +dependencies: + - role: "mise" +galaxy_info: + author: "a14m" + description: "Install restic via mise" + license: "MIT" + min_ansible_version: "2.18" + platforms: + - name: "ArchLinux" + versions: + - "all" + - name: "Ubuntu" + versions: + - "noble" + - name: "Debian" + versions: + - "bookworm" diff --git a/roles/restic/tasks/main.yml b/roles/restic/tasks/main.yml new file mode 100644 index 00000000..ae82d3bc --- /dev/null +++ b/roles/restic/tasks/main.yml @@ -0,0 +1,12 @@ +--- +- name: "Check installed restic versions" + ansible.builtin.command: + cmd: "mise ls restic" + register: restic_installed_versions + changed_when: false + +- name: "Install restic" + ansible.builtin.command: + cmd: "mise use --global restic@{{ restic_version }}" + changed_when: true + when: restic_version not in restic_installed_versions.stdout -- cgit v1.2.3