In meinem AWX Tower habe ich global einen Proxy hinterlegt. Ich hatte jetzt den Fall das ich für einen Task eine Ausnahme benötigt habe. Das geht wie folgt:
Im Task kann unter der Variable environment die Variable http_proxy und no_proxy gesetzt werden, diese gilt dann nur für diesen Task.
environment: no_proxy: 10.10.10.1,www.example.com http_proxy: http://proxy.homelab.local:8080
Hier ein komplettes Beispiel, ich hole per ios_command alle Ports die PoE benutzen und „Phone“ in der Beschreibung haben. Die Ausgabe sende ich an meinen Flask Microwebservice weiter um Ihn zu verwenden.
- hosts: all
tasks:
- name: Get phones
ios_command:
commands:
- show power inline | inc Phone
register: phones
- name: Send results to micro webservice
uri:
url: http://10.10.10.1/datadrop/
method: POST
user: awx_datadrop
password: geheim
body: |
{'hostname': '{{ inventory_hostname }}',
'module': 'phone_collector',
'results': {
'power': {{ phones.stdout_lines[0] }},
}
status_code: 200
body_format: json
environment:
no_proxy: 10.10.10.1