Eliminați variabila play goală care ascunde harta proxy a Ansible
Variabilele de grup din inventar pierd în fața unei declarații la nivel de play chiar și atunci când acea declarație este goală sau null.
Dacă group_vars definește o hartă proxy dar sarcina primește o valoare goală, căutați aceeași variabilă declarată în play. O variabilă de play are prioritate mai mare; un substituent gol încă suprascrie inventarul.
Pentru o descărcare externă căreia i se permite să folosească un proxy HTTP public, lista de proxy HTTP oferă adrese candidate pentru valorile inventarului. Păstrați harta în inventar:
proxy_env:
http_proxy: http://proxy.example.net:8080
https_proxy: http://proxy.example.net:8080Apoi aplicați-o sarcinii vizate fără un substituent proxy_env: la nivel de play:
environment: "{{ proxy_env | default({}) }}"Dacă un rol are nevoie de o soluție de rezervă, o hartă goală în valorile implicite ale rolului se află sub valorile inventarului și lasă inventarul să câștige.
Filtrul prezentat tratează undefined, nu fiecare stare care pare goală. null explicit este deja definit, așa că default({}) obișnuit nu șterge acea suprascriere cu prioritate mai mare.
Verificați valoarea efectivă pentru gazda afectată înainte de a schimba punctul final al proxy-ului. Directiva environment furnizează intrările unei sarcini numai după ce prioritatea variabilelor a ales harta pe care o evaluează.