Távolítsa el az Ansible proxy térképét elrejtő üres play-változót
Az inventory csoportváltozói veszítenek a play szintű deklarációval szemben akkor is, ha az a deklaráció üres vagy null.
Ha a group_vars proxy térképet definiál, de a feladat üres értéket kap, keresse ugyanazt a változót a playben deklarálva. A play-változó elsőbbsége nagyobb; az üres helyőrző még mindig felülírja az inventoryt.
Egy nyilvános HTTP proxyt használó külső letöltésnél a HTTP proxy lista jelölt címeket biztosít az inventory értékeihez. Tartsa a térképet az inventoryban:
proxy_env:
http_proxy: http://proxy.example.net:8080
https_proxy: http://proxy.example.net:8080Ezután alkalmazza a szándékolt feladatra play szintű proxy_env: helyőrző nélkül:
environment: "{{ proxy_env | default({}) }}"Ha egy szerepkörnek tartalékra van szüksége, a szerepkör alapértékeiben lévő üres térkép az inventory értékei alatt van, és hagyja érvényesülni az inventoryt.
A bemutatott szűrő az undefined állapotot kezeli, nem minden üresnek tűnő állapotot. A kifejezett null már definiált, ezért a szokásos default({}) nem törli ezt a nagyobb elsőbbségű felülírást.
Az érintett gazdagép tényleges értékét a proxy végpontjának módosítása előtt ellenőrizze. A environment direktíva csak akkor adja meg a feladat bemeneteit, miután a változó elsőbbség kiválasztotta az általa kiértékelt térképet.