Files
ansible/roles/pi_hifiberry_amp/handlers/main.yml
Martin Bauer 874a81f664 Give each role's reboot handler its own name
pi_standard_setup, pi_hifiberry_amp and pi_disable_onboard_bluetooth each defined a
handler called "Reboot". Handler names are play-global, so a notify ran only the last
one defined - pi_disable_onboard_bluetooth's - and with that role's `when:`. On every
host where onboard Bluetooth stays on, the handler was skipped and nothing that asked
for a reboot ever got one: not a changed dtoverlay, not a hostname change, not the Pi 5
kernel. Seen on musicdolphin, where a new HiFiBerry overlay sat unapplied in
config.txt after a clean run.

Each role now notifies a handler only it defines.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 21:21:37 +02:00

8 lines
369 B
YAML

---
# Handler names are play-global: if several roles define the same name, only the
# last one defined runs, under *that* role's `when:`. A shared "Reboot" therefore
# never fired while pi_disable_onboard_bluetooth (usually switched off) defined one
# too. Keep this name unique to the role.
- name: Reboot after HiFiBerry boot config change
ansible.builtin.reboot: