Wenn group_vars eine Proxy-Zuordnung definiert, die Aufgabe aber einen leeren Wert erhält, suchen Sie nach derselben im Play deklarierten Variable. Eine Play-Variable hat Vorrang; ein leerer Platzhalter überschreibt dennoch das Inventory.

Für einen externen Download, der einen öffentlichen HTTP-Proxy verwenden darf, liefert die HTTP-Proxy-Liste Kandidatenadressen für die Inventory-Werte. Belassen Sie die Zuordnung im Inventory:

proxy_env:
  http_proxy: http://proxy.example.net:8080
  https_proxy: http://proxy.example.net:8080

Wenden Sie sie dann auf die vorgesehene Aufgabe an, ohne einen proxy_env:-Platzhalter auf Play-Ebene:

environment: "{{ proxy_env | default({}) }}"

Wenn eine Rolle einen Fallback benötigt, liegt eine leere Zuordnung in den Rollen-Standardwerten unter den Inventory-Werten und lässt das Inventory gewinnen.

Der gezeigte Filter behandelt undefined, nicht jeden leer wirkenden Zustand. Explizites null ist bereits definiert, daher löscht gewöhnliches default({}) diese Überschreibung mit höherem Vorrang nicht.

Prüfen Sie den effektiven Wert für den betroffenen Host, bevor Sie den Proxy-Endpunkt ändern. Die environment-Direktive liefert die Eingaben einer Aufgabe erst, nachdem die Variablenpriorität die Zuordnung ausgewählt hat, die sie auswertet.

Ähnliche Artikel