mirror of
https://github.com/JamesTurland/JimsGarage.git
synced 2026-07-26 18:38:14 +00:00
* Fix RKE2 MetalLB L2Advertisement to honor custom lb_pool_name (#135) The apply-manifests role rendered the IPAddressPool from a template using lb_pool_name, but applied the L2Advertisement from a hardcoded remote file where the pool name was baked in as 'first-pool'. Setting lb_pool_name to anything else left the L2Advertisement pointing at a non-existent pool, so MetalLB assigned LoadBalancer IPs but never advertised them (services got an external IP but were unreachable). Template the L2Advertisement locally from lb_pool_name, mirroring the IPAddressPool pattern, so both manifests always reference the same pool. * Add explicit become: true to apply-manifests kubectl tasks These tasks set become_user without a task-level become, tripping ansible-lint's partial-become rule. become is already enabled globally via ansible_become in group_vars/all.yaml, so the tasks already escalate to the ansible user — but that is invisible to the linter (and to anyone reading the task in isolation). Make it explicit with become: true alongside become_user. Behavior-neutral: verified with ansible-playbook -vvv that the escalation target is unchanged (sudo -u ansible; chown ansible on the temp files), so kubectl still runs as the ansible user that owns ~/.kube/config.