mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 10:59:59 +00:00
A deploy that renders a changed compose.yml, .env or compose override notifies the compose-up handler. When the run fails before that handler completes, for example because the image pull hits Docker Hub's toomanyrequests, the notification is lost. The next run renders the same files (changed=false), and the fallback in tasks/utils/up.yml notifies compose-up only when no container of the stack runs, so the stack keeps its previous images and configuration while the deploy ends with failed=0 (reproduced with web-app-akaunting 3.1.8 -> 3.1.21). 04_files.yml now writes `.compose-up-pending` into the instance directory whenever one of those three files changed in compose mode. The compose-up handler removes it right after `compose up` succeeds, so a failed pull or up leaves it in place, and up.yml notifies compose-up whenever it finds the marker on a later run. Comparing `compose config --hash` with the containers' config-hash labels was ruled out: on an up-to-date stack the two differ for every service, so it would force-recreate on every deploy. Fixes #1169 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
6 lines
368 B
YAML
6 lines
368 B
YAML
---
|
|
COMPOSE_DOWN_ALL_PACKAGE: "docodol"
|
|
COMPOSE_DOWN_ALL_REPO: "{{ lookup('config', 'sys-svc-compose', 'services.svc-compose.repository') }}"
|
|
COMPOSE_DOWN_ALL_REF: "{{ lookup('config', 'sys-svc-compose', 'services.svc-compose.ref') }}"
|
|
COMPOSE_UP_PENDING_MARKER: "{{ [lookup('container', application_id, 'directories.instance'), '.compose-up-pending'] | path_join }}"
|