summaryrefslogtreecommitdiff
path: root/roles/actualbudget/tasks/main.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/actualbudget/tasks/main.yml')
-rw-r--r--roles/actualbudget/tasks/main.yml52
1 files changed, 52 insertions, 0 deletions
diff --git a/roles/actualbudget/tasks/main.yml b/roles/actualbudget/tasks/main.yml
new file mode 100644
index 0000000..81c89f2
--- /dev/null
+++ b/roles/actualbudget/tasks/main.yml
@@ -0,0 +1,52 @@
+- name: Install NPM
+ community.general.apk:
+ name:
+ - npm
+
+- name: Check current actual-server version
+ register: prev_actualbudget_version
+ changed_when: false
+ failed_when: false
+ ansible.builtin.command:
+ cmd: actual-server --version
+
+- name: Install actual-server with NPM
+ block:
+ - name: Install actual-server with NPM
+ ansible.builtin.command: npm install --global @actual-app/sync-server
+ changed_when: false
+ - name: Check new actual-server version
+ register: new_actualbudget_version
+ ansible.builtin.command: actual-server --version
+ changed_when: prev_actualbudget_version.stdout != new_actualbudget_version.stdout
+
+- name: Install actualbudget service
+ register: actualbudget_service
+ ansible.builtin.template:
+ src: openrc/actualbudget
+ dest: /etc/init.d/actualbudget
+ mode: "755"
+
+- name: Create actualbudget data directory
+ ansible.builtin.file:
+ path: "{{ actualbudget_data_dir }}"
+ state: directory
+
+- name: Restart actualbudget service and configure to start on boot
+ when:
+ new_actualbudget_version is changed
+ or actualbudget_service is changed
+ ansible.builtin.service:
+ name: actualbudget
+ enabled: true
+ state: restarted
+
+- name: Start actualbudget service and configure to start on boot
+ when:
+ not (
+ new_actualbudget_version is changed
+ or actualbudget_service is changed )
+ ansible.builtin.service:
+ name: actualbudget
+ enabled: true
+ state: started