From 5514d5922cbc92278868bfea587c4207619d81fc Mon Sep 17 00:00:00 2001 From: Eduardo Otubo Date: Thu, 3 Dec 2020 12:34:01 +0100 Subject: [PATCH 3/3] Don't override default network configuration Signed-off-by: Eduardo Otubo --- cloudinit/net/sysconfig.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py index 9c822c3e..a240f65e 100644 --- a/cloudinit/net/sysconfig.py +++ b/cloudinit/net/sysconfig.py @@ -918,7 +918,17 @@ class Renderer(renderer.Renderer): # Distros configuring /etc/sysconfig/network as a file e.g. Centos if sysconfig_path.endswith('network'): util.ensure_dir(os.path.dirname(sysconfig_path)) - netcfg = [_make_header(), 'NETWORKING=yes'] + # Make sure that existing lines, other than overriding ones, remain + netcfg = [] + for line in util.load_file(sysconfig_path, quiet=True).split('\n'): + if 'cloud-init' in line: + break + if not line.startswith(('NETWORKING=', + 'IPV6_AUTOCONF=', + 'NETWORKING_IPV6=')): + netcfg.append(line) + # Now generate the cloud-init portion of sysconfig/network + netcfg.extend([_make_header(), 'NETWORKING=yes']) if network_state.use_ipv6: netcfg.append('NETWORKING_IPV6=yes') netcfg.append('IPV6_AUTOCONF=no') -- 2.27.0