From 9a7480d13ab3be53f0152a19c68d596490d5d290 Mon Sep 17 00:00:00 2001 From: Andreas Karis Date: Tue, 6 Jun 2017 12:55:50 -0400 Subject: [PATCH] RHEL/CentOS: Fix default routes for IPv4/IPv6 configuration. Since f38fa413176, default routes get added to both ifcfg-* and route-* and route6-* files. Default routes should only go to ifcfg-* files, otherwise the information is redundant. LP: #1696176 Resolves: rhbz#1438082 Signed-off-by: Ryan McCabe (cherry picked from commit f99745cf916e707eaa1ded6f12e8b69837b7242d) --- cloudinit/net/sysconfig.py | 12 +++++++----- tests/unittests/test_net.py | 8 -------- 2 files changed, 7 insertions(+), 13 deletions(-) diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py index 6a0dd43..c67e6aa 100644 --- a/cloudinit/net/sysconfig.py +++ b/cloudinit/net/sysconfig.py @@ -381,11 +381,13 @@ class Renderer(renderer.Renderer): nm_key = 'NETMASK%s' % route_cfg.last_idx addr_key = 'ADDRESS%s' % route_cfg.last_idx route_cfg.last_idx += 1 - for (old_key, new_key) in [('gateway', gw_key), - ('netmask', nm_key), - ('network', addr_key)]: - if old_key in route: - route_cfg[new_key] = route[old_key] + # add default routes only to ifcfg files, not + # to route-* or route6-* + for (old_key, new_key) in [('gateway', gw_key), + ('netmask', nm_key), + ('network', addr_key)]: + if old_key in route: + route_cfg[new_key] = route[old_key] @classmethod def _render_bonding_opts(cls, iface_cfg, iface): diff --git a/tests/unittests/test_net.py b/tests/unittests/test_net.py index 172d604..45ab732 100755 --- a/tests/unittests/test_net.py +++ b/tests/unittests/test_net.py @@ -148,14 +148,6 @@ ONBOOT=yes TYPE=Ethernet USERCTL=no """.lstrip()), - ('etc/sysconfig/network-scripts/route-eth0', - """ -# Created by cloud-init on instance boot automatically, do not edit. -# -ADDRESS0=0.0.0.0 -GATEWAY0=172.19.3.254 -NETMASK0=0.0.0.0 -""".lstrip()), ('etc/resolv.conf', """ ; Created by cloud-init on instance boot automatically, do not edit.