sailesh1993 / rpms / cloud-init

Forked from rpms/cloud-init a year ago
Clone
297660
From bdcad981ac530277529d1c77fb5e9e6f89409bd8 Mon Sep 17 00:00:00 2001
0a07cd
From: Eduardo Otubo <otubo@redhat.com>
297660
Date: Mon, 5 Oct 2020 13:51:44 +0200
0a07cd
Subject: include 'NOZEROCONF=yes' in /etc/sysconfig/network
0a07cd
0a07cd
RH-Author: Eduardo Otubo <otubo@redhat.com>
0a07cd
Message-id: <20190320114559.23708-1-otubo@redhat.com>
0a07cd
Patchwork-id: 84937
0a07cd
O-Subject: [RHEL-7.7 cloud-init PATCH] include 'NOZEROCONF=yes' in /etc/sysconfig/network
0a07cd
Bugzilla: 1653131
0a07cd
RH-Acked-by: Cathy Avery <cavery@redhat.com>
0a07cd
RH-Acked-by: Mohammed Gamal <mgamal@redhat.com>
0a07cd
RH-Acked-by: Vitaly Kuznetsov <vkuznets@redhat.com>
0a07cd
0a07cd
The option NOZEROCONF=yes is not included by default in
0a07cd
/etc/sysconfig/network, which is required by Overcloud instances. The
0a07cd
patch also includes tests for the modifications.
0a07cd
0a07cd
X-downstream-only: yes
0a07cd
Resolves: rhbz#1653131
0a07cd
0a07cd
Signed-off-by: Eduardo Otubo <otubo@redhat.com>
0a07cd
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
0a07cd
---
0a07cd
 cloudinit/net/sysconfig.py  | 11 ++++++++++-
0a07cd
 tests/unittests/test_net.py |  1 -
0a07cd
 2 files changed, 10 insertions(+), 2 deletions(-)
0a07cd
0a07cd
diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py
297660
index 23e467d..af093dd 100644
0a07cd
--- a/cloudinit/net/sysconfig.py
0a07cd
+++ b/cloudinit/net/sysconfig.py
297660
@@ -888,7 +888,16 @@ class Renderer(renderer.Renderer):
0a07cd
         # Distros configuring /etc/sysconfig/network as a file e.g. Centos
0a07cd
         if sysconfig_path.endswith('network'):
0a07cd
             util.ensure_dir(os.path.dirname(sysconfig_path))
0a07cd
-            netcfg = [_make_header(), 'NETWORKING=yes']
0a07cd
+            netcfg = []
0a07cd
+            for line in util.load_file(sysconfig_path, quiet=True).split('\n'):
0a07cd
+                if 'cloud-init' in line:
0a07cd
+                    break
0a07cd
+                if not line.startswith(('NETWORKING=',
0a07cd
+                                        'IPV6_AUTOCONF=',
0a07cd
+                                        'NETWORKING_IPV6=')):
0a07cd
+                    netcfg.append(line)
0a07cd
+            # Now generate the cloud-init portion of sysconfig/network
0a07cd
+            netcfg.extend([_make_header(), 'NETWORKING=yes'])
0a07cd
             if network_state.use_ipv6:
0a07cd
                 netcfg.append('NETWORKING_IPV6=yes')
0a07cd
                 netcfg.append('IPV6_AUTOCONF=no')
0a07cd
diff --git a/tests/unittests/test_net.py b/tests/unittests/test_net.py
297660
index 2cc57fe..9985a97 100644
0a07cd
--- a/tests/unittests/test_net.py
0a07cd
+++ b/tests/unittests/test_net.py
297660
@@ -1614,7 +1614,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true
0a07cd
                 BOOTPROTO=none
0a07cd
                 DEVICE=bond0
0a07cd
                 DHCPV6C=yes
0a07cd
-                IPV6_AUTOCONF=no
0a07cd
                 IPV6INIT=yes
0a07cd
                 MACADDR=aa:bb:cc:dd:ee:ff
0a07cd
                 ONBOOT=yes
0a07cd
-- 
9dab26
1.8.3.1
0a07cd