summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe Carstairs <me@joeac.net>2026-08-26 07:57:03 +0100
committerJoe Carstairs <me@joeac.net>2026-08-26 07:57:03 +0100
commit73e4c316b6dd3467692e8cf0d73ccea21219dcd9 (patch)
tree2c90163fa0e38068e4676580475f9664fa23d1b6
parenta72f08c9d9ed503c72d2b0915edf5498a05d9210 (diff)
auto-update actualbudget
-rw-r--r--roles/actualbudget/files/update_actualbudget9
-rw-r--r--roles/actualbudget/tasks/main.yml12
2 files changed, 21 insertions, 0 deletions
diff --git a/roles/actualbudget/files/update_actualbudget b/roles/actualbudget/files/update_actualbudget
new file mode 100644
index 0000000..7c53236
--- /dev/null
+++ b/roles/actualbudget/files/update_actualbudget
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+prev_version="$(actual-server --version)"
+npm update --global @actual-app/sync-server
+new_version="$(actual-server --version)"
+if [ "$prev_version" != "$new_version" ]
+then
+ rc-service actualbudget restart
+fi
diff --git a/roles/actualbudget/tasks/main.yml b/roles/actualbudget/tasks/main.yml
index 81c89f2..a76acd6 100644
--- a/roles/actualbudget/tasks/main.yml
+++ b/roles/actualbudget/tasks/main.yml
@@ -20,6 +20,18 @@
ansible.builtin.command: actual-server --version
changed_when: prev_actualbudget_version.stdout != new_actualbudget_version.stdout
+- name: Install update script
+ ansible.builtin.copy:
+ src: update_actualbudget
+ dest: /usr/bin/update_actualbudget
+ mode: "755"
+
+- name: Install daily timer to update actualbudget
+ ansible.builtin.cron:
+ special_time: daily
+ name: Update actualbudget
+ job: /usr/bin/update_actualbudget
+
- name: Install actualbudget service
register: actualbudget_service
ansible.builtin.template: