Fjern den tomme play-variabel, der skjuler Ansible-proxymappet
Inventargruppevariabler taber til en erklæring på play-niveau, selv når denne erklæring er tom eller null.
Hvis group_vars definerer et proxymap, men opgaven modtager en tom værdi, skal du lede efter den samme variabel erklæret i playet. En play-variabel har højere prioritet; en tom pladsholder tilsidesætter stadig inventaret.
Til en ekstern download, der må bruge en offentlig HTTP-proxy, leverer HTTP-proxylisten kandidatadresser til inventarværdierne. Behold mappet i inventaret:
proxy_env:
http_proxy: http://proxy.example.net:8080
https_proxy: http://proxy.example.net:8080Anvend det derefter på den tilsigtede opgave uden en proxy_env:-pladsholder på play-niveau:
environment: "{{ proxy_env | default({}) }}"Hvis en rolle har brug for et fallback, ligger et tomt map i rollens standardværdier under inventarværdierne og lader inventaret vinde.
Filteret, der vises, håndterer undefined, ikke enhver tomt udseende tilstand. Eksplicit null er allerede defineret, så almindelig default({}) sletter ikke denne tilsidesættelse med højere prioritet.
Kontroller den effektive værdi for den berørte vært, før du ændrer proxyendepunktet. environment-direktivet leverer først en opgaves input, efter at variabelprioriteten har valgt det map, den evaluerer.