Refactor Nextcloud fullstack and config tasks:

- Load proxy in fullstack
- Simplify config merging logic
- Improve handler flushing and container config update

Context: https://chatgpt.com/share/692dc9d4-a884-800f-85e5-e92471c7b52b
This commit is contained in:
2025-12-01 18:01:25 +01:00
parent 81c4d407a5
commit 116c20d61d
3 changed files with 26 additions and 31 deletions

View File

@@ -1,4 +1,4 @@
- name: "load docker and db for {{ application_id }}" - name: "load docker, db and proxy for {{ application_id }}"
include_role: include_role:
name: sys-stk-full-stateful name: sys-stk-full-stateful
vars: vars:

View File

@@ -1,15 +1,15 @@
- name: Merge all files in infinito directory (container) # Merge all (config) files in infinito directory (container)
block:
- name: Add dynamic config merging from Jinja template - name: Add dynamic config merging from Jinja template
template: template:
src: include.php.j2 src: include.php.j2
dest: "{{ NEXTCLOUD_HOST_INCL_PATH }}" dest: "{{ NEXTCLOUD_HOST_INCL_PATH }}"
notify: docker compose restart notify: docker compose restart
- name: Flush handlers so Nextcloud container is restarted and ready - name: Flush handlers so Nextcloud container is restarted and ready
meta: flush_handlers meta: flush_handlers
- name: "Wait until Nextcloud is reachable on port {{ ports.localhost.http[application_id] }}" - name: "Wait until Nextcloud is reachable on port {{ ports.localhost.http[application_id] }}"
wait_for: wait_for:
host: 127.0.0.1 host: 127.0.0.1
port: "{{ ports.localhost.http[application_id] }}" port: "{{ ports.localhost.http[application_id] }}"
@@ -17,11 +17,11 @@
delay: 2 delay: 2
state: started state: started
- name: Copy include instructions to the container - name: Copy include instructions to the container
command: > command: >
docker cp {{ NEXTCLOUD_HOST_INCL_PATH }} {{ NEXTCLOUD_CONTAINER }}:{{ NEXTCLOUD_DOCKER_INCL_PATH }} docker cp {{ NEXTCLOUD_HOST_INCL_PATH }} {{ NEXTCLOUD_CONTAINER }}:{{ NEXTCLOUD_DOCKER_INCL_PATH }}
- name: Append generated config to config.php only if not present - name: Append generated config to config.php only if not present
command: > command: >
docker exec -u {{ NEXTCLOUD_DOCKER_USER }} {{ NEXTCLOUD_CONTAINER }} sh -c " docker exec -u {{ NEXTCLOUD_DOCKER_USER }} {{ NEXTCLOUD_CONTAINER }} sh -c "
grep -q '{{ NEXTCLOUD_DOCKER_CONF_ADD_PATH }}' {{ NEXTCLOUD_DOCKER_CONFIG_FILE }} || grep -q '{{ NEXTCLOUD_DOCKER_CONF_ADD_PATH }}' {{ NEXTCLOUD_DOCKER_CONFIG_FILE }} ||

View File

@@ -1,9 +1,4 @@
--- ---
- name: "load docker, db and proxy for {{ application_id }}"
include_role:
name: sys-stk-full-stateful
vars:
- name: Setup the full docker stack - name: Setup the full docker stack
include_tasks: 01_fullstack.yml include_tasks: 01_fullstack.yml
vars: vars: