summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ansible/roles/actualbudget/tasks/main.yml47
-rw-r--r--ansible/roles/actualbudget/templates/openrc/actualbudget7
-rw-r--r--ansible/vars/common.yml2
3 files changed, 29 insertions, 27 deletions
diff --git a/ansible/roles/actualbudget/tasks/main.yml b/ansible/roles/actualbudget/tasks/main.yml
index 92cad2f..81c89f2 100644
--- a/ansible/roles/actualbudget/tasks/main.yml
+++ b/ansible/roles/actualbudget/tasks/main.yml
@@ -1,24 +1,24 @@
-- name: Install Git, NodeJS and Yarn
+- name: Install NPM
community.general.apk:
name:
- - git
- - nodejs
- - yarn
+ - npm
-- name: Checkout actualbudget source code
- register: actualbudget_src
- ansible.builtin.git:
- repo: https://github.com/actualbudget/actual.git
- dest: "{{ actualbudget_src_dir }}"
- depth: 1
- version: v{{ actualbudget_version }}
-
-- name: Install actualbudget dependencies
- register: actualbudget_dependencies
- changed_when: "'Already up-to-date.' not in actualbudget_dependencies.stdout"
+- name: Check current actual-server version
+ register: prev_actualbudget_version
+ changed_when: false
+ failed_when: false
ansible.builtin.command:
- chdir: "{{ actualbudget_src_dir }}"
- cmd: yarn install
+ 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
@@ -27,11 +27,15 @@
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:
- actualbudget_src is changed
+ new_actualbudget_version is changed
or actualbudget_service is changed
- or actualbudget_dependencies is changed
ansible.builtin.service:
name: actualbudget
enabled: true
@@ -40,9 +44,8 @@
- name: Start actualbudget service and configure to start on boot
when:
not (
- actualbudget_src is changed
- or actualbudget_service is changed
- or actualbudget_dependencies is changed )
+ new_actualbudget_version is changed
+ or actualbudget_service is changed )
ansible.builtin.service:
name: actualbudget
enabled: true
diff --git a/ansible/roles/actualbudget/templates/openrc/actualbudget b/ansible/roles/actualbudget/templates/openrc/actualbudget
index 456e33e..52fd8f0 100644
--- a/ansible/roles/actualbudget/templates/openrc/actualbudget
+++ b/ansible/roles/actualbudget/templates/openrc/actualbudget
@@ -6,14 +6,13 @@ start()
{
ebegin "Starting actualbudget"
start-stop-daemon --start \
- --exec /usr/bin/yarn \
+ --exec /usr/local/bin/actual-server \
+ --env ACTUAL_DATA_DIR={{ actualbudget_data_dir }} \
--background \
- --chdir {{ actualbudget_src_dir }} \
--stdout /var/log/actualbudget.log \
--stderr /var/log/actualbudget.log \
--make-pidfile \
- --pidfile /run/actualbudget.pid \
- -- start:server
+ --pidfile /run/actualbudget.pid
eend $?
}
diff --git a/ansible/vars/common.yml b/ansible/vars/common.yml
index a4db78f..b0d9030 100644
--- a/ansible/vars/common.yml
+++ b/ansible/vars/common.yml
@@ -3,7 +3,7 @@ joeacnet_src_dir: /usr/share/src/joeac.net
services:
actualbudget:
port: 5006
- host: blade-canongate
+ host: pi-broughton
etherpad:
port: 9001
host: blade-canongate