diff --git a/.gitignore b/.gitignore index e69de29..e261af4 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,3 @@ +*.rpm +*.tar.gz +results_cloud-init diff --git a/cloud-init-19.4-Scaleway-Fix-DatasourceScaleway-to-avoid-backtrace-1.patch b/cloud-init-19.4-Scaleway-Fix-DatasourceScaleway-to-avoid-backtrace-1.patch new file mode 100644 index 0000000..d002980 --- /dev/null +++ b/cloud-init-19.4-Scaleway-Fix-DatasourceScaleway-to-avoid-backtrace-1.patch @@ -0,0 +1,107 @@ +From 9e3ac98097ed1c7f49ec8975a40aec7229231aae Mon Sep 17 00:00:00 2001 +From: Louis Bouchard +Date: Wed, 29 Jan 2020 16:55:09 +0100 +Subject: [PATCH] Scaleway: Fix DatasourceScaleway to avoid backtrace (#128) + +Make sure network_config is created when self._network_config is unset. + +Co-authored-by: Scott Moser +--- + cloudinit/sources/DataSourceScaleway.py | 9 +++- + .../test_datasource/test_scaleway.py | 49 +++++++++++++++++++ + 2 files changed, 56 insertions(+), 2 deletions(-) + +diff --git a/cloudinit/sources/DataSourceScaleway.py b/cloudinit/sources/DataSourceScaleway.py +index b573b382..83c2bf65 100644 +--- a/cloudinit/sources/DataSourceScaleway.py ++++ b/cloudinit/sources/DataSourceScaleway.py +@@ -188,7 +188,7 @@ class DataSourceScaleway(sources.DataSource): + self.retries = int(self.ds_cfg.get('retries', DEF_MD_RETRIES)) + self.timeout = int(self.ds_cfg.get('timeout', DEF_MD_TIMEOUT)) + self._fallback_interface = None +- self._network_config = None ++ self._network_config = sources.UNSET + + def _crawl_metadata(self): + resp = url_helper.readurl(self.metadata_address, +@@ -227,7 +227,12 @@ class DataSourceScaleway(sources.DataSource): + Configure networking according to data received from the + metadata API. + """ +- if self._network_config: ++ if self._network_config is None: ++ LOG.warning('Found None as cached _network_config. ' ++ 'Resetting to %s', sources.UNSET) ++ self._network_config = sources.UNSET ++ ++ if self._network_config != sources.UNSET: + return self._network_config + + if self._fallback_interface is None: +diff --git a/tests/unittests/test_datasource/test_scaleway.py b/tests/unittests/test_datasource/test_scaleway.py +index f96bf0a2..1b4dd0ad 100644 +--- a/tests/unittests/test_datasource/test_scaleway.py ++++ b/tests/unittests/test_datasource/test_scaleway.py +@@ -7,6 +7,7 @@ import requests + + from cloudinit import helpers + from cloudinit import settings ++from cloudinit import sources + from cloudinit.sources import DataSourceScaleway + + from cloudinit.tests.helpers import mock, HttprettyTestCase, CiTestCase +@@ -403,3 +404,51 @@ class TestDataSourceScaleway(HttprettyTestCase): + + netcfg = self.datasource.network_config + self.assertEqual(netcfg, '0xdeadbeef') ++ ++ @mock.patch('cloudinit.sources.DataSourceScaleway.net.find_fallback_nic') ++ @mock.patch('cloudinit.util.get_cmdline') ++ def test_network_config_unset(self, m_get_cmdline, fallback_nic): ++ """ ++ _network_config will be set to sources.UNSET after the first boot. ++ Make sure it behave correctly. ++ """ ++ m_get_cmdline.return_value = 'scaleway' ++ fallback_nic.return_value = 'ens2' ++ self.datasource.metadata['ipv6'] = None ++ self.datasource._network_config = sources.UNSET ++ ++ resp = {'version': 1, ++ 'config': [{ ++ 'type': 'physical', ++ 'name': 'ens2', ++ 'subnets': [{'type': 'dhcp4'}]}] ++ } ++ ++ netcfg = self.datasource.network_config ++ self.assertEqual(netcfg, resp) ++ ++ @mock.patch('cloudinit.sources.DataSourceScaleway.LOG.warning') ++ @mock.patch('cloudinit.sources.DataSourceScaleway.net.find_fallback_nic') ++ @mock.patch('cloudinit.util.get_cmdline') ++ def test_network_config_cached_none(self, m_get_cmdline, fallback_nic, ++ logwarning): ++ """ ++ network_config() should return config data if cached data is None ++ rather than sources.UNSET ++ """ ++ m_get_cmdline.return_value = 'scaleway' ++ fallback_nic.return_value = 'ens2' ++ self.datasource.metadata['ipv6'] = None ++ self.datasource._network_config = None ++ ++ resp = {'version': 1, ++ 'config': [{ ++ 'type': 'physical', ++ 'name': 'ens2', ++ 'subnets': [{'type': 'dhcp4'}]}] ++ } ++ ++ netcfg = self.datasource.network_config ++ self.assertEqual(netcfg, resp) ++ logwarning.assert_called_with('Found None as cached _network_config. ' ++ 'Resetting to %s', sources.UNSET) +-- +2.18.1 + diff --git a/cloud-init-19.4-cc_set_password-increase-random-pwlength-from-9-to-2.patch b/cloud-init-19.4-cc_set_password-increase-random-pwlength-from-9-to-2.patch new file mode 100644 index 0000000..f6a4f51 --- /dev/null +++ b/cloud-init-19.4-cc_set_password-increase-random-pwlength-from-9-to-2.patch @@ -0,0 +1,28 @@ +From 42788bf24a1a0a5421a2d00a7f59b59e38ba1a14 Mon Sep 17 00:00:00 2001 +From: Ryan Harper +Date: Fri, 24 Jan 2020 21:33:12 +0200 +Subject: [PATCH] cc_set_password: increase random pwlength from 9 to 20 (#189) + +Increasing the bits of security from 52 to 115. + +LP: #1860795 +--- + cloudinit/config/cc_set_passwords.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cloudinit/config/cc_set_passwords.py b/cloudinit/config/cc_set_passwords.py +index e3b39d8b..4943d545 100755 +--- a/cloudinit/config/cc_set_passwords.py ++++ b/cloudinit/config/cc_set_passwords.py +@@ -236,7 +236,7 @@ def handle(_name, cfg, cloud, log, args): + raise errors[-1] + + +-def rand_user_password(pwlen=9): ++def rand_user_password(pwlen=20): + return util.rand_str(pwlen, select_from=PW_SET) + + +-- +2.18.1 + diff --git a/cloud-init-19.4-disable-lxd-tests.patch b/cloud-init-19.4-disable-lxd-tests.patch new file mode 100644 index 0000000..1fe51ee --- /dev/null +++ b/cloud-init-19.4-disable-lxd-tests.patch @@ -0,0 +1,32 @@ +From 1a8143951839afd5b0f80e9d00af582daa429fdc Mon Sep 17 00:00:00 2001 +From: Eduardo Otubo +Date: Fri, 21 Feb 2020 10:52:26 +0100 +Subject: [PATCH] Disable LXD tests + +Signed-off-by: Eduardo Otubo +--- + tests/cloud_tests/platforms/__init__.py | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/tests/cloud_tests/platforms/__init__.py b/tests/cloud_tests/platforms/__init__.py +index 6a410b84..2076d1c7 100644 +--- a/tests/cloud_tests/platforms/__init__.py ++++ b/tests/cloud_tests/platforms/__init__.py +@@ -3,14 +3,12 @@ + """Main init.""" + + from .ec2 import platform as ec2 +-from .lxd import platform as lxd + from .nocloudkvm import platform as nocloudkvm + from .azurecloud import platform as azurecloud + + PLATFORMS = { + 'ec2': ec2.EC2Platform, + 'nocloud-kvm': nocloudkvm.NoCloudKVMPlatform, +- 'lxd': lxd.LXDPlatform, + 'azurecloud': azurecloud.AzureCloudPlatform, + } + +-- +2.17.2 + diff --git a/cloud-init-19.4-nm-controlled.patch b/cloud-init-19.4-nm-controlled.patch new file mode 100644 index 0000000..1f7b26d --- /dev/null +++ b/cloud-init-19.4-nm-controlled.patch @@ -0,0 +1,540 @@ +From 98657d64a1d40769b31fcf375ebb1ea0b373350c Mon Sep 17 00:00:00 2001 +From: Eduardo Otubo +Date: Fri, 21 Feb 2020 11:10:09 +0100 +Subject: [PATCH] Do not write NM_CONTROLLED=no in generated interface config + files + +Signed-off-by: Eduardo Otubo +--- + cloudinit/net/sysconfig.py | 1 - + .../unittests/test_distros/test_netconfig.py | 8 --- + tests/unittests/test_net.py | 55 ------------------- + 3 files changed, 64 deletions(-) + +diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py +index 310cdf01..8bd7e887 100644 +--- a/cloudinit/net/sysconfig.py ++++ b/cloudinit/net/sysconfig.py +@@ -272,7 +272,6 @@ class Renderer(renderer.Renderer): + iface_defaults = tuple([ + ('ONBOOT', True), + ('USERCTL', False), +- ('NM_CONTROLLED', False), + ('BOOTPROTO', 'none'), + ('STARTMODE', 'auto'), + ]) +diff --git a/tests/unittests/test_distros/test_netconfig.py b/tests/unittests/test_distros/test_netconfig.py +index 67209955..1df3bfb5 100644 +--- a/tests/unittests/test_distros/test_netconfig.py ++++ b/tests/unittests/test_distros/test_netconfig.py +@@ -466,7 +466,6 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase): + GATEWAY=192.168.1.254 + IPADDR=192.168.1.5 + NETMASK=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -475,7 +474,6 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase): + self.ifcfg_path('eth1'): dedent("""\ + BOOTPROTO=dhcp + DEVICE=eth1 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -500,7 +498,6 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase): + IPV6ADDR=2607:f0d0:1002:0011::2/64 + IPV6INIT=yes + IPV6_DEFAULTGW=2607:f0d0:1002:0011::1 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -509,7 +506,6 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase): + self.ifcfg_path('eth1'): dedent("""\ + BOOTPROTO=dhcp + DEVICE=eth1 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -562,7 +558,6 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase): + GATEWAY=192.168.1.254 + IPADDR=192.168.1.5 + NETMASK=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -571,7 +566,6 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase): + self.ifcfg_path('eth1'): dedent("""\ + BOOTPROTO=dhcp + DEVICE=eth1 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -593,7 +587,6 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase): + IPV6ADDR=2607:f0d0:1002:0011::2/64 + IPV6INIT=yes + IPV6_DEFAULTGW=2607:f0d0:1002:0011::1 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -602,7 +595,6 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase): + self.ifcfg_path('eth1'): dedent("""\ + BOOTPROTO=dhcp + DEVICE=eth1 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +diff --git a/tests/unittests/test_net.py b/tests/unittests/test_net.py +index 01119e0a..40427461 100644 +--- a/tests/unittests/test_net.py ++++ b/tests/unittests/test_net.py +@@ -496,7 +496,6 @@ GATEWAY=172.19.3.254 + HWADDR=fa:16:3e:ed:9a:59 + IPADDR=172.19.1.34 + NETMASK=255.255.252.0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -530,7 +529,6 @@ GATEWAY=172.19.3.254 + HWADDR=fa:16:3e:ed:9a:59 + IPADDR=172.19.1.34 + NETMASK=255.255.252.0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -600,7 +598,6 @@ IPADDR=172.19.1.34 + IPADDR1=10.0.0.10 + NETMASK=255.255.252.0 + NETMASK1=255.255.255.0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -636,7 +633,6 @@ IPADDR=172.19.1.34 + IPADDR1=10.0.0.10 + NETMASK=255.255.252.0 + NETMASK1=255.255.255.0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -731,7 +727,6 @@ IPV6ADDR_SECONDARIES="2001:DB9::10/64 2001:DB10::10/64" + IPV6INIT=yes + IPV6_DEFAULTGW=2001:DB8::1 + NETMASK=255.255.252.0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -772,7 +767,6 @@ IPV6ADDR_SECONDARIES="2001:DB9::10/64 2001:DB10::10/64" + IPV6INIT=yes + IPV6_DEFAULTGW=2001:DB8::1 + NETMASK=255.255.252.0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -889,7 +883,6 @@ NETWORK_CONFIGS = { + BOOTPROTO=none + DEVICE=eth1 + HWADDR=cf:d6:af:48:e8:80 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -907,7 +900,6 @@ NETWORK_CONFIGS = { + IPADDR=192.168.21.3 + NETMASK=255.255.255.0 + METRIC=10000 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1022,7 +1014,6 @@ NETWORK_CONFIGS = { + IPV6ADDR=2001:1::1/64 + IPV6INIT=yes + NETMASK=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1062,7 +1053,6 @@ NETWORK_CONFIGS = { + DHCPV6C=yes + IPV6INIT=yes + DEVICE=iface0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1111,7 +1101,6 @@ NETWORK_CONFIGS = { + IPV6INIT=yes + IPV6_FORCE_ACCEPT_RA=yes + DEVICE=iface0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1160,7 +1149,6 @@ NETWORK_CONFIGS = { + IPV6INIT=yes + IPV6_FORCE_ACCEPT_RA=no + DEVICE=iface0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1199,7 +1187,6 @@ NETWORK_CONFIGS = { + IPV6_AUTOCONF=yes + IPV6INIT=yes + DEVICE=iface0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1240,7 +1227,6 @@ NETWORK_CONFIGS = { + IPV6_AUTOCONF=yes + IPV6INIT=yes + DEVICE=iface0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1281,7 +1267,6 @@ NETWORK_CONFIGS = { + IPV6INIT=yes + IPV6_FORCE_ACCEPT_RA=yes + DEVICE=iface0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1491,7 +1476,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + DHCPV6C=yes + IPV6INIT=yes + MACADDR=aa:bb:cc:dd:ee:ff +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Bond +@@ -1500,7 +1484,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + BOOTPROTO=dhcp + DEVICE=bond0.200 + DHCLIENT_SET_DEFAULT_ROUTE=no +- NM_CONTROLLED=no + ONBOOT=yes + PHYSDEV=bond0 + STARTMODE=auto +@@ -1519,7 +1502,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + IPV6_DEFAULTGW=2001:4800:78ff:1b::1 + MACADDR=bb:bb:bb:bb:bb:aa + NETMASK=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + PRIO=22 + STARTMODE=auto +@@ -1530,7 +1512,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + BOOTPROTO=none + DEVICE=eth0 + HWADDR=c0:d6:9f:2c:e8:80 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1548,7 +1529,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + MTU=1500 + NETMASK=255.255.255.0 + NETMASK1=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + PHYSDEV=eth0 + STARTMODE=auto +@@ -1560,7 +1540,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + DEVICE=eth1 + HWADDR=aa:d6:9f:2c:e8:80 + MASTER=bond0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + SLAVE=yes +@@ -1571,7 +1550,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + DEVICE=eth2 + HWADDR=c0:bb:9f:2c:e8:80 + MASTER=bond0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + SLAVE=yes +@@ -1582,7 +1560,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + BRIDGE=br0 + DEVICE=eth3 + HWADDR=66:bb:9f:2c:e8:80 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1592,7 +1569,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + BRIDGE=br0 + DEVICE=eth4 + HWADDR=98:bb:9f:2c:e8:80 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -1602,7 +1578,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + DEVICE=eth5 + DHCLIENT_SET_DEFAULT_ROUTE=no + HWADDR=98:bb:9f:2c:e8:8a +- NM_CONTROLLED=no + ONBOOT=no + STARTMODE=manual + TYPE=Ethernet +@@ -1614,7 +1589,6 @@ pre-down route del -net 10.0.0.0/8 gw 11.0.0.1 metric 3 || true + IPADDR=192.168.200.7 + MTU=9000 + NETMASK=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=InfiniBand +@@ -2027,7 +2001,6 @@ iface bond0 inet6 static + MTU=9000 + NETMASK=255.255.255.0 + NETMASK1=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Bond +@@ -2038,7 +2011,6 @@ iface bond0 inet6 static + DEVICE=bond0s0 + HWADDR=aa:bb:cc:dd:e8:00 + MASTER=bond0 +- NM_CONTROLLED=no + ONBOOT=yes + SLAVE=yes + STARTMODE=auto +@@ -2055,7 +2027,6 @@ iface bond0 inet6 static + DEVICE=bond0s1 + HWADDR=aa:bb:cc:dd:e8:01 + MASTER=bond0 +- NM_CONTROLLED=no + ONBOOT=yes + SLAVE=yes + STARTMODE=auto +@@ -2088,7 +2059,6 @@ iface bond0 inet6 static + MTU=9000 + NETMASK=255.255.255.0 + NETMASK1=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Bond +@@ -2099,7 +2069,6 @@ iface bond0 inet6 static + DEVICE=bond0s0 + HWADDR=aa:bb:cc:dd:e8:00 + MASTER=bond0 +- NM_CONTROLLED=no + ONBOOT=yes + SLAVE=yes + STARTMODE=auto +@@ -2122,7 +2091,6 @@ iface bond0 inet6 static + DEVICE=bond0s1 + HWADDR=aa:bb:cc:dd:e8:01 + MASTER=bond0 +- NM_CONTROLLED=no + ONBOOT=yes + SLAVE=yes + STARTMODE=auto +@@ -2161,7 +2129,6 @@ iface bond0 inet6 static + BOOTPROTO=none + DEVICE=en0 + HWADDR=aa:bb:cc:dd:e8:00 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -2180,7 +2147,6 @@ iface bond0 inet6 static + MTU=2222 + NETMASK=255.255.255.0 + NETMASK1=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + PHYSDEV=en0 + STARTMODE=auto +@@ -2222,7 +2188,6 @@ iface bond0 inet6 static + DEVICE=br0 + IPADDR=192.168.2.2 + NETMASK=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + PRIO=22 + STARTMODE=auto +@@ -2238,7 +2203,6 @@ iface bond0 inet6 static + IPADDR6=2001:1::100/96 + IPV6ADDR=2001:1::100/96 + IPV6INIT=yes +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -2252,7 +2216,6 @@ iface bond0 inet6 static + IPADDR6=2001:1::101/96 + IPV6ADDR=2001:1::101/96 + IPV6INIT=yes +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -2327,7 +2290,6 @@ iface bond0 inet6 static + HWADDR=52:54:00:12:34:00 + IPADDR=192.168.1.2 + NETMASK=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=no + STARTMODE=manual + TYPE=Ethernet +@@ -2338,7 +2300,6 @@ iface bond0 inet6 static + DEVICE=eth1 + HWADDR=52:54:00:12:34:aa + MTU=1480 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -2348,7 +2309,6 @@ iface bond0 inet6 static + BOOTPROTO=none + DEVICE=eth2 + HWADDR=52:54:00:12:34:ff +- NM_CONTROLLED=no + ONBOOT=no + STARTMODE=manual + TYPE=Ethernet +@@ -2766,7 +2726,6 @@ class TestRhelSysConfigRendering(CiTestCase): + BOOTPROTO=dhcp + DEVICE=eth1000 + HWADDR=07-1c-c6-75-a4-be +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -2888,7 +2847,6 @@ GATEWAY=10.0.2.2 + HWADDR=52:54:00:12:34:00 + IPADDR=10.0.2.15 + NETMASK=255.255.255.0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -2920,7 +2878,6 @@ HWADDR=fa:16:3e:25:b4:59 + IPADDR=51.68.89.122 + MTU=1500 + NETMASK=255.255.240.0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -2935,7 +2892,6 @@ DEVICE=eth1 + DHCLIENT_SET_DEFAULT_ROUTE=no + HWADDR=fa:16:3e:b1:ca:29 + MTU=9000 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -2961,7 +2917,6 @@ USERCTL=no + # + BOOTPROTO=dhcp + DEVICE=eth0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -3168,7 +3123,6 @@ USERCTL=no + IPV6INIT=yes + IPV6_DEFAULTGW=2001:db8::1 + NETMASK=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -3194,7 +3148,6 @@ USERCTL=no + 'ifcfg-eno1': textwrap.dedent("""\ + BOOTPROTO=none + DEVICE=eno1 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -3206,7 +3159,6 @@ USERCTL=no + IPADDR=192.6.1.9 + MTU=1495 + NETMASK=255.255.255.0 +- NM_CONTROLLED=no + ONBOOT=yes + PHYSDEV=eno1 + STARTMODE=auto +@@ -3238,7 +3190,6 @@ USERCTL=no + IPADDR=10.101.8.65 + MTU=1334 + NETMASK=255.255.255.192 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Bond +@@ -3249,7 +3200,6 @@ USERCTL=no + BOOTPROTO=none + DEVICE=enp0s0 + MASTER=bond0 +- NM_CONTROLLED=no + ONBOOT=yes + SLAVE=yes + STARTMODE=auto +@@ -3261,7 +3211,6 @@ USERCTL=no + BOOTPROTO=none + DEVICE=enp0s1 + MASTER=bond0 +- NM_CONTROLLED=no + ONBOOT=yes + SLAVE=yes + STARTMODE=auto +@@ -3286,7 +3235,6 @@ USERCTL=no + DEVICE=eno1 + HWADDR=07-1c-c6-75-a4-be + METRIC=100 +- NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -3386,7 +3334,6 @@ class TestOpenSuseSysConfigRendering(CiTestCase): + BOOTPROTO=dhcp + DEVICE=eth1000 + HWADDR=07-1c-c6-75-a4-be +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -3508,7 +3455,6 @@ GATEWAY=10.0.2.2 + HWADDR=52:54:00:12:34:00 + IPADDR=10.0.2.15 + NETMASK=255.255.255.0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +@@ -3538,7 +3484,6 @@ USERCTL=no + # + BOOTPROTO=dhcp + DEVICE=eth0 +-NM_CONTROLLED=no + ONBOOT=yes + STARTMODE=auto + TYPE=Ethernet +-- +2.17.2 + diff --git a/cloud-init-19.4-no-override-default-network.patch b/cloud-init-19.4-no-override-default-network.patch new file mode 100644 index 0000000..b7934ba --- /dev/null +++ b/cloud-init-19.4-no-override-default-network.patch @@ -0,0 +1,36 @@ +From 674873573abf2b6e10b09d533a58437c35d508f8 Mon Sep 17 00:00:00 2001 +From: Eduardo Otubo +Date: Fri, 21 Feb 2020 11:40:34 +0100 +Subject: [PATCH] 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 310cdf01..87b8f743 100644 +--- a/cloudinit/net/sysconfig.py ++++ b/cloudinit/net/sysconfig.py +@@ -755,7 +755,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.17.2 + diff --git a/cloud-init-19.4-utils-use-SystemRandom-when-generating-random-passwo.patch b/cloud-init-19.4-utils-use-SystemRandom-when-generating-random-passwo.patch new file mode 100644 index 0000000..c3e27e0 --- /dev/null +++ b/cloud-init-19.4-utils-use-SystemRandom-when-generating-random-passwo.patch @@ -0,0 +1,31 @@ +From 3e2f7356effc9e9cccc5ae945846279804eedc46 Mon Sep 17 00:00:00 2001 +From: Dimitri John Ledkov +Date: Tue, 18 Feb 2020 17:03:24 +0000 +Subject: [PATCH] utils: use SystemRandom when generating random password. + (#204) + +As noticed by Seth Arnold, non-deterministic SystemRandom should be +used when creating security sensitive random strings. +--- + cloudinit/util.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/cloudinit/util.py b/cloudinit/util.py +index d99e82fa..c02b3d9a 100644 +--- a/cloudinit/util.py ++++ b/cloudinit/util.py +@@ -397,9 +397,10 @@ def translate_bool(val, addons=None): + + + def rand_str(strlen=32, select_from=None): ++ r = random.SystemRandom() + if not select_from: + select_from = string.ascii_letters + string.digits +- return "".join([random.choice(select_from) for _x in range(0, strlen)]) ++ return "".join([r.choice(select_from) for _x in range(0, strlen)]) + + + def rand_dict_key(dictionary, postfix=None): +-- +2.18.1 + diff --git a/cloud-init-tmpfiles.conf b/cloud-init-tmpfiles.conf new file mode 100644 index 0000000..0c6d2a3 --- /dev/null +++ b/cloud-init-tmpfiles.conf @@ -0,0 +1 @@ +d /run/cloud-init 0700 root root - - diff --git a/cloud-init.spec b/cloud-init.spec new file mode 100644 index 0000000..18fd44c --- /dev/null +++ b/cloud-init.spec @@ -0,0 +1,503 @@ +Name: cloud-init +Version: 19.4 +Release: 7%{?dist} +Summary: Cloud instance init scripts +License: ASL 2.0 or GPLv3 +URL: http://launchpad.net/cloud-init + +Source0: https://launchpad.net/cloud-init/trunk/%{version}/+download/%{name}-%{version}.tar.gz +Source1: cloud-init-tmpfiles.conf + +# Disable tests that require pylxd, which we don't have on Fedora +Patch1: cloud-init-19.4-disable-lxd-tests.patch + +# Do not write NM_CONTROLLED=no in generated interface config files +# https://bugzilla.redhat.com/show_bug.cgi?id=1385172 +Patch2: cloud-init-19.4-nm-controlled.patch + +# Keep old properties in /etc/sysconfig/network +# https://bugzilla.redhat.com/show_bug.cgi?id=1558641 +Patch3: cloud-init-19.4-no-override-default-network.patch + +# Backport for CVE-2020-8631 and CVE-2020-8632 +# https://bugzilla.redhat.com/show_bug.cgi?id=1798729 +# https://bugzilla.redhat.com/show_bug.cgi?id=1798732 +Patch4: cloud-init-19.4-cc_set_password-increase-random-pwlength-from-9-to-2.patch +Patch5: cloud-init-19.4-utils-use-SystemRandom-when-generating-random-passwo.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=1869757 +Patch6: cloud-init-19.4-Scaleway-Fix-DatasourceScaleway-to-avoid-backtrace-1.patch + +BuildArch: noarch + +BuildRequires: pkgconfig(systemd) +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: systemd + +# For tests +BuildRequires: iproute +BuildRequires: passwd +BuildRequires: python3-configobj +# https://bugzilla.redhat.com/show_bug.cgi?id=1695953 +BuildRequires: python3-distro +# https://bugzilla.redhat.com/show_bug.cgi?id=1417029 +BuildRequires: python3-httpretty >= 0.8.14-2 +BuildRequires: python3-jinja2 +BuildRequires: python3-jsonpatch +BuildRequires: python3-jsonschema +BuildRequires: python3-mock +BuildRequires: python3-nose +BuildRequires: python3-oauthlib +BuildRequires: python3-prettytable +BuildRequires: python3-pyserial +BuildRequires: python3-PyYAML +BuildRequires: python3-requests +BuildRequires: python3-six +# dnf is needed to make cc_ntp unit tests work +# https://bugs.launchpad.net/cloud-init/+bug/1721573 +BuildRequires: /usr/bin/dnf + +Requires: e2fsprogs +Requires: iproute +Requires: libselinux-python3 +Requires: net-tools +Requires: policycoreutils-python3 +Requires: procps +Requires: python3-configobj +# https://bugzilla.redhat.com/show_bug.cgi?id=1695953 +Requires: python3-distro +Requires: python3-jinja2 +Requires: python3-jsonpatch +Requires: python3-jsonschema +Requires: python3-oauthlib +Requires: python3-prettytable +Requires: python3-pyserial +Requires: python3-PyYAML +Requires: python3-requests +Requires: python3-six +Requires: shadow-utils +Requires: util-linux +Requires: xfsprogs + +%{?systemd_requires} + + +%description +Cloud-init is a set of init scripts for cloud instances. Cloud instances +need special scripts to run during initialization to retrieve and install +ssh keys and to let the user run various scripts. + + +%prep +%autosetup -p1 + +# Change shebangs +sed -i -e 's|#!/usr/bin/env python|#!/usr/bin/env python3|' \ + -e 's|#!/usr/bin/python|#!/usr/bin/python3|' tools/* cloudinit/ssh_util.py + +# Use unittest from the standard library. unittest2 is old and being +# retired in Fedora. See https://bugzilla.redhat.com/show_bug.cgi?id=1794222 +find cloudinit/tests/ tests/ -type f | xargs sed -i s/unittest2/unittest/ +find cloudinit/tests/ tests/ -type f | xargs sed -i s/assertItemsEqual/assertCountEqual/ + +%build +%py3_build + + +%install +%py3_install -- --init-system=systemd + +python3 tools/render-cloudcfg --variant fedora > $RPM_BUILD_ROOT/%{_sysconfdir}/cloud/cloud.cfg + +mkdir -p $RPM_BUILD_ROOT/var/lib/cloud + +# /run/cloud-init needs a tmpfiles.d entry +mkdir -p $RPM_BUILD_ROOT/run/cloud-init +mkdir -p $RPM_BUILD_ROOT/%{_tmpfilesdir} +cp -p %{SOURCE1} $RPM_BUILD_ROOT/%{_tmpfilesdir}/%{name}.conf + +mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/rsyslog.d +cp -p tools/21-cloudinit.conf $RPM_BUILD_ROOT/%{_sysconfdir}/rsyslog.d/21-cloudinit.conf + + +%check +nosetests-%{python3_version} tests/unittests/ + + +%post +%systemd_post cloud-config.service cloud-config.target cloud-final.service cloud-init.service cloud-init.target cloud-init-local.service + + +%preun +%systemd_preun cloud-config.service cloud-config.target cloud-final.service cloud-init.service cloud-init.target cloud-init-local.service + + +%postun +%systemd_postun cloud-config.service cloud-config.target cloud-final.service cloud-init.service cloud-init.target cloud-init-local.service + + +%files +%license LICENSE LICENSE-Apache2.0 LICENSE-GPLv3 +%doc ChangeLog +%doc doc/* +%config(noreplace) %{_sysconfdir}/cloud/cloud.cfg +%dir %{_sysconfdir}/cloud/cloud.cfg.d +%config(noreplace) %{_sysconfdir}/cloud/cloud.cfg.d/*.cfg +%doc %{_sysconfdir}/cloud/cloud.cfg.d/README +%dir %{_sysconfdir}/cloud/templates +%config(noreplace) %{_sysconfdir}/cloud/templates/* +%dir %{_sysconfdir}/rsyslog.d +%config(noreplace) %{_sysconfdir}/rsyslog.d/21-cloudinit.conf +%{_sysconfdir}/NetworkManager/dispatcher.d/hook-network-manager +%{_sysconfdir}/dhcp/dhclient-exit-hooks.d/hook-dhclient +/lib/udev/rules.d/66-azure-ephemeral.rules +%{_unitdir}/cloud-config.service +%{_unitdir}/cloud-final.service +%{_unitdir}/cloud-init.service +%{_unitdir}/cloud-init-local.service +%{_unitdir}/cloud-config.target +%{_unitdir}/cloud-init.target +/usr/lib/systemd/system-generators/cloud-init-generator +%{_tmpfilesdir}/%{name}.conf +%{python3_sitelib}/* +%{_libexecdir}/%{name} +%{_bindir}/cloud-init* +%{_bindir}/cloud-id +%dir /run/cloud-init +%dir /var/lib/cloud +%{_datadir}/bash-completion/completions/cloud-init + + +%changelog +* Mon Sep 07 2020 Eduardo Otubo - 19.4-7 +- Fix execution fail with backtrace + +* Mon Sep 07 2020 Eduardo Otubo - 19.4-6 +- Adding missing patches to spec file + +* Mon Jul 27 2020 Fedora Release Engineering - 19.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon May 25 2020 Miro Hrončok - 19.4-4 +- Rebuilt for Python 3.9 + +* Tue Apr 14 2020 Eduardo Otubo - 19.4-3 +- Fix BZ#1798729 - CVE-2020-8632 cloud-init: Too short random password length + in cc_set_password in config/cc_set_passwords.py +- Fix BZ#1798732 - CVE-2020-8631 cloud-init: Use of random.choice when + generating random password + +* Sun Feb 23 2020 Dusty Mabe - 19.4-2 +- Fix sed substitutions for unittest2 and assertItemsEqual +- Fix failing unittests by including `BuildRequires: passwd` + - The unittests started failing because of upstream commit + 7c07af2 where cloud-init can now support using `usermod` to + lock an account if `passwd` isn't installed. Since `passwd` + wasn't installed in our mock buildroot it was choosing to + use `usermod` and the unittests were failing. See: + https://github.com/canonical/cloud-init/commit/7c07af2 +- Add missing files to package + - /usr/bin/cloud-id + - /usr/share/bash-completion/completions/cloud-init + +* Fri Feb 14 2020 Eduardo Otubo - 19.4-1 +- Updated to 19.4 +- Rebasing the Fedora specific patches but removing patches that don't apply anymore + +* Tue Jan 28 2020 Fedora Release Engineering - 17.1-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Nov 08 2019 Miro Hrončok - 17.1-14 +- Drop unneeded build dependency on python3-unittest2 + +* Thu Oct 03 2019 Miro Hrončok - 17.1-13 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Sun Aug 18 2019 Miro Hrončok - 17.1-12 +- Rebuilt for Python 3.8 + +* Wed Jul 24 2019 Fedora Release Engineering - 17.1-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Tue Apr 23 2019 Björn Esser - 17.1-10 +- Add patch to replace platform.dist() [RH:1695953] +- Add (Build)Requires: python3-distro + +* Tue Apr 23 2019 Björn Esser - 17.1-9 +- Fix %%systemd_postun macro [RH:1695953] +- Add patch to fix failing test for EPOCHREALTIME bash env [RH:1695953] + +* Thu Jan 31 2019 Fedora Release Engineering - 17.1-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Thu Jul 12 2018 Fedora Release Engineering - 17.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Mon Jun 18 2018 Miro Hrončok - 17.1-6 +- Rebuilt for Python 3.7 + +* Sat Apr 21 2018 Lars Kellogg-Stedman - 17.1-5 +- Enable dhcp on EC2 interfaces with only local ipv4 addresses [RH:1569321] + (cherry pick upstream commit eb292c1) + +* Mon Mar 26 2018 Patrick Uiterwijk - 17.1-4 +- Make sure the patch does not add infinitely many entries + +* Mon Mar 26 2018 Patrick Uiterwijk - 17.1-3 +- Add patch to retain old values of /etc/sysconfig/network + +* Wed Feb 07 2018 Fedora Release Engineering - 17.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Oct 4 2017 Garrett Holmstrom - 17.1-1 +- Updated to 17.1 + +* Fri Sep 15 2017 Dusty Mabe - 0.7.9-9 +- Fix issues with growing xfs filesystems [RH:1490505] +- Add in hook-dhclient to help enable azure [RH:1477333] + +* Wed Jul 26 2017 Fedora Release Engineering - 0.7.9-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Tue Jun 27 2017 Garrett Holmstrom - 0.7.9-7 +- Fixed broken sysconfig file writing on DigitalOcean [RH:1465440] + +* Wed Jun 21 2017 Garrett Holmstrom - 0.7.9-6 +- Fixed NameError in package module [RH:1447708] +- Resolved a conflict between cloud-init and NetworkManager writing resolv.conf [RH:1454491 RH:1461959 LP:1693251] +- Fixed broken fs_setup cmd option [LP:1687712] + +* Fri Apr 14 2017 Garrett Holmstrom - 0.7.9-5 +- Made DigitalOcean DNS server handling consistent with OpenStack [RH:1442463, LP:1675571] +- Improved handling of multiple NICs on DigitalOcean [RH:1442463] +- Assign link-local IPV4 addresses in DigitalOcean based on interface indexes [RH:1442463] + +* Tue Mar 14 2017 Garrett Holmstrom - 0.7.9-4 +- Fixed systemd dependency cycle with cloud-final and os-collect-config [RH:1420946, RH:1428492] +- Fixed systemd dependency cycle with cloud-init and multi-user.target [RH:1428492, RH:1430511] +- Fixed errors in network sysconfig handling [RH:1389530, LP:1665441] +- Made > 3 name servers a warning, not a fatal error, unbreaking IPv6 setups [LP:1670052] +- Fixed IPv6 gateways in network sysconfig [LP:1669504] +- Ordered cloud-init.service after network.service and NetworkManager.service [RH:1400249] + +* Tue Mar 14 2017 Garrett Holmstrom - 0.7.8-6 +- Ordered cloud-init.service after network.service and NetworkManager.service [RH:1400249] +- Stopped caching IAM instance profile credentials on disk [LP:1638312] + +* Fri Feb 10 2017 Fedora Release Engineering - 0.7.9-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Fri Jan 27 2017 Garrett Holmstrom - 0.7.9-2 +- Fixed hostnamectl running before dbus is up [RH:1417025] + +* Fri Jan 27 2017 Garrett Holmstrom - 0.7.8-5 +- Re-applied rsyslog configuration fixes +- Disabled GCE tests broken by python-httpretty-0.8.14-1.20161011git70af1f8 +- Fixed systemd dependency loop for cloud-init.target [RH:1393094] + +* Fri Jan 20 2017 Colin Walters - 0.7.9-1 +- New upstream version [RH:1393094] + +* Tue Dec 13 2016 Charalampos Stratakis - 0.7.8-4 +- Rebuild for Python 3.6 + +* Tue Oct 25 2016 Garrett Holmstrom - 0.7.8-3 +- Enabled the DigitalOcean metadata provider by default [RH:1388568] + +* Fri Oct 14 2016 Garrett Holmstrom - 0.7.8-2 +- Stopped writing NM_CONTROLLED=no to interface config files [RH:1385172] + +* Thu Sep 29 2016 Garrett Holmstrom - 0.7.8-1 +- Updated to 0.7.8 +- Dropped run-parts dependency [RH:1355917] +- Ordered cloud-init-local before NetworkManager +- Backported DigitalOcean network configuration support [RH:1380489] +- Added xfsprogs dependency for Fedora Server's default filesystem + +* Tue Aug 30 2016 Garrett Holmstrom - 0.7.7-1 +- Updated to 0.7.7 + +* Tue Jul 19 2016 Fedora Release Engineering - 0.7.6-10.20160622bzr1245 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Wed Jul 6 2016 Garrett Holmstrom - 0.7.6-20160622bzr1245 +- Updated to bzr snapshot 1245 + +* Wed Feb 03 2016 Fedora Release Engineering - 0.7.6-8.20150813bzr1137 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Nov 10 2015 Fedora Release Engineering - 0.7.6-7.20150813bzr1137 +- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 + +* Thu Aug 13 2015 Garrett Holmstrom - 0.7.6-6.20150813bzr1137 +- Updated to bzr snapshot 1137 + +* Wed Jun 17 2015 Fedora Release Engineering - 0.7.6-5.20140218bzr1060 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat Feb 21 2015 Garrett Holmstrom - 0.7.6-4.20140218bzr1060 +- Updated to bzr snapshot 1060 for python 3 support +- Switched to python 3 [RH:1024357] +- Added %%check +- Dropped dmidecode dependency, switched back to noarch + +* Thu Feb 19 2015 Garrett Holmstrom - 0.7.6-3 +- Stopped depending on git to build +- Stopped implicitly listing doc files twice +- Added recognition of 3 ecdsa-sha2-nistp* ssh key types [RH:1151824] +- Fixed handling of user group lists that contain spaces [RH:1126365 LP:1354694] +- Changed network.target systemd deps to network-online.target [RH:1110731 RH:1112817 RH:1147613] +- Fixed race condition between cloud-init.service and the login prompt +- Stopped enabling services in %%post (now done by kickstart) [RH:850058] +- Switched to dnf instead of yum when available [RH:1194451] + +* Fri Nov 14 2014 Colin Walters - 0.7.6-2 +- New upstream version [RH:974327] +- Drop python-cheetah dependency (same as above bug) + +* Fri Nov 7 2014 Garrett Holmstrom - 0.7.5-8 +- Dropped python-boto dependency [RH:1161257] +- Dropped rsyslog dependency [RH:986511] + +* Sat Aug 16 2014 Fedora Release Engineering - 0.7.5-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Thu Jun 12 2014 Dennis Gilmore - 0.7.5-6 +- fix typo in settings.py preventing metadata being fecthed in ec2 + +* Mon Jun 9 2014 Garrett Holmstrom - 0.7.5-5 +- Stopped calling ``udevadm settle'' with --quiet since systemd 213 removed it + +* Sat Jun 07 2014 Fedora Release Engineering - 0.7.5-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Mon Jun 2 2014 Garrett Holmstrom - 0.7.5-3 +- Make dmidecode dependency arch-dependent [RH:1025071 RH:1067089] + +* Mon Jun 2 2014 Garrett Holmstrom - 0.7.2-9 +- Write /etc/locale.conf instead of /etc/sysconfig/i18n [RH:1008250] +- Add tmpfiles.d configuration for /run/cloud-init [RH:1103761] +- Use the license rpm macro +- BuildRequire python-setuptools, not python-setuptools-devel + +* Fri May 30 2014 Matthew Miller - 0.7.5-2 +- add missing python-jsonpatch dependency [RH:1103281] + +* Tue Apr 29 2014 Sam Kottler - 0.7.5-1 +- Update to 0.7.5 and remove patches which landed in the release + +* Sat Jan 25 2014 Sam Kottler - 0.7.2-8 +- Remove patch to the Puppet service unit nane [RH:1057860] + +* Tue Sep 24 2013 Garrett Holmstrom - 0.7.2-7 +- Dropped xfsprogs dependency [RH:974329] + +* Tue Sep 24 2013 Garrett Holmstrom - 0.7.2-6 +- Added yum-add-repo module + +* Fri Sep 20 2013 Garrett Holmstrom - 0.7.2-5 +- Fixed puppet agent service name [RH:1008250] +- Let systemd handle console output [RH:977952 LP:1228434] +- Fixed restorecon failure when selinux is disabled [RH:967002 LP:1228441] +- Fixed rsyslog log filtering +- Added missing modules [RH:966888] + +* Sat Aug 03 2013 Fedora Release Engineering - 0.7.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Sat Jun 15 2013 Matthew Miller - 0.7.2-3 +- switch ec2-user to "fedora" -- see bugzilla #971439. To use another + name, use #cloud-config option "users:" in userdata in cloud metadata + service +- add that user to systemd-journal group + +* Fri May 17 2013 Steven Hardy - 0.7.2 +- Update to the 0.7.2 release + +* Thu May 02 2013 Steven Hardy - 0.7.2-0.1.bzr809 +- Rebased against upstream rev 809, fixes several F18 related issues +- Added dependency on python-requests + +* Sat Apr 6 2013 Orion Poplawski - 0.7.1-4 +- Don't ship tests + +* Wed Feb 13 2013 Fedora Release Engineering - 0.7.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Dec 13 2012 Garrett Holmstrom - 0.7.1-2 +- Added default_user to cloud.cfg (this is required for ssh keys to work) + +* Wed Nov 21 2012 Garrett Holmstrom - 0.7.1-1 +- Rebased against version 0.7.1 +- Fixed broken sudoers file generation +- Fixed "resize_root: noblock" [LP:1080985] + +* Tue Oct 9 2012 Garrett Holmstrom - 0.7.0-1 +- Rebased against version 0.7.0 +- Fixed / filesystem resizing + +* Sat Sep 22 2012 Garrett Holmstrom - 0.7.0-0.3.bzr659 +- Added dmidecode dependency for DataSourceAltCloud + +* Sat Sep 22 2012 Garrett Holmstrom - 0.7.0-0.2.bzr659 +- Rebased against upstream rev 659 +- Fixed hostname persistence +- Fixed ssh key printing +- Fixed sudoers file permissions + +* Mon Sep 17 2012 Garrett Holmstrom - 0.7.0-0.1.bzr650 +- Rebased against upstream rev 650 +- Added support for useradd --selinux-user + +* Thu Sep 13 2012 Garrett Holmstrom - 0.6.3-0.5.bzr532 +- Use a FQDN (instance-data.) for instance data URL fallback [RH:850916 LP:1040200] +- Shut off systemd timeouts [RH:836269] +- Send output to the console [RH:854654] + +* Wed Jul 18 2012 Fedora Release Engineering - 0.6.3-0.4.bzr532 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Wed Jun 27 2012 Pádraig Brady - 0.6.3-0.3.bzr532 +- Add support for installing yum packages + +* Sat Mar 31 2012 Andy Grimm - 0.6.3-0.2.bzr532 +- Fixed incorrect interpretation of relative path for + AuthorizedKeysFile (BZ #735521) + +* Mon Mar 5 2012 Garrett Holmstrom - 0.6.3-0.1.bzr532 +- Rebased against upstream rev 532 +- Fixed runparts() incompatibility with Fedora + +* Thu Jan 12 2012 Fedora Release Engineering - 0.6.2-0.8.bzr457 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Wed Oct 5 2011 Garrett Holmstrom - 0.6.2-0.7.bzr457 +- Disabled SSH key-deleting on startup + +* Wed Sep 28 2011 Garrett Holmstrom - 0.6.2-0.6.bzr457 +- Consolidated selinux file context patches +- Fixed cloud-init.service dependencies +- Updated sshkeytypes patch +- Dealt with differences from Ubuntu's sshd + +* Sat Sep 24 2011 Garrett Holmstrom - 0.6.2-0.5.bzr457 +- Rebased against upstream rev 457 +- Added missing dependencies + +* Fri Sep 23 2011 Garrett Holmstrom - 0.6.2-0.4.bzr450 +- Added more macros to the spec file + +* Fri Sep 23 2011 Garrett Holmstrom - 0.6.2-0.3.bzr450 +- Fixed logfile permission checking +- Fixed SSH key generation +- Fixed a bad method call in FQDN-guessing [LP:857891] +- Updated localefile patch +- Disabled the grub_dpkg module +- Fixed failures due to empty script dirs [LP:857926] + +* Fri Sep 23 2011 Garrett Holmstrom - 0.6.2-0.2.bzr450 +- Updated tzsysconfig patch + +* Wed Sep 21 2011 Garrett Holmstrom - 0.6.2-0.1.bzr450 +- Initial packaging diff --git a/sources b/sources new file mode 100644 index 0000000..9d978cc --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (cloud-init-19.4.tar.gz) = e69ea47eab41d69d64fa44102fbde59319da5f71a68f28a0f6ac65cd6866542b4fe58a71b84c903cfa9b1d2f26eb648cdf4de633b8df61e4f89c9fa4c2a2b1d3