summaryrefslogtreecommitdiff
path: root/roles
diff options
context:
space:
mode:
authorJoe Carstairs <me@joeac.net>2026-08-26 08:32:15 +0100
committerJoe Carstairs <me@joeac.net>2026-08-26 08:32:15 +0100
commit16635f1fe5ff4d0702e7639bc744369492fc352c (patch)
treeaf404696b3cd9d06c69da5e6c9bc7805dcd0070b /roles
parent2dbb9daa8bb09392608e4bddb74532b1b4c22077 (diff)
comitium auto-updates
Diffstat (limited to 'roles')
-rw-r--r--roles/comitium/tasks/main.yml12
-rw-r--r--roles/comitium/templates/update_comitium12
2 files changed, 24 insertions, 0 deletions
diff --git a/roles/comitium/tasks/main.yml b/roles/comitium/tasks/main.yml
index da82c6d..b5d2f4d 100644
--- a/roles/comitium/tasks/main.yml
+++ b/roles/comitium/tasks/main.yml
@@ -20,3 +20,15 @@
community.general.make:
chdir: "{{ src_dir }}/comitium"
target: install
+
+- name: Install script to update comitium
+ ansible.builtin.template:
+ src: update_comitium
+ dest: /usr/bin/update_comitium
+ mode: "755"
+
+- name: Install daily crontab to update comitium
+ ansible.builtin.cron:
+ special_time: daily
+ name: Update comitium
+ job: /usr/bin/update_comitium
diff --git a/roles/comitium/templates/update_comitium b/roles/comitium/templates/update_comitium
new file mode 100644
index 0000000..ccf2431
--- /dev/null
+++ b/roles/comitium/templates/update_comitium
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+newest_version="$(curl https://git.sr.ht/~nytpu/comitium/info/refs | grep -Eo refs/tags/v[0-9.]\+$ | tail -n 1 | cut -c11-)"
+current_version="$(comitium version | grep -Eo comitium\ v[0-9.]\+ | cut -c10-)"
+if [ -z "$current_version" ] || [ "$current_version" != "$newest_version" ]
+then
+ cd {{ src_dir }}/comitium
+ git fetch
+ git switch --detach ${newest_version}
+ make
+ make install
+fi