summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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: