diff --git a/roles/network/tasks/detected_network.yml b/roles/network/tasks/detected_network.yml index 6f744398a..d87db5ca6 100644 --- a/roles/network/tasks/detected_network.yml +++ b/roles/network/tasks/detected_network.yml @@ -106,19 +106,20 @@ register: wifi_gateway_found when: discovered_wireless_iface != "none" -- name: Set has_wifi_gateway for {{ discovered_wireless_iface }} if WiFi gateway is detected +- name: Set has_wifi_gateway if WiFi has default gateway detected for {{ discovered_wireless_iface }} set_fact: has_wifi_gateway: True when: discovered_wireless_iface != "none" and (wifi_gateway_found.stdout|int > 0) -- name: Detect secondary gateway active +- name: Detect secondary gateway active on all interfaces shell: ip r | grep default | grep -v {{ discovered_wan_iface }} | awk '{print $5}' register: second_gateway_found + changed_when: False -- name: Set exclude_devices for {{ second_gateway_found.stdout }} if gateway is detected +- name: Set exclude_devices if default gateway has been detected for {{ second_gateway_found.stdout }} set_fact: - exclude_devices: "-e {{ second_gateway_found.stdout }}" - when: second_gateway_found.changed + exclude_devices: "{{ second_gateway_found.stdout }}" + when: second_gateway_found.stdout != "" # XO hack here ap_device would not be active therefore not set with # wired as gw use ap_device to exclude eth0 from network calulations @@ -130,11 +131,11 @@ - name: Exclude reserved Network Adapter if defined - takes adapter name set_fact: - exclude_devices: "-e {{ reserved_device }} {{ exclude_devices }}" + exclude_devices: "{{ exclude_devices }} -e {{ reserved_device }}" when: reserved_device is defined - name: Count LAN ifaces - shell: ls /sys/class/net | grep -v {{ virtual_network_devices }} -e wwlan -e ppp -e {{ device_gw }} {{ exclude_devices }} | wc -l + shell: ls /sys/class/net | grep -v {{ virtual_network_devices }} -e wwlan -e ppp -e {{ device_gw }} -e {{ exclude_devices }} | wc -l register: num_lan_interfaces_result - name: Calculate number of LAN interfaces including WiFi @@ -143,7 +144,7 @@ # LAN - pick non WAN's - name: Create list of LAN (non WAN) ifaces - shell: ls /sys/class/net | grep -v {{ virtual_network_devices }} -e wwlan -e ppp -e {{ device_gw }} {{ exclude_devices }} + shell: ls /sys/class/net | grep -v {{ virtual_network_devices }} -e wwlan -e ppp -e {{ device_gw }} -e {{ exclude_devices }} when: num_lan_interfaces != "0" register: lan_list_result