From 0d4a0b339eb06f5a294a01364ef10de912ce1288 Mon Sep 17 00:00:00 2001 From: Bauke Date: Sun, 17 Aug 2025 12:58:59 +0200 Subject: [PATCH 1/3] Fix Boussole writing the initial CSS compile as root. --- ansible/roles/boussole/tasks/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/ansible/roles/boussole/tasks/main.yml b/ansible/roles/boussole/tasks/main.yml index a2772a8..97e76d4 100644 --- a/ansible/roles/boussole/tasks/main.yml +++ b/ansible/roles/boussole/tasks/main.yml @@ -35,6 +35,7 @@ register: compiled_css_files - name: Run boussole manually if no compiled CSS exists yet + become_user: "{{ app_username }}" command: chdir: "{{ app_dir }}" cmd: "{{ boussole_venv_dir }}/bin/boussole compile --backend=yaml --config=boussole.yaml" From 08810b24c198e858f95b8627fd63287ddfbcb148 Mon Sep 17 00:00:00 2001 From: Bauke Date: Mon, 25 Aug 2025 19:41:46 +0200 Subject: [PATCH 2/3] Fix the Boussole watcher not working by freezing its requirements file to where it does still work. --- ansible/roles/boussole/files/requirements.txt | 18 ++++++++++++++++++ ansible/roles/boussole/tasks/main.yml | 12 ++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 ansible/roles/boussole/files/requirements.txt diff --git a/ansible/roles/boussole/files/requirements.txt b/ansible/roles/boussole/files/requirements.txt new file mode 100644 index 0000000..0561faa --- /dev/null +++ b/ansible/roles/boussole/files/requirements.txt @@ -0,0 +1,18 @@ +# Freeze Boussole otherwise the watcher doesn't work +# https://github.com/sveetch/boussole/issues/48 + +# Frozen requirement versions from '2.1.2' installation +boussole==2.1.2 +click==8.1.7 +colorama==0.4.6 +colorlog==6.7.0 +flake8==6.1.0 +libsass==0.22.0 +livereload==2.6.3 +pyaml==23.9.5 +pytest==7.4.2 +Sphinx==7.2.5 +sphinx-rtd-theme==1.3.0 +tox==4.11.3 +twine==4.0.2 +watchdog==3.0.0 diff --git a/ansible/roles/boussole/tasks/main.yml b/ansible/roles/boussole/tasks/main.yml index 97e76d4..8bd413f 100644 --- a/ansible/roles/boussole/tasks/main.yml +++ b/ansible/roles/boussole/tasks/main.yml @@ -1,9 +1,17 @@ --- -- name: Create venv and install boussole with pip +- name: Create boussole requirements.txt file + copy: + src: "requirements.txt" + dest: "{{ boussole_venv_dir }}/requirements.txt" + owner: "{{ app_username }}" + group: "{{ app_username }}" + mode: 0644 + +- name: Create boussole venv and install packages pip: virtualenv: "{{ boussole_venv_dir }}" virtualenv_command: python{{ python_version }} -m venv - name: boussole + requirements: "{{ boussole_venv_dir }}/requirements.txt" - name: Create systemd service file template: From 4fbaf9e446c0a973b35dcd4f21d992fe26dfe109 Mon Sep 17 00:00:00 2001 From: Bauke Date: Mon, 25 Aug 2025 20:04:01 +0200 Subject: [PATCH 3/3] Ensure the boussole venv dir exists. --- ansible/roles/boussole/tasks/main.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ansible/roles/boussole/tasks/main.yml b/ansible/roles/boussole/tasks/main.yml index 8bd413f..7b867ac 100644 --- a/ansible/roles/boussole/tasks/main.yml +++ b/ansible/roles/boussole/tasks/main.yml @@ -1,4 +1,9 @@ --- +- name: Ensure boussole venv directory exists + file: + path: "{{ boussole_venv_dir }}" + state: "directory" + - name: Create boussole requirements.txt file copy: src: "requirements.txt"