- Update to version 18.5 (bsc#1121878, boo#1116767)

+ Remove 
    0001-Fix-the-service-order-for-SUSE-distributions.patch
    0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch
    0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch
    included upstream
  + Forward port cloud-init-sysconf-ethsetup.patch
  + Add cloud-init-write-routes.patch
  + tests: add Disco release [Joshua Powers]
  + net: render 'metric' values in per-subnet routes (LP: #1805871)
  + write_files: add support for appending to files. [James Baxter]
  + config: On ubuntu select cloud archive mirrors for armel, armhf, arm64.
    (LP: #1805854)
  + dhclient-hook: cleanups, tests and fix a bug on 'down' event.
  + NoCloud: Allow top level 'network' key in network-config. (LP: #1798117)
  + ovf: Fix ovf network config generation gateway/routes (LP: #1806103)
  + azure: detect vnet migration via netlink media change event
    [Tamilmani Manoharan]
  + Azure: fix copy/paste error in error handling when reading azure ovf.
  + [Adam DePue]
  + tests: fix incorrect order of mocks in test_handle_zfs_root.
  + doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen]
  + OVF: identify label iso9660 filesystems with label 'OVF ENV'.
  + logs: collect-logs ignore instance-data-sensitive.json on non-root user
    (LP: #1805201)
  + net: Ephemeral*Network: add connectivity check via URL
  + azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598)
  + resizefs: Prefix discovered devpath with '/dev/' when path does not
    exist [Igor Galić]
  + azure: retry imds polling on requests.Timeout (LP: #1800223)

OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=125
This commit is contained in:
Robert Schweikert 2019-01-18 09:50:54 +00:00 committed by Git OBS Bridge
parent a76ae619ee
commit 1064b17095
6 changed files with 182 additions and 105 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f19b969dbf2bda771a6a41fdb22b79b163b8a3b81cf1a45036d17993789bef7f
size 965107

3
cloud-init-18.5.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:650d1eb38ea488b3ea8cc9d7b0fb975bb3c9a3e5ca7dcaf924892f5f9813da92
size 990381

View File

@ -1,20 +1,6 @@
From 6732e10fa677566a2ddcbc7ff6727cf697d35761 Mon Sep 17 00:00:00 2001
From: Robert Schweikert <rjschwei@suse.com>
Date: Tue, 23 Oct 2018 12:37:19 -0400
Subject: [PATCH] - Follow up to db50bc0d9 + ONBOOT is not recognized on
openSUSE and SUSE Linux Enterprise, add the STARTMODE setting
---
cloudinit/net/sysconfig.py | 2 +
.../unittests/test_distros/test_netconfig.py | 8 ++++
tests/unittests/test_net.py | 40 +++++++++++++++++++
3 files changed, 50 insertions(+)
diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py
index 9c16d3a7..ff847038 100644
--- a/cloudinit/net/sysconfig.py
+++ b/cloudinit/net/sysconfig.py
@@ -242,6 +242,7 @@ class Renderer(renderer.Renderer):
--- cloudinit/net/sysconfig.py.orig
+++ cloudinit/net/sysconfig.py
@@ -252,6 +252,7 @@ class Renderer(renderer.Renderer):
('USERCTL', False),
('NM_CONTROLLED', False),
('BOOTPROTO', 'none'),
@ -22,7 +8,7 @@ index 9c16d3a7..ff847038 100644
])
# If these keys exist, then their values will be used to form
@@ -336,6 +337,7 @@ class Renderer(renderer.Renderer):
@@ -346,6 +347,7 @@ class Renderer(renderer.Renderer):
iface_cfg.name))
if subnet.get('control') == 'manual':
iface_cfg['ONBOOT'] = False
@ -30,11 +16,9 @@ index 9c16d3a7..ff847038 100644
# set IPv4 and IPv6 static addresses
ipv4_index = -1
diff --git a/tests/unittests/test_distros/test_netconfig.py b/tests/unittests/test_distros/test_netconfig.py
index 6e339355..e986b593 100644
--- a/tests/unittests/test_distros/test_netconfig.py
+++ b/tests/unittests/test_distros/test_netconfig.py
@@ -468,6 +468,7 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase):
--- tests/unittests/test_distros/test_netconfig.py.orig
+++ tests/unittests/test_distros/test_netconfig.py
@@ -468,6 +468,7 @@ class TestNetCfgDistroRedhat(TestNetCfgD
NETMASK=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
@ -42,7 +26,7 @@ index 6e339355..e986b593 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -476,6 +477,7 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase):
@@ -476,6 +477,7 @@ class TestNetCfgDistroRedhat(TestNetCfgD
DEVICE=eth1
NM_CONTROLLED=no
ONBOOT=yes
@ -50,7 +34,7 @@ index 6e339355..e986b593 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -499,6 +501,7 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase):
@@ -499,6 +501,7 @@ class TestNetCfgDistroRedhat(TestNetCfgD
IPV6_DEFAULTGW=2607:f0d0:1002:0011::1
NM_CONTROLLED=no
ONBOOT=yes
@ -58,7 +42,7 @@ index 6e339355..e986b593 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -507,6 +510,7 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase):
@@ -507,6 +510,7 @@ class TestNetCfgDistroRedhat(TestNetCfgD
DEVICE=eth1
NM_CONTROLLED=no
ONBOOT=yes
@ -66,7 +50,7 @@ index 6e339355..e986b593 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -559,6 +563,7 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase):
@@ -559,6 +563,7 @@ class TestNetCfgDistroOpensuse(TestNetCf
NETMASK=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
@ -74,7 +58,7 @@ index 6e339355..e986b593 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -567,6 +572,7 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase):
@@ -567,6 +572,7 @@ class TestNetCfgDistroOpensuse(TestNetCf
DEVICE=eth1
NM_CONTROLLED=no
ONBOOT=yes
@ -82,7 +66,7 @@ index 6e339355..e986b593 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -587,6 +593,7 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase):
@@ -587,6 +593,7 @@ class TestNetCfgDistroOpensuse(TestNetCf
IPV6_DEFAULTGW=2607:f0d0:1002:0011::1
NM_CONTROLLED=no
ONBOOT=yes
@ -90,7 +74,7 @@ index 6e339355..e986b593 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -595,6 +602,7 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase):
@@ -595,6 +602,7 @@ class TestNetCfgDistroOpensuse(TestNetCf
DEVICE=eth1
NM_CONTROLLED=no
ONBOOT=yes
@ -98,10 +82,8 @@ index 6e339355..e986b593 100644
TYPE=Ethernet
USERCTL=no
"""),
diff --git a/tests/unittests/test_net.py b/tests/unittests/test_net.py
index 8e383739..d94b9430 100644
--- a/tests/unittests/test_net.py
+++ b/tests/unittests/test_net.py
--- tests/unittests/test_net.py.orig
+++ tests/unittests/test_net.py
@@ -144,6 +144,7 @@ IPADDR=172.19.1.34
NETMASK=255.255.252.0
NM_CONTROLLED=no
@ -150,7 +132,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
""".lstrip()),
@@ -524,6 +530,7 @@ NETWORK_CONFIGS = {
@@ -525,6 +531,7 @@ NETWORK_CONFIGS = {
HWADDR=cf:d6:af:48:e8:80
NM_CONTROLLED=no
ONBOOT=yes
@ -158,15 +140,15 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no"""),
'ifcfg-eth99': textwrap.dedent("""\
@@ -539,6 +546,7 @@ NETWORK_CONFIGS = {
NETMASK=255.255.255.0
@@ -541,6 +548,7 @@ NETWORK_CONFIGS = {
METRIC=10000
NM_CONTROLLED=no
ONBOOT=yes
+ STARTMODE=auto
TYPE=Ethernet
USERCTL=no"""),
},
@@ -652,6 +660,7 @@ NETWORK_CONFIGS = {
@@ -654,6 +662,7 @@ NETWORK_CONFIGS = {
NETMASK=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
@ -174,7 +156,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
MTU=9000
@@ -691,6 +700,7 @@ NETWORK_CONFIGS = {
@@ -693,6 +702,7 @@ NETWORK_CONFIGS = {
DEVICE=iface0
NM_CONTROLLED=no
ONBOOT=yes
@ -182,7 +164,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -894,6 +904,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -896,6 +906,7 @@ pre-down route del -net 10.0.0.0 netmask
MACADDR=aa:bb:cc:dd:ee:ff
NM_CONTROLLED=no
ONBOOT=yes
@ -190,23 +172,23 @@ index 8e383739..d94b9430 100644
TYPE=Bond
USERCTL=no"""),
'ifcfg-bond0.200': textwrap.dedent("""\
@@ -902,6 +913,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -903,6 +914,7 @@ pre-down route del -net 10.0.0.0 netmask
DEVICE=bond0.200
NM_CONTROLLED=no
ONBOOT=yes
PHYSDEV=bond0
+ STARTMODE=auto
PHYSDEV=bond0
TYPE=Ethernet
USERCTL=no
VLAN=yes"""),
@@ -919,6 +931,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -920,6 +932,7 @@ pre-down route del -net 10.0.0.0 netmask
NETMASK=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
PRIO=22
+ STARTMODE=auto
PRIO=22
STP=no
TYPE=Bridge
USERCTL=no"""),
@@ -928,6 +941,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -930,6 +943,7 @@ pre-down route del -net 10.0.0.0 netmask
HWADDR=c0:d6:9f:2c:e8:80
NM_CONTROLLED=no
ONBOOT=yes
@ -214,15 +196,15 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no"""),
'ifcfg-eth0.101': textwrap.dedent("""\
@@ -946,6 +960,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -947,6 +961,7 @@ pre-down route del -net 10.0.0.0 netmask
NETMASK1=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
PHYSDEV=eth0
+ STARTMODE=auto
PHYSDEV=eth0
TYPE=Ethernet
USERCTL=no
VLAN=yes"""),
@@ -956,6 +971,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -958,6 +973,7 @@ pre-down route del -net 10.0.0.0 netmask
MASTER=bond0
NM_CONTROLLED=no
ONBOOT=yes
@ -230,7 +212,7 @@ index 8e383739..d94b9430 100644
SLAVE=yes
TYPE=Ethernet
USERCTL=no"""),
@@ -966,6 +982,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -968,6 +984,7 @@ pre-down route del -net 10.0.0.0 netmask
MASTER=bond0
NM_CONTROLLED=no
ONBOOT=yes
@ -238,7 +220,7 @@ index 8e383739..d94b9430 100644
SLAVE=yes
TYPE=Ethernet
USERCTL=no"""),
@@ -976,6 +993,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -978,6 +995,7 @@ pre-down route del -net 10.0.0.0 netmask
HWADDR=66:bb:9f:2c:e8:80
NM_CONTROLLED=no
ONBOOT=yes
@ -246,7 +228,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no"""),
'ifcfg-eth4': textwrap.dedent("""\
@@ -985,6 +1003,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -987,6 +1005,7 @@ pre-down route del -net 10.0.0.0 netmask
HWADDR=98:bb:9f:2c:e8:80
NM_CONTROLLED=no
ONBOOT=yes
@ -254,7 +236,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no"""),
'ifcfg-eth5': textwrap.dedent("""\
@@ -993,6 +1012,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -995,6 +1014,7 @@ pre-down route del -net 10.0.0.0 netmask
HWADDR=98:bb:9f:2c:e8:8a
NM_CONTROLLED=no
ONBOOT=no
@ -262,7 +244,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no""")
},
@@ -1282,6 +1302,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1306,6 +1326,7 @@ pre-down route del -net 10.0.0.0 netmask
NETMASK1=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
@ -270,23 +252,23 @@ index 8e383739..d94b9430 100644
TYPE=Bond
USERCTL=no
"""),
@@ -1293,6 +1314,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1316,6 +1337,7 @@ pre-down route del -net 10.0.0.0 netmask
MASTER=bond0
NM_CONTROLLED=no
ONBOOT=yes
SLAVE=yes
+ STARTMODE=auto
SLAVE=yes
TYPE=Ethernet
USERCTL=no
"""),
@@ -1309,6 +1331,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1332,6 +1354,7 @@ pre-down route del -net 10.0.0.0 netmask
MASTER=bond0
NM_CONTROLLED=no
ONBOOT=yes
SLAVE=yes
+ STARTMODE=auto
SLAVE=yes
TYPE=Ethernet
USERCTL=no
"""),
@@ -1334,6 +1357,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1358,6 +1381,7 @@ pre-down route del -net 10.0.0.0 netmask
NETMASK1=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
@ -294,23 +276,23 @@ index 8e383739..d94b9430 100644
TYPE=Bond
USERCTL=no
"""),
@@ -1345,6 +1369,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1368,6 +1392,7 @@ pre-down route del -net 10.0.0.0 netmask
MASTER=bond0
NM_CONTROLLED=no
ONBOOT=yes
SLAVE=yes
+ STARTMODE=auto
SLAVE=yes
TYPE=Ethernet
USERCTL=no
"""),
@@ -1363,6 +1388,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1390,6 +1415,7 @@ pre-down route del -net 10.0.0.0 netmask
MASTER=bond0
NM_CONTROLLED=no
ONBOOT=yes
SLAVE=yes
+ STARTMODE=auto
SLAVE=yes
TYPE=Ethernet
USERCTL=no
"""),
@@ -1400,6 +1426,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1428,6 +1454,7 @@ pre-down route del -net 10.0.0.0 netmask
HWADDR=aa:bb:cc:dd:e8:00
NM_CONTROLLED=no
ONBOOT=yes
@ -318,23 +300,23 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no"""),
'ifcfg-en0.99': textwrap.dedent("""\
@@ -1418,6 +1445,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1445,6 +1472,7 @@ pre-down route del -net 10.0.0.0 netmask
NETMASK1=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
PHYSDEV=en0
+ STARTMODE=auto
PHYSDEV=en0
TYPE=Ethernet
USERCTL=no
VLAN=yes"""),
@@ -1459,6 +1487,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1486,6 +1514,7 @@ pre-down route del -net 10.0.0.0 netmask
NETMASK=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
PRIO=22
+ STARTMODE=auto
PRIO=22
STP=no
TYPE=Bridge
USERCTL=no
@@ -1472,6 +1501,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1500,6 +1529,7 @@ pre-down route del -net 10.0.0.0 netmask
IPV6INIT=yes
NM_CONTROLLED=no
ONBOOT=yes
@ -342,7 +324,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -1484,6 +1514,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1512,6 +1542,7 @@ pre-down route del -net 10.0.0.0 netmask
IPV6INIT=yes
NM_CONTROLLED=no
ONBOOT=yes
@ -350,7 +332,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -1558,6 +1589,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1586,6 +1617,7 @@ pre-down route del -net 10.0.0.0 netmask
NETMASK=255.255.255.0
NM_CONTROLLED=no
ONBOOT=no
@ -358,7 +340,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -1568,6 +1600,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1596,6 +1628,7 @@ pre-down route del -net 10.0.0.0 netmask
MTU=1480
NM_CONTROLLED=no
ONBOOT=yes
@ -366,7 +348,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -1577,6 +1610,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
@@ -1605,6 +1638,7 @@ pre-down route del -net 10.0.0.0 netmask
HWADDR=52:54:00:12:34:ff
NM_CONTROLLED=no
ONBOOT=no
@ -374,7 +356,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
"""),
@@ -1933,6 +1967,7 @@ DEVICE=eth1000
@@ -1971,6 +2005,7 @@ DEVICE=eth1000
HWADDR=07-1C-C6-75-A4-BE
NM_CONTROLLED=no
ONBOOT=yes
@ -382,7 +364,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
""".lstrip()
@@ -2054,6 +2089,7 @@ IPADDR=10.0.2.15
@@ -2092,6 +2127,7 @@ IPADDR=10.0.2.15
NETMASK=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
@ -390,7 +372,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
"""
@@ -2075,6 +2111,7 @@ BOOTPROTO=dhcp
@@ -2113,6 +2149,7 @@ BOOTPROTO=dhcp
DEVICE=eth0
NM_CONTROLLED=no
ONBOOT=yes
@ -398,7 +380,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
"""
@@ -2222,6 +2259,7 @@ DEVICE=eth1000
@@ -2260,6 +2297,7 @@ DEVICE=eth1000
HWADDR=07-1C-C6-75-A4-BE
NM_CONTROLLED=no
ONBOOT=yes
@ -406,7 +388,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
""".lstrip()
@@ -2343,6 +2381,7 @@ IPADDR=10.0.2.15
@@ -2381,6 +2419,7 @@ IPADDR=10.0.2.15
NETMASK=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
@ -414,7 +396,7 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
"""
@@ -2364,6 +2403,7 @@ BOOTPROTO=dhcp
@@ -2402,6 +2441,7 @@ BOOTPROTO=dhcp
DEVICE=eth0
NM_CONTROLLED=no
ONBOOT=yes
@ -422,6 +404,3 @@ index 8e383739..d94b9430 100644
TYPE=Ethernet
USERCTL=no
"""
--
2.19.0

View File

@ -0,0 +1,40 @@
--- cloudinit/distros/opensuse.py.orig
+++ cloudinit/distros/opensuse.py
@@ -172,8 +172,37 @@ class Distro(distros.Distro):
util.write_file(out_fn, str(conf), 0o644)
def _write_network_config(self, netconfig):
+ self._write_routes(netconfig)
return self._supported_write_network_config(netconfig)
+ def _write_routes(self, netconfig):
+ """Write route files, not part of the standard distro interface"""
+ # Due to the implementation of the sysconfig renderer default routes
+ # are setup in ifcfg-* files. But this does not work on SLES or
+ # openSUSE https://bugs.launchpad.net/cloud-init/+bug/1812117
+ # this is a very hacky way to get around the problem until a real
+ # solution is found in the sysconfig renderer
+ device_configs = netconfig.get('config', [])
+ default_nets = ('::', '0.0.0.0')
+ for config in device_configs:
+ if_name = config.get('name')
+ subnets = config.get('subnets', [])
+ for subnet in subnets:
+ routes = subnet.get('routes', [])
+ config_routes = ''
+ for route in routes:
+ dest = route.get('network')
+ if dest in default_nets:
+ dest = 'default'
+ gateway = route.get('gateway')
+ config_routes += ' '.join([dest, gateway])
+ if dest != 'default':
+ config_routes += ' ' + route.get('netmask', '')
+ config_routes += '\n'
+ if config_routes:
+ route_file = '/etc/sysconfig/network/ifroute-%s' % if_name
+ util.write_file(route_file, config_routes)
+
@property
def preferred_ntp_clients(self):
"""The preferred ntp client is dependent on the version."""

View File

@ -1,3 +1,67 @@
-------------------------------------------------------------------
Mon Jan 7 20:22:39 UTC 2019 - Robert Schweikert <rjschwei@suse.com>
- Update to version 18.5 (bsc#1121878, boo#1116767)
+ Remove
0001-Fix-the-service-order-for-SUSE-distributions.patch
0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch
0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch
included upstream
+ Forward port cloud-init-sysconf-ethsetup.patch
+ Add cloud-init-write-routes.patch
+ tests: add Disco release [Joshua Powers]
+ net: render 'metric' values in per-subnet routes (LP: #1805871)
+ write_files: add support for appending to files. [James Baxter]
+ config: On ubuntu select cloud archive mirrors for armel, armhf, arm64.
(LP: #1805854)
+ dhclient-hook: cleanups, tests and fix a bug on 'down' event.
+ NoCloud: Allow top level 'network' key in network-config. (LP: #1798117)
+ ovf: Fix ovf network config generation gateway/routes (LP: #1806103)
+ azure: detect vnet migration via netlink media change event
[Tamilmani Manoharan]
+ Azure: fix copy/paste error in error handling when reading azure ovf.
+ [Adam DePue]
+ tests: fix incorrect order of mocks in test_handle_zfs_root.
+ doc: Change dns_nameserver property to dns_nameservers. [Tomer Cohen]
+ OVF: identify label iso9660 filesystems with label 'OVF ENV'.
+ logs: collect-logs ignore instance-data-sensitive.json on non-root user
(LP: #1805201)
+ net: Ephemeral*Network: add connectivity check via URL
+ azure: _poll_imds only retry on 404. Fail on Timeout (LP: #1803598)
+ resizefs: Prefix discovered devpath with '/dev/' when path does not
exist [Igor Galić]
+ azure: retry imds polling on requests.Timeout (LP: #1800223)
+ azure: Accept variation in error msg from mount for ntfs volumes
[Jason Zions] (LP: #1799338)
+ azure: fix regression introduced when persisting ephemeral dhcp lease
[asakkurr]
+ azure: add udev rules to create cloud-init Gen2 disk name symlinks
(LP: #1797480)
+ tests: ec2 mock missing httpretty user-data and instance-identity routes
+ azure: remove /etc/netplan/90-hotplug-azure.yaml when net from IMDS
+ azure: report ready to fabric after reprovision and reduce logging
[asakkurr] (LP: #1799594)
+ query: better error when missing read permission on instance-data
+ instance-data: fallback to instance-data.json if sensitive is absent.
(LP: #1798189)
+ docs: remove colon from network v1 config example. [Tomer Cohen]
+ Add cloud-id binary to packages for SUSE [Jason Zions]
+ systemd: On SUSE ensure cloud-init.service runs before wicked
[Robert Schweikert] (LP: #1799709)
+ update detection of openSUSE variants [Robert Schweikert]
+ azure: Add apply_network_config option to disable network from IMDS
(LP: #1798424)
+ Correct spelling in an error message (udevadm). [Katie McLaughlin]
+ tests: meta_data key changed to meta-data in ec2 instance-data.json
(LP: #1797231)
+ tests: fix kvm integration test to assert flexible config-disk path
(LP: #1797199)
+ tools: Add cloud-id command line utility
+ instance-data: Add standard keys platform and subplatform. Refactor ec2.
+ net: ignore nics that have "zero" mac address. (LP: #1796917)
+ tests: fix apt_configure_primary to be more flexible
+ Ubuntu: update sources.list to comment out deb-src entries. (LP: #74747)
-------------------------------------------------------------------
Fri Nov 2 14:13:42 UTC 2018 - Robert Schweikert <rjschwei@suse.com>

View File

@ -18,7 +18,7 @@
%global configver 0.7
Name: cloud-init
Version: 18.4
Version: 18.5
Release: 0
License: GPL-3.0 and AGPL-3.0
Summary: Cloud node initialization tool
@ -37,22 +37,17 @@ Patch20: cloud-init-python2-sigpipe.patch
Patch21: cloud-init-template-py2.patch
Patch29: datasourceLocalDisk.patch
Patch34: cloud-init-tests-set-exec.patch
# FIXME
# https://code.launchpad.net/~rjschwei/cloud-init/+git/cloud-init/+merge/357644
Patch36: 0001-Follow-the-ever-bouncing-ball-for-openSUSE-distribut.patch
Patch37: 0002-Add-tests-for-additional-openSUSE-distro-condition-m.patch
# FIXME no proposed solution
Patch38: cloud-init-sysconf-path.patch
# FIXME (lp#1799540)
# https://code.launchpad.net/~rjschwei/cloud-init/+git/cloud-init/+merge/357710
Patch39: cloud-init-sysconf-ethsetup.patch
# FIXME (lp#1799709)
# https://code.launchpad.net/~rjschwei/cloud-init/+git/cloud-init/+merge/357752
Patch40: 0001-Fix-the-service-order-for-SUSE-distributions.patch
# FIXME (lp# 1800854)
Patch41: cloud-init-static-net.patch
# FIXME (lp#1801364)
Patch42: cloud-init-ostack-metadat-dencode.patch
# FIXME (lp#1812117)
Patch43: cloud-init-write-routes.patch
BuildRequires: fdupes
BuildRequires: filesystem
@ -193,13 +188,11 @@ Documentation and examples for cloud-init tools
%endif
%patch29 -p0
%patch34
%patch36 -p1
%patch37 -p1
%patch38
%patch39 -p1
%patch40 -p1
%patch39
%patch41
%patch42
%patch43
%build
%if 0%{?suse_version} && 0%{?suse_version} <= 1315
@ -289,6 +282,7 @@ popd
%defattr(-,root,root)
# do not mark as doc or we get conflicts with the doc package
%{docdir}/LICENSE
%{_bindir}/cloud-id
%{_bindir}/cloud-init
%{_bindir}/cloud-init-per
%dir %{_sysconfdir}/cloud