Выдаліце пустую зменную п'есы, якая хавае карту проксі Ansible
Зменныя групы інвентара саступаюць аб'яве на ўзроўні п'есы, нават калі гэтая аб'ява пустая або null.
Калі group_vars вызначае карту проксі, але заданне атрымлівае пустае значэнне, шукайце тую ж зменную, аб'яўленую ў п'есе. Зменная п'есы мае вышэйшы прыярытэт; пусты запаўняльнік усё роўна перавышае інвентар.
Для знешняга спампоўвання, якому дазволена выкарыстоўваць публічны HTTP-проксі, спіс HTTP-проксі дае патэнцыйныя адрасы для значэнняў інвентара. Трымайце карту ў інвентары:
proxy_env:
http_proxy: http://proxy.example.net:8080
https_proxy: http://proxy.example.net:8080Затым прымяніце яе да патрэбнага задання без запаўняльніка proxy_env: на ўзроўні п'есы:
environment: "{{ proxy_env | default({}) }}"Калі ролі патрэбны запасны варыянт, пустая карта ў значэннях па змаўчанні ролі знаходзіцца ніжэй за значэнні інвентара і дазваляе інвентару перамагчы.
Паказаны фільтр апрацоўвае undefined, а не кожны стан, які выглядае пустым. Яўны null ужо вызначаны, таму звычайны default({}) не сцірае гэта перакрыццё з вышэйшым прыярытэтам.
Праверце эфектыўнае значэнне для закранутага хоста перад зменай канчатковай кропкі проксі. Дырэктыва environment падае ўваходныя даныя задання толькі пасля таго, як прыярытэт зменных выбера карту, якую яна ацэньвае.