diff --git a/life-church/playbooks/thinkcenter-reaper.yml b/life-church/playbooks/thinkcenter-reaper.yml index 07b9aba..0f47881 100644 --- a/life-church/playbooks/thinkcenter-reaper.yml +++ b/life-church/playbooks/thinkcenter-reaper.yml @@ -86,6 +86,14 @@ that: inventory_hostname == 'thinkcenter' fail_msg: "Refusing to run — this play is scoped to thinkcenter only." + - name: "[selfheal] Repair any half-configured dpkg/apt state (prevents cascade failures)" + ansible.builtin.shell: | + dpkg --configure -a || true + apt-get -y -f install || true + register: dpkg_selfheal + changed_when: "'Setting up' in (dpkg_selfheal.stdout | default(''))" + failed_when: false + - name: "[safety] Assert reaper_user resolved + exists" block: - name: "[safety] Assert non-empty"