--- # Playbook Ansible : Récupérer la config réseau + DNS, écrire dans un fichier local, puis SFTP - name: Collecte configuration réseau et DNS et upload SFTP hosts: all become: yes vars: nas_url: "https://dartydisk5.maison:5006" # ex: https://192.168.1.10:5006 nas_path: "/Datas/NetworkConfigs" # dossier WebDAV nas_user: "stephane.david" nas_pass: "St&ph@ne" tasks: # ------------------------------------------------------- # Étape 1 – Récupérer les infos réseau ET DNS du serveur cible # ------------------------------------------------------- - name: Collecter la configuration réseau et DNS shell: | echo "=== Configuration réseau de {{ inventory_hostname }} ===" > /tmp/config_{{ inventory_hostname }}.txt hostname >> /tmp/config_{{ inventory_hostname }}.txt echo "" >> /tmp/config_{{ inventory_hostname }}.txt # --- Réseau --- ip -4 addr show >> /tmp/config_{{ inventory_hostname }}.txt echo "" >> /tmp/config_{{ inventory_hostname }}.txt cat /etc/hostname >> /tmp/config_{{ inventory_hostname }}.txt echo "" >> /tmp/config_{{ inventory_hostname }}.txt ip route show >> /tmp/config_{{ inventory_hostname }}.txt # --- DNS (resolv.conf + systemd-resolved) --- echo "=== Configuration DNS ===" >> /tmp/config_{{ inventory_hostname }}.txt cat /etc/resolv.conf >> /tmp/config_{{ inventory_hostname }}.txt echo "" >> /tmp/config_{{ inventory_hostname }}.txt resolvectl status >> /tmp/config_{{ inventory_hostname }}.txt 2>&1 || true args: creates: "/tmp/config_{{ inventory_hostname }}.txt" - name: Upload vers NAS via WebDAV uri: url: "{{ nas_url }}{{ nas_path }}/config_{{ inventory_hostname }}.txt" method: PUT user: "{{ nas_user }}" password: "{{ nas_pass }}" force_basic_auth: yes body_file: "/tmp/config_{{ inventory_hostname }}.txt" status_code: 201, 204 validate_certs: no delegate_to: "{{ inventory_hostname }}"