Ansible: Proxy / no_proxy für einzelnen Task aktivieren / deaktivieren

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

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.