Files
computer-playbook/roles/web-app-penpot/tasks/main.yml
kevinveenbirkenbachandClaude Opus 5 ceb7e9e628 fix(penpot,matrix,n8n,swarm-drill): repair four CI root causes
From triage of run 33923190220. Each fix is independently complete.

penpot: ansible templates delegate_to before the task's merged when, and AnsibleUndefinedVariable escapes get_delegated_vars_and_hostname. PENPOT_BACKEND_HOST_NODE is set only by the resolve include, so the bootstrap task hard-failed on every host that include skipped instead of skipping with it. A block-level when cannot prevent this; move the tasks into a dynamic include.

matrix: the MDAD reconfigure looked for volume matrix_matrix_mdad_state (real name matrix_mdad_state) and container matrix-mdad (real name matrix). Both if-bodies were skipped while the task still reported changed, so a rotated S3 secret never reached synapse and every media write got SignatureDoesNotMatch. Move the shell into its own script and pass the real names through the environment. Also add no_log to the vars.yml render, whose diff printed 16 secrets in cleartext.

n8n: when the settings file and N8N_ENCRYPTION_KEY disagree, oclif's findCommand throws for every command, so 'n8n export:credentials' is unreachable in exactly the state that would need it. The re-key is one-way; pin it rotatable: false.

swarm-drill: distros.sh sees only rc=124 and cannot tell a wedged deploy from one the sweep deadline cut short. Say so where the governor caps it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-08 12:46:34 +02:00

24 lines
846 B
YAML

---
- name: "🧩 For '{{ application_id }}': load docker, db and proxy"
include_role:
name: sys-stk-full
vars:
webserver_client_max_body_size: "100m"
compose_handlers_flush: false
- name: "🚀 Deploy the shared JVM CA trust wrapper for the backend"
stack_host_copy:
src: "{{ lookup('path_absolute', 'roles/sys-ca-selfsigned/files/shell/java-with-ca-trust.sh') }}"
dest: "{{ [ lookup('container', application_id, 'directories.instance'), 'java-with-ca-trust.sh' ] | path_join }}"
mode: "0755"
notify: compose-up
- name: "🚿 Flush docker service for '{{ application_id }}'"
ansible.builtin.meta: flush_handlers
- name: "🥾 Bootstrap the Penpot administrator's local account"
ansible.builtin.include_tasks: 01_administrator.yml
when:
- IS_STACK_HOST | bool
- PENPOT_NATIVE_LOGIN_ENABLED | bool