summaryrefslogtreecommitdiffstats
path: root/roles
diff options
context:
space:
mode:
authorAhmed Abdelhalim <[email protected]>2026-06-27 00:33:35 +0200
committerAhmed Abdelhalim <[email protected]>2026-06-27 00:34:50 +0200
commit27b34c0a674bdc63be340917d5aadb4952bd705a (patch)
tree8c1cda52afd8eb55f4f61e1f71e14e8b9871db1e /roles
parent3263296093c86aa2165777e74f7d28bfd442160f (diff)
Add restic role w/testing
Diffstat (limited to 'roles')
-rw-r--r--roles/restic/defaults/main.yml2
-rw-r--r--roles/restic/meta/argument_specs.yml8
-rw-r--r--roles/restic/meta/main.yml18
-rw-r--r--roles/restic/tasks/main.yml12
4 files changed, 40 insertions, 0 deletions
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