From afb6663c50f00a424c71736ef5d8fcbee8f6fc7cee818105360c49c08dae200d Mon Sep 17 00:00:00 2001 From: Robert Schweikert Date: Mon, 14 Apr 2014 19:15:14 +0000 Subject: [PATCH] - update to version 0.7.5 - open 0.7.5 - Add a debug log message around import failures - add a 'debug' module for easily printing out some information about datasource and cloud-init [Shraddha Pandhe] - support running apt with 'eatmydata' via configuration token apt_get_wrapper (LP: #1236531). - convert paths provided in config-drive 'files' to string before writing (LP: #1260072). - Azure: minor changes in logging output. ensure filenames are strings (not unicode). - config/cloud.cfg.d/05_logging.cfg: provide a default 'output' setting, to redirect cloud-init stderr and stdout /var/log/cloud-init-output.log. - drop support for resizing partitions with parted entirely (LP: #1212492). This was broken as it was anyway. - add support for vendordata in SmartOS and NoCloud datasources. - drop dependency on boto for crawling ec2 metadata service. - add 'Requires' on sudo (for OpenNebula datasource) in rpm specs, and 'Recommends' in the debian/control.in [Vlastimil Holer] - if mount_info reports /dev/root is a device path for /, then convert that to a device via help of kernel cmdline. - configdrive: consider partitions as possible datasources if they have theh correct filesystem label. [Paul Querna] - initial freebsd support [Harm Weites] - fix in is_ipv4 to accept IP addresses with a '0' in them. - Azure: fix issue when stale data in /var/lib/waagent (LP: #1269626) - skip config_modules that declare themselves only verified on a set of distros. Add them to 'unverified_modules' list to run anyway. - Add CloudSigma datasource [Kiril Vladimiroff] - Add initial support for Gentoo and Arch distributions [Nate House] OBS-URL: https://build.opensuse.org/package/show/Cloud:Tools/cloud-init?expand=0&rev=12 --- addopenSUSEBase.diff | 24 ----------- addopenSUSEBase.patch | 26 ++++++++++++ azure_1269626.diff | 87 ---------------------------------------- cloud-init-0.7.4.tar.bz2 | 3 -- cloud-init-0.7.5.tar.gz | 3 ++ cloud-init.changes | 49 ++++++++++++++++++++++ cloud-init.spec | 8 ++-- 7 files changed, 81 insertions(+), 119 deletions(-) delete mode 100644 addopenSUSEBase.diff create mode 100644 addopenSUSEBase.patch delete mode 100644 azure_1269626.diff delete mode 100644 cloud-init-0.7.4.tar.bz2 create mode 100644 cloud-init-0.7.5.tar.gz diff --git a/addopenSUSEBase.diff b/addopenSUSEBase.diff deleted file mode 100644 index cf28f27..0000000 --- a/addopenSUSEBase.diff +++ /dev/null @@ -1,24 +0,0 @@ -diff -urN cloud-init-0.7.4.orig/cloudinit/config/cc_resolv_conf.py cloud-init-0.7.4/cloudinit/config/cc_resolv_conf.py ---- cloud-init-0.7.4.orig/cloudinit/config/cc_resolv_conf.py 2014-01-04 10:11:25.900655759 -0500 -+++ cloud-init-0.7.4/cloudinit/config/cc_resolv_conf.py 2014-01-04 10:51:27.900181158 -0500 -@@ -55,7 +55,7 @@ - - frequency = PER_INSTANCE - --distros = ['fedora', 'rhel', 'sles'] -+distros = ['fedora', 'opensuse', 'rhel', 'sles'] - - - def generate_resolv_conf(cloud, log, params): -diff -urN cloud-init-0.7.4.orig/cloudinit/distros/__init__.py cloud-init-0.7.4/cloudinit/distros/__init__.py ---- cloud-init-0.7.4.orig/cloudinit/distros/__init__.py 2014-01-04 10:11:25.919655399 -0500 -+++ cloud-init-0.7.4/cloudinit/distros/__init__.py 2014-01-04 10:53:09.936206936 -0500 -@@ -39,7 +39,7 @@ - OSFAMILIES = { - 'debian': ['debian', 'ubuntu'], - 'redhat': ['fedora', 'rhel'], -- 'suse': ['sles'] -+ 'suse': ['opensuse', 'sles'] - } - - LOG = logging.getLogger(__name__) diff --git a/addopenSUSEBase.patch b/addopenSUSEBase.patch new file mode 100644 index 0000000..4059649 --- /dev/null +++ b/addopenSUSEBase.patch @@ -0,0 +1,26 @@ +Index: cloud-init-0.7.5/cloudinit/config/cc_resolv_conf.py +=================================================================== +--- cloud-init-0.7.5.orig/cloudinit/config/cc_resolv_conf.py ++++ cloud-init-0.7.5/cloudinit/config/cc_resolv_conf.py +@@ -55,7 +55,7 @@ from cloudinit import util + + frequency = PER_INSTANCE + +-distros = ['fedora', 'rhel', 'sles'] ++distros = ['fedora', 'opensuse', 'rhel', 'sles'] + + + def generate_resolv_conf(cloud, log, params): +Index: cloud-init-0.7.5/cloudinit/distros/__init__.py +=================================================================== +--- cloud-init-0.7.5.orig/cloudinit/distros/__init__.py ++++ cloud-init-0.7.5/cloudinit/distros/__init__.py +@@ -41,7 +41,7 @@ OSFAMILIES = { + 'redhat': ['fedora', 'rhel'], + 'gentoo': ['gentoo'], + 'freebsd': ['freebsd'], +- 'suse': ['sles'], ++ 'suse': ['opensuse', 'sles'], + 'arch': ['arch'], + } + diff --git a/azure_1269626.diff b/azure_1269626.diff deleted file mode 100644 index 82c1ece..0000000 --- a/azure_1269626.diff +++ /dev/null @@ -1,87 +0,0 @@ -=== modified file 'cloudinit/sources/DataSourceAzure.py' ---- cloudinit/sources/DataSourceAzure.py 2014-01-09 18:12:40 +0000 -+++ cloudinit/sources/DataSourceAzure.py 2014-02-07 11:51:56 +0000 -@@ -84,9 +84,14 @@ - - candidates = [self.seed_dir] - candidates.extend(list_possible_azure_ds_devs()) -+ previous_ovf_cfg = None - if ddir: - candidates.append(ddir) - -+ previous_ovf_cfg = None -+ if os.path.exists("%s/ovf-env.xml" % ddir): -+ previous_ovf_cfg = load_azure_ds_dir(ddir) -+ - found = None - - for cdev in candidates: -@@ -104,6 +109,11 @@ - LOG.warn("%s was not mountable" % cdev) - continue - -+ if ret != previous_ovf_cfg: -+ LOG.info(("instance configuration has changed, " -+ "removing old agent directory")) -+ util.del_dir(ddir) -+ - (md, self.userdata_raw, cfg, files) = ret - self.seed = cdev - self.metadata = util.mergemanydict([md, DEFAULT_METADATA]) - -=== modified file 'tests/unittests/test_datasource/test_azure.py' ---- tests/unittests/test_datasource/test_azure.py 2013-10-02 21:05:15 +0000 -+++ tests/unittests/test_datasource/test_azure.py 2014-02-07 11:51:56 +0000 -@@ -119,6 +119,10 @@ - {'ovf-env.xml': data['ovfcontent']}) - - mod = DataSourceAzure -+ ddir = "%s/var/lib/waagent" % self.tmp -+ mod.BUILTIN_DS_CONFIG['data_dir'] = ddir -+ if not os.path.isdir(ddir): -+ os.makedirs(ddir) - - self.apply_patches([(mod, 'list_possible_azure_ds_devs', dsdevs)]) - -@@ -338,6 +342,40 @@ - - self.assertEqual(userdata, dsrc.userdata_raw) - -+ def test_existing_ovf_same(self): -+ mydata = "FOOBAR" -+ odata = {'UserData': base64.b64encode(mydata)} -+ data = {'ovfcontent': construct_valid_ovf_env(data=odata)} -+ -+ with open("%s/ovf-env.xml" % self.tmp, 'w') as fp: -+ fp.write(construct_valid_ovf_env(data=odata)) -+ with open("%s/sem" % self.tmp, 'w') as fp: -+ fp.write("test") -+ -+ dsrc = self._get_ds(data) -+ ret = dsrc.get_data() -+ self.assertTrue(ret) -+ self.assertEqual(dsrc.userdata_raw, mydata) -+ self.assertTrue(os.path.exists("%s/sem" % self.tmp)) -+ -+ def test_existing_ovf_diff(self): -+ mydata = "FOOBAR" -+ odata = {'UserData': base64.b64encode(mydata)} -+ data = {'ovfcontent': construct_valid_ovf_env(data=odata)} -+ -+ data_dir = "%s/var/lib/waagent" % self.tmp -+ os.makedirs(data_dir) -+ with open("%s/ovf-env.xml" % data_dir, 'w') as fp: -+ fp.write(construct_valid_ovf_env()) -+ with open("%s/sem" % data_dir, 'w') as fp: -+ fp.write("test") -+ -+ dsrc = self._get_ds(data) -+ ret = dsrc.get_data() -+ self.assertTrue(ret) -+ self.assertEqual(dsrc.userdata_raw, mydata) -+ self.assertFalse(os.path.exists("%s/sem" % data_dir)) -+ - - class TestReadAzureOvf(MockerTestCase): - def test_invalid_xml_raises_non_azure_ds(self): - diff --git a/cloud-init-0.7.4.tar.bz2 b/cloud-init-0.7.4.tar.bz2 deleted file mode 100644 index 201bb16..0000000 --- a/cloud-init-0.7.4.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3029756b58963e0acd7d878750ee3a1971a7037cad8f31532b62ac1a1315872a -size 416437 diff --git a/cloud-init-0.7.5.tar.gz b/cloud-init-0.7.5.tar.gz new file mode 100644 index 0000000..9685ac9 --- /dev/null +++ b/cloud-init-0.7.5.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a92bb83809c139a7db378916414c18b0819e306852d6c60dd89388868857ed33 +size 503717 diff --git a/cloud-init.changes b/cloud-init.changes index c6da03f..11c21d7 100644 --- a/cloud-init.changes +++ b/cloud-init.changes @@ -1,3 +1,52 @@ +------------------------------------------------------------------- +Mon Apr 14 18:58:18 UTC 2014 - rschweikert@suse.com + +- update to version 0.7.5 + - open 0.7.5 + - Add a debug log message around import failures + - add a 'debug' module for easily printing out some information about + datasource and cloud-init [Shraddha Pandhe] + - support running apt with 'eatmydata' via configuration token + apt_get_wrapper (LP: #1236531). + - convert paths provided in config-drive 'files' to string before writing + (LP: #1260072). + - Azure: minor changes in logging output. ensure filenames are strings (not + unicode). + - config/cloud.cfg.d/05_logging.cfg: provide a default 'output' setting, to + redirect cloud-init stderr and stdout /var/log/cloud-init-output.log. + - drop support for resizing partitions with parted entirely (LP: #1212492). + This was broken as it was anyway. + - add support for vendordata in SmartOS and NoCloud datasources. + - drop dependency on boto for crawling ec2 metadata service. + - add 'Requires' on sudo (for OpenNebula datasource) in rpm specs, and + 'Recommends' in the debian/control.in [Vlastimil Holer] + - if mount_info reports /dev/root is a device path for /, then convert + that to a device via help of kernel cmdline. + - configdrive: consider partitions as possible datasources if they have + theh correct filesystem label. [Paul Querna] + - initial freebsd support [Harm Weites] + - fix in is_ipv4 to accept IP addresses with a '0' in them. + - Azure: fix issue when stale data in /var/lib/waagent (LP: #1269626) + - skip config_modules that declare themselves only verified on a set of + distros. Add them to 'unverified_modules' list to run anyway. + - Add CloudSigma datasource [Kiril Vladimiroff] + - Add initial support for Gentoo and Arch distributions [Nate House] + - Add GCE datasource [Vaidas Jablonskis] + - Add native Openstack datasource which reads openstack metadata + rather than relying on EC2 data in openstack metadata service. + - SmartOS, AltCloud: disable running on arm systems due to bug + (LP: #1243287, #1285686) [Oleg Strikov] + - Allow running a command to seed random, default is 'pollinate -q' + (LP: #1286316) [Dustin Kirkland] + - Write status to /run/cloud-init/status.json for consumption by + other programs (LP: #1284439) + - Azure: if a reboot causes ephemeral storage to be re-provisioned + Then we need to re-format it. (LP: #1292648) + - OpenNebula: support base64 encoded user-data + [Enol Fernandez, Peter Kotcauer] +- remove azure_1269626.diff, fix integrated in new version +- rename addopenSUSEBase.diff to addopenSUSEBase.patch, forward port + ------------------------------------------------------------------- Sat Mar 29 21:40:00 UTC 2014 - rschweikert@suse.com diff --git a/cloud-init.spec b/cloud-init.spec index 419da4d..3e25d48 100644 --- a/cloud-init.spec +++ b/cloud-init.spec @@ -16,19 +16,18 @@ # Name: cloud-init -Version: 0.7.4 +Version: 0.7.5 Release: 0 License: GPL-3.0 Summary: Cloud node initialization tool Url: http://launchpad.net/cloud-init/ Group: System/Management -Source0: %{name}-%{version}.tar.bz2 +Source0: %{name}-%{version}.tar.gz Source1: cloud.cfg.suse Patch0: suseSysVInit.diff -Patch1: addopenSUSEBase.diff +Patch1: addopenSUSEBase.patch Patch2: openSUSEHandler.diff Patch3: setupSUSEsysVInit.diff -Patch4: azure_1269626.diff Patch5: openSUSEhostsTemplate.diff BuildRequires: fdupes BuildRequires: filesystem @@ -98,7 +97,6 @@ Unit tests for the cloud-init tools %patch1 -p1 %patch2 -p1 %patch3 -p1 -%patch4 %patch5 %if 0%{?suse_version} <= 1130