SHA256
1
0
forked from pool/cloud-init

Accepting request 741941 from Cloud:Tools

- Add cloud-init-renderer-detect.patch (bsc#1154092, boo#1142988)
  + Short curcuit the conditional for identifying the sysconfig renderer.
    If we find ifup/ifdown accept the renderer as available.

- Add cloud-init-break-resolv-symlink.patch (bsc#1151488)
  + If /etc/resolv.conf is a symlink break it. This will avoid netconfig
    from clobbering the changes cloud-init applied.

OBS-URL: https://build.opensuse.org/request/show/741941
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/cloud-init?expand=0&rev=63
This commit is contained in:
Dominique Leuenberger 2019-10-25 16:40:22 +00:00 committed by Git OBS Bridge
commit 83f69b8b12
4 changed files with 54 additions and 0 deletions

View File

@ -0,0 +1,14 @@
--- cloudinit/net/sysconfig.py.orig
+++ cloudinit/net/sysconfig.py
@@ -705,6 +705,11 @@ class Renderer(renderer.Renderer):
resolv_content = self._render_dns(network_state,
existing_dns_path=dns_path)
if resolv_content:
+ # netconfig checks if /etc/resolv.conf is a symlink and if
+ # that is true will write it's version of the file clobbering
+ # our changes.
+ if os.path.islink(dns_path):
+ os.unlink(dns_path)
util.write_file(dns_path, resolv_content, file_mode)
if self.networkmanager_conf_path:
nm_conf_path = util.target_path(target,

View File

@ -0,0 +1,20 @@
--- cloudinit/net/sysconfig.py.orig
+++ cloudinit/net/sysconfig.py
@@ -748,7 +748,7 @@ class Renderer(renderer.Renderer):
def available(target=None):
sysconfig = available_sysconfig(target=target)
nm = available_nm(target=target)
- return (util.get_linux_distro()[0] in KNOWN_DISTROS
+ return (util.system_info()['variant'] in KNOWN_DISTROS
and any([nm, sysconfig]))
@@ -758,6 +758,8 @@ def available_sysconfig(target=None):
for p in expected:
if not util.which(p, search=search, target=target):
return False
+ else:
+ return True
expected_paths = ['etc/sysconfig/network/scripts/functions.netconfig']
for p in expected_paths:

View File

@ -1,3 +1,17 @@
-------------------------------------------------------------------
Tue Oct 22 19:57:22 UTC 2019 - Robert Schweikert <rjschwei@suse.com>
- Add cloud-init-renderer-detect.patch (bsc#1154092, boo#1142988)
+ Short curcuit the conditional for identifying the sysconfig renderer.
If we find ifup/ifdown accept the renderer as available.
-------------------------------------------------------------------
Tue Oct 22 12:13:59 UTC 2019 - Robert Schweikert <rjschwei@suse.com>
- Add cloud-init-break-resolv-symlink.patch (bsc#1151488)
+ If /etc/resolv.conf is a symlink break it. This will avoid netconfig
from clobbering the changes cloud-init applied.
-------------------------------------------------------------------
Thu Sep 26 12:15:50 UTC 2019 - Robert Schweikert <rjschwei@suse.com>

View File

@ -47,6 +47,10 @@ Patch47: cloud-init-trigger-udev.patch
Patch50: cloud-init-noresolv-merge-no-dns-data.diff
# FIXME expected in 19.3
Patch51: cloud-init-after-wicked.patch
# FIXME (lp#1849296)
Patch52: cloud-init-break-resolv-symlink.patch
# FIXME (lp#1849378)
Patch53: cloud-init-renderer-detect.patch
BuildRequires: fdupes
BuildRequires: filesystem
@ -192,6 +196,8 @@ Documentation and examples for cloud-init tools
%patch47
%patch50 -p1
%patch51 -p1
%patch52
%patch53
%build
%if 0%{?suse_version} && 0%{?suse_version} <= 1315