From 6acab35bf90b93d8c0f6df50a0e2fe5c8583da72 Mon Sep 17 00:00:00 2001 From: Benjamin Graillot Date: Sun, 23 Aug 2020 20:07:28 +0200 Subject: [PATCH] [interfaces] Use ipaddr to get network and netmask --- plays/network-interfaces.yml | 2 +- roles/interfaces/templates/network/interfaces.d/ifalias.j2 | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/plays/network-interfaces.yml b/plays/network-interfaces.yml index b89b02c8..8c3453b9 100755 --- a/plays/network-interfaces.yml +++ b/plays/network-interfaces.yml @@ -1,6 +1,6 @@ #!/usr/bin/env ansible-playbook --- -- hosts: voyager.adm.crans.org +- hosts: voyager.adm.crans.org,boeing.adm.crans.org vars: vlan: - name: srv diff --git a/roles/interfaces/templates/network/interfaces.d/ifalias.j2 b/roles/interfaces/templates/network/interfaces.d/ifalias.j2 index 54ee3ff1..91b86d7d 100644 --- a/roles/interfaces/templates/network/interfaces.d/ifalias.j2 +++ b/roles/interfaces/templates/network/interfaces.d/ifalias.j2 @@ -1,7 +1,8 @@ {{ ansible_header | comment }} {% set vlan_name = (item.name | replace('_', '-')) %} -{% set subnet = query('ldap', 'network', vlan_name) %} +{% set subnet_network = (query('ldap', 'network', vlan_name) | ipaddr('network')) %} +{% set subnet_netmask = (query('ldap', 'network', vlan_name) | ipaddr('netmask')) %} {% set ips = query('ldap', 'ip', ansible_hostname, vlan_name) %} {% if (ips | ipv4 | length) > 0 %} auto {{ interfaces[item.name] }} @@ -9,8 +10,8 @@ iface {{ interfaces[item.name] }} inet static {% for ip in (ips | ipv4) %} address {{ ip }} {% endfor %} - network {{ subnet.network }} - netmask {{ subnet.netmask }} + network {{ subnet_network }} + netmask {{ subnet_netmask }} {% if item.gateway is defined %} gateway {{ item.gateway }} {% endif %}