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