summaryrefslogtreecommitdiff
path: root/roles/gemini
diff options
context:
space:
mode:
authorJoe Carstairs <me@joeac.net>2026-08-26 08:09:20 +0100
committerJoe Carstairs <me@joeac.net>2026-08-26 08:09:20 +0100
commit2dbb9daa8bb09392608e4bddb74532b1b4c22077 (patch)
tree9ee6a2c8de247031ed5c04336891d3d8cfe90d32 /roles/gemini
parent73e4c316b6dd3467692e8cf0d73ccea21219dcd9 (diff)
gemini auto-updates
Diffstat (limited to 'roles/gemini')
-rw-r--r--roles/gemini/files/update_gemini9
-rw-r--r--roles/gemini/tasks/main.yml12
2 files changed, 21 insertions, 0 deletions
diff --git a/roles/gemini/files/update_gemini b/roles/gemini/files/update_gemini
new file mode 100644
index 0000000..75f2e6a
--- /dev/null
+++ b/roles/gemini/files/update_gemini
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+prev_version="$(~/.cargo/bin/agate --version)"
+cargo install agate
+new_version="$(~/.cargo/bin/agate --version)"
+if [ "$prev_version" != "$new_version" ]
+then
+ rc-service gemini restart
+fi
diff --git a/roles/gemini/tasks/main.yml b/roles/gemini/tasks/main.yml
index b950032..62fe03d 100644
--- a/roles/gemini/tasks/main.yml
+++ b/roles/gemini/tasks/main.yml
@@ -42,3 +42,15 @@
name: gemini
enabled: true
state: restarted
+
+- name: Install script to update gemini
+ ansible.builtin.copy:
+ src: update_gemini
+ dest: /usr/bin/update_gemini
+ mode: "755"
+
+- name: Install daily crontab to update gemini
+ ansible.builtin.cron:
+ special_time: daily
+ name: Update gemini
+ job: /usr/bin/update_gemini