[openstack-nova/el6-havana] Update to stable/havana 2013.2.1 release

Xavier Queralt Mateu xqueralt at fedoraproject.org
Tue Dec 17 09:37:34 UTC 2013


commit e9a0d53f3920b710860866f001dd031fad331d8d
Author: Xavier Queralt <xqueralt at redhat.com>
Date:   Tue Dec 17 10:28:04 2013 +0100

    Update to stable/havana 2013.2.1 release

 .gitignore                                         |    1 +
 ...e-don-t-access-the-net-when-building-docs.patch |    2 +-
 0002-remove-runtime-dep-on-python-pbr.patch        |    2 +-
 ...oslo.sphinx-and-remove-local-copy-of-doc-.patch | 1336 --------------------
 ...-parallel-install-versions-of-epel-packag.patch |   41 +-
 ...ass-volume_api-to-get_encryption_metadata.patch |  113 --
 ...move-unnecessary-steps-for-cold-snapshots.patch |  347 +++++
 0005-remove-the-s-option-on-qemu-img-convert.patch |   45 -
 0006-ensure-we-don-t-boot-oversized-images.patch   |  451 -------
 openstack-nova.spec                                |   39 +-
 sources                                            |    2 +-
 11 files changed, 380 insertions(+), 1999 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 441ce36..8397f9e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -18,3 +18,4 @@
 /nova-2013.2.rc1.tar.gz
 /nova-2013.2.rc2.tar.gz
 /nova-2013.2.tar.gz
+/nova-2013.2.1.tar.gz
diff --git a/0001-Ensure-we-don-t-access-the-net-when-building-docs.patch b/0001-Ensure-we-don-t-access-the-net-when-building-docs.patch
index 6d0026d..3499f88 100644
--- a/0001-Ensure-we-don-t-access-the-net-when-building-docs.patch
+++ b/0001-Ensure-we-don-t-access-the-net-when-building-docs.patch
@@ -1,4 +1,4 @@
-From 7e9809c1d7ffbf3610b64dfeccb6484f79476884 Mon Sep 17 00:00:00 2001
+From 6a90694b54aa7f2327fec8956e738e652242434d Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?P=C3=A1draig=20Brady?= <pbrady at redhat.com>
 Date: Fri, 6 Jan 2012 12:16:34 +0000
 Subject: [PATCH] Ensure we don't access the net when building docs
diff --git a/0002-remove-runtime-dep-on-python-pbr.patch b/0002-remove-runtime-dep-on-python-pbr.patch
index 4bf5fca..4132054 100644
--- a/0002-remove-runtime-dep-on-python-pbr.patch
+++ b/0002-remove-runtime-dep-on-python-pbr.patch
@@ -1,4 +1,4 @@
-From 6752d363a16a3eee4a8f90938f031bf6d599dce2 Mon Sep 17 00:00:00 2001
+From a890fb400a5098ce380bf387a782e83cbe857de1 Mon Sep 17 00:00:00 2001
 From: Nikola Dipanov <ndipanov at redhat.com>
 Date: Fri, 14 Jun 2013 11:29:50 +0200
 Subject: [PATCH] remove runtime dep on python-pbr
diff --git a/openstack-nova-newdeps.patch b/0003-Use-updated-parallel-install-versions-of-epel-packag.patch
similarity index 52%
rename from openstack-nova-newdeps.patch
rename to 0003-Use-updated-parallel-install-versions-of-epel-packag.patch
index e672beb..d5b3f34 100644
--- a/openstack-nova-newdeps.patch
+++ b/0003-Use-updated-parallel-install-versions-of-epel-packag.patch
@@ -1,16 +1,17 @@
-From 17ce490483d8da9cb2ff859c07ff88f809e335d3 Mon Sep 17 00:00:00 2001
-From: Nikola Dipanov <ndipanov at redhat.com>
-Date: Mon, 10 Jun 2013 10:24:55 +0200
-Subject: [PATCH] openstack-nova-new-deps
+From 7ac546b1ce85357afecaccbdbdaab7eaeac46787 Mon Sep 17 00:00:00 2001
+From: Xavier Queralt <xqueralt at redhat.com>
+Date: Mon, 16 Dec 2013 12:33:13 +0100
+Subject: [PATCH] Use updated parallel install versions of epel package
 
-Change-Id: I06793fee68ef2847899aa712d3f10aa2fd3887e9
+Use SQLAlchemy >= 0.7.8 WebOb >= 1.2 Routes >= 1.12.3 PasteDeploy >= 1.5.0
+and depend on the parallel installable versions of these packages to satisfy
+those requirements.
 ---
- nova/__init__.py                |   30 ++++++++++++++++++++++++++++++
- nova/db/sqlalchemy/migration.py |    8 +++++++-
- 2 files changed, 37 insertions(+), 1 deletion(-)
+ nova/__init__.py | 31 +++++++++++++++++++++++++++++++
+ 1 file changed, 31 insertions(+)
 
 diff --git a/nova/__init__.py b/nova/__init__.py
-index e21bdd7..ee3e322 100644
+index e21bdd7..992d6de 100644
 --- a/nova/__init__.py
 +++ b/nova/__init__.py
 @@ -24,3 +24,34 @@
@@ -48,25 +49,3 @@ index e21bdd7..ee3e322 100644
 +# TODO: See can we get pkg_resources to do the right thing directly
 +import paste
 +paste.__path__.insert(0, paste.__path__.pop(-1))
-diff --git a/nova/db/sqlalchemy/migration.py b/nova/db/sqlalchemy/migration.py
-index 14758ab..a9727e3 100644
---- a/nova/db/sqlalchemy/migration.py
-+++ b/nova/db/sqlalchemy/migration.py
-@@ -52,7 +52,13 @@ if (not hasattr(migrate, '__version__') or
- 
- 
- # NOTE(jkoelker) Delay importing migrate until we are patched
--from migrate import exceptions as versioning_exceptions
-+try:
-+    # Try the more specific path first (migrate <= 0.6)
-+    from migrate.versioning import exceptions as versioning_exceptions
-+except ImportError:
-+    # Use the newer path (migrate >= 0.7)
-+    from migrate import exceptions as versioning_exceptions
-+
- from migrate.versioning import api as versioning_api
- from migrate.versioning.repository import Repository
- 
--- 
-1.7.9.5
-
diff --git a/0004-Remove-unnecessary-steps-for-cold-snapshots.patch b/0004-Remove-unnecessary-steps-for-cold-snapshots.patch
new file mode 100644
index 0000000..20c9255
--- /dev/null
+++ b/0004-Remove-unnecessary-steps-for-cold-snapshots.patch
@@ -0,0 +1,347 @@
+From 1c0ecb318049e451eb8e1f6a012dfd144e51d53a Mon Sep 17 00:00:00 2001
+From: Vladan Popovic <vpopovic at redhat.com>
+Date: Thu, 17 Oct 2013 07:41:20 -0400
+Subject: [PATCH] Remove unnecessary steps for cold snapshots
+
+Up until now when we created cold snapshots we were stopping the
+instance, create an internal snapshot, extract the snapshot to a file
+and then delete the internal snapshot before bringing up the instance.
+
+If the instance is shut down, there's no concurrent writer, so the image
+can be directly extracted without taking an internal snapshot first,
+because the snapshot and the current state are the same.
+
+In this patch the creation and deletion of the internal snapshot are
+removed to eliminate the extra steps and optimize the creation of
+snapshots a bit.
+
+Closes-Bug: #1242819
+Closes-Bug: #1247185
+
+Change-Id: I429fa2e1e26aea321eecbf14edd11263fff525ae
+(cherry picked from commit 8c985874c7885f31871204d3f83ce547fefc5fb6)
+
+Conflicts:
+	nova/virt/libvirt/imagebackend.py
+---
+ nova/tests/virt/libvirt/fake_imagebackend.py  |  4 +-
+ nova/tests/virt/libvirt/fake_libvirt_utils.py | 10 +---
+ nova/tests/virt/libvirt/test_libvirt.py       |  4 +-
+ nova/virt/libvirt/driver.py                   |  6 +--
+ nova/virt/libvirt/imagebackend.py             | 66 ++++-----------------------
+ nova/virt/libvirt/utils.py                    | 33 ++------------
+ 6 files changed, 18 insertions(+), 105 deletions(-)
+
+diff --git a/nova/tests/virt/libvirt/fake_imagebackend.py b/nova/tests/virt/libvirt/fake_imagebackend.py
+index 23672dc..96600d6 100644
+--- a/nova/tests/virt/libvirt/fake_imagebackend.py
++++ b/nova/tests/virt/libvirt/fake_imagebackend.py
+@@ -54,7 +54,7 @@ class Backend(object):
+ 
+         return FakeImage(instance, name)
+ 
+-    def snapshot(self, path, name, image_type=''):
++    def snapshot(self, path, image_type=''):
+         #NOTE(bfilippov): this is done in favor for
+         # snapshot tests in test_libvirt.LibvirtConnTestCase
+-        return imagebackend.Backend(True).snapshot(path, name, image_type)
++        return imagebackend.Backend(True).snapshot(path, image_type)
+diff --git a/nova/tests/virt/libvirt/fake_libvirt_utils.py b/nova/tests/virt/libvirt/fake_libvirt_utils.py
+index 4799837..1872922 100644
+--- a/nova/tests/virt/libvirt/fake_libvirt_utils.py
++++ b/nova/tests/virt/libvirt/fake_libvirt_utils.py
+@@ -138,15 +138,7 @@ def chown(path, owner):
+     pass
+ 
+ 
+-def create_snapshot(disk_path, snapshot_name):
+-    pass
+-
+-
+-def delete_snapshot(disk_path, snapshot_name):
+-    pass
+-
+-
+-def extract_snapshot(disk_path, source_fmt, snapshot_name, out_path, dest_fmt):
++def extract_snapshot(disk_path, source_fmt, out_path, dest_fmt):
+     files[out_path] = ''
+ 
+ 
+diff --git a/nova/tests/virt/libvirt/test_libvirt.py b/nova/tests/virt/libvirt/test_libvirt.py
+index 6410be3..358662b 100644
+--- a/nova/tests/virt/libvirt/test_libvirt.py
++++ b/nova/tests/virt/libvirt/test_libvirt.py
+@@ -6262,12 +6262,12 @@ disk size: 4.4M''', ''))
+     def _do_test_extract_snapshot(self, dest_format='raw', out_format='raw'):
+         self.mox.StubOutWithMock(utils, 'execute')
+         utils.execute('qemu-img', 'convert', '-f', 'qcow2', '-O', out_format,
+-                      '-s', 'snap1', '/path/to/disk/image', '/extracted/snap')
++                      '/path/to/disk/image', '/extracted/snap')
+ 
+         # Start test
+         self.mox.ReplayAll()
+         libvirt_utils.extract_snapshot('/path/to/disk/image', 'qcow2',
+-                                       'snap1', '/extracted/snap', dest_format)
++                                       '/extracted/snap', dest_format)
+ 
+     def test_extract_snapshot_raw(self):
+         self._do_test_extract_snapshot()
+diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
+index 5c05307..077c79b 100644
+--- a/nova/virt/libvirt/driver.py
++++ b/nova/virt/libvirt/driver.py
+@@ -1372,7 +1372,6 @@ class LibvirtDriver(driver.ComputeDriver):
+                 virt_dom.managedSave(0)
+ 
+         snapshot_backend = self.image_backend.snapshot(disk_path,
+-                snapshot_name,
+                 image_type=source_format)
+ 
+         if live_snapshot:
+@@ -1381,7 +1380,6 @@ class LibvirtDriver(driver.ComputeDriver):
+         else:
+             LOG.info(_("Beginning cold snapshot process"),
+                      instance=instance)
+-            snapshot_backend.snapshot_create()
+ 
+         update_task_state(task_state=task_states.IMAGE_PENDING_UPLOAD)
+         snapshot_directory = CONF.libvirt_snapshots_directory
+@@ -1398,8 +1396,6 @@ class LibvirtDriver(driver.ComputeDriver):
+                 else:
+                     snapshot_backend.snapshot_extract(out_path, image_format)
+             finally:
+-                if not live_snapshot:
+-                    snapshot_backend.snapshot_delete()
+                 new_dom = None
+                 # NOTE(dkang): because previous managedSave is not called
+                 #              for LXC, _create_domain must not be called.
+@@ -1492,7 +1488,7 @@ class LibvirtDriver(driver.ComputeDriver):
+ 
+         # Convert the delta (CoW) image with a backing file to a flat
+         # image with no backing file.
+-        libvirt_utils.extract_snapshot(disk_delta, 'qcow2', None,
++        libvirt_utils.extract_snapshot(disk_delta, 'qcow2',
+                                        out_path, image_format)
+ 
+     def _volume_snapshot_update_status(self, context, snapshot_id, status):
+diff --git a/nova/virt/libvirt/imagebackend.py b/nova/virt/libvirt/imagebackend.py
+index e900789..57c1910 100644
+--- a/nova/virt/libvirt/imagebackend.py
++++ b/nova/virt/libvirt/imagebackend.py
+@@ -223,25 +223,17 @@ class Image(object):
+                               'size': size})
+             raise exception.InstanceTypeDiskTooSmall()
+ 
+-    def snapshot_create(self):
+-        raise NotImplementedError()
+-
+     def snapshot_extract(self, target, out_format):
+         raise NotImplementedError()
+ 
+-    def snapshot_delete(self):
+-        raise NotImplementedError()
+-
+ 
+ class Raw(Image):
+-    def __init__(self, instance=None, disk_name=None, path=None,
+-                 snapshot_name=None):
++    def __init__(self, instance=None, disk_name=None, path=None):
+         super(Raw, self).__init__("file", "raw", is_block_dev=False)
+ 
+         self.path = (path or
+                      os.path.join(libvirt_utils.get_instance_path(instance),
+                                   disk_name))
+-        self.snapshot_name = snapshot_name
+         self.preallocate = CONF.preallocate_images != 'none'
+         self.correct_format()
+ 
+@@ -271,25 +263,17 @@ class Raw(Image):
+                     copy_raw_image(base, self.path, size)
+         self.correct_format()
+ 
+-    def snapshot_create(self):
+-        pass
+-
+     def snapshot_extract(self, target, out_format):
+         images.convert_image(self.path, target, out_format)
+ 
+-    def snapshot_delete(self):
+-        pass
+-
+ 
+ class Qcow2(Image):
+-    def __init__(self, instance=None, disk_name=None, path=None,
+-                 snapshot_name=None):
++    def __init__(self, instance=None, disk_name=None, path=None):
+         super(Qcow2, self).__init__("file", "qcow2", is_block_dev=False)
+ 
+         self.path = (path or
+                      os.path.join(libvirt_utils.get_instance_path(instance),
+                                   disk_name))
+-        self.snapshot_name = snapshot_name
+         self.preallocate = CONF.preallocate_images != 'none'
+ 
+     def create_image(self, prepare_template, base, size, *args, **kwargs):
+@@ -336,25 +320,18 @@ class Qcow2(Image):
+             with fileutils.remove_path_on_error(self.path):
+                 copy_qcow2_image(base, self.path, size)
+ 
+-    def snapshot_create(self):
+-        libvirt_utils.create_snapshot(self.path, self.snapshot_name)
+-
+     def snapshot_extract(self, target, out_format):
+         libvirt_utils.extract_snapshot(self.path, 'qcow2',
+-                                       self.snapshot_name, target,
++                                       target,
+                                        out_format)
+ 
+-    def snapshot_delete(self):
+-        libvirt_utils.delete_snapshot(self.path, self.snapshot_name)
+-
+ 
+ class Lvm(Image):
+     @staticmethod
+     def escape(filename):
+         return filename.replace('_', '__')
+ 
+-    def __init__(self, instance=None, disk_name=None, path=None,
+-                 snapshot_name=None):
++    def __init__(self, instance=None, disk_name=None, path=None):
+         super(Lvm, self).__init__("block", "raw", is_block_dev=True)
+ 
+         if path:
+@@ -377,11 +354,6 @@ class Lvm(Image):
+         self.sparse = CONF.libvirt_sparse_logical_volumes
+         self.preallocate = not self.sparse
+ 
+-        if snapshot_name:
+-            self.snapshot_name = snapshot_name
+-            self.snapshot_path = os.path.join('/dev', self.vg,
+-                                              self.snapshot_name)
+-
+     def _can_fallocate(self):
+         return False
+ 
+@@ -419,25 +391,13 @@ class Lvm(Image):
+             with excutils.save_and_reraise_exception():
+                 libvirt_utils.remove_logical_volumes(path)
+ 
+-    def snapshot_create(self):
+-        size = CONF.libvirt_lvm_snapshot_size
+-        cmd = ('lvcreate', '-L', size, '-s', '--name', self.snapshot_name,
+-               self.path)
+-        libvirt_utils.execute(*cmd, run_as_root=True, attempts=3)
+-
+     def snapshot_extract(self, target, out_format):
+-        images.convert_image(self.snapshot_path, target, out_format,
++        images.convert_image(self.path, target, out_format,
+                              run_as_root=True)
+ 
+-    def snapshot_delete(self):
+-        # NOTE (rmk): Snapshot volumes are automatically zeroed by LVM
+-        cmd = ('lvremove', '-f', self.snapshot_path)
+-        libvirt_utils.execute(*cmd, run_as_root=True, attempts=3)
+-
+ 
+ class Rbd(Image):
+-    def __init__(self, instance=None, disk_name=None, path=None,
+-                 snapshot_name=None, **kwargs):
++    def __init__(self, instance=None, disk_name=None, path=None, **kwargs):
+         super(Rbd, self).__init__("block", "rbd", is_block_dev=True)
+         if path:
+             try:
+@@ -445,8 +405,7 @@ class Rbd(Image):
+             except IndexError:
+                 raise exception.InvalidDevicePath(path=path)
+         else:
+-            self.rbd_name = '%s_%s' % (instance['name'], disk_name)
+-        self.snapshot_name = snapshot_name
++            self.rbd_name = '%s_%s' % (instance['uuid'], disk_name)
+         if not CONF.libvirt_images_rbd_pool:
+             raise RuntimeError(_('You should specify'
+                                  ' libvirt_images_rbd_pool'
+@@ -549,16 +508,10 @@ class Rbd(Image):
+         args += self._ceph_args()
+         libvirt_utils.import_rbd_image(*args)
+ 
+-    def snapshot_create(self):
+-        pass
+-
+     def snapshot_extract(self, target, out_format):
+         snap = 'rbd:%s/%s' % (self.pool, self.rbd_name)
+         images.convert_image(snap, target, out_format)
+ 
+-    def snapshot_delete(self):
+-        pass
+-
+ 
+ class Backend(object):
+     def __init__(self, use_cow):
+@@ -589,12 +542,11 @@ class Backend(object):
+         backend = self.backend(image_type)
+         return backend(instance=instance, disk_name=disk_name)
+ 
+-    def snapshot(self, disk_path, snapshot_name, image_type=None):
++    def snapshot(self, disk_path, image_type=None):
+         """Returns snapshot for given image
+ 
+         :path: path to image
+-        :snapshot_name: snapshot name
+         :image_type: type of image
+         """
+         backend = self.backend(image_type)
+-        return backend(path=disk_path, snapshot_name=snapshot_name)
++        return backend(path=disk_path)
+diff --git a/nova/virt/libvirt/utils.py b/nova/virt/libvirt/utils.py
+index d7c92b7..c2171c1 100644
+--- a/nova/virt/libvirt/utils.py
++++ b/nova/virt/libvirt/utils.py
+@@ -504,33 +504,11 @@ def chown(path, owner):
+     execute('chown', owner, path, run_as_root=True)
+ 
+ 
+-def create_snapshot(disk_path, snapshot_name):
+-    """Create a snapshot in a disk image
++def extract_snapshot(disk_path, source_fmt, out_path, dest_fmt):
++    """Extract a snapshot from a disk image.
++    Note that nobody should write to the disk image during this operation.
+ 
+     :param disk_path: Path to disk image
+-    :param snapshot_name: Name of snapshot in disk image
+-    """
+-    qemu_img_cmd = ('qemu-img', 'snapshot', '-c', snapshot_name, disk_path)
+-    # NOTE(vish): libvirt changes ownership of images
+-    execute(*qemu_img_cmd, run_as_root=True)
+-
+-
+-def delete_snapshot(disk_path, snapshot_name):
+-    """Create a snapshot in a disk image
+-
+-    :param disk_path: Path to disk image
+-    :param snapshot_name: Name of snapshot in disk image
+-    """
+-    qemu_img_cmd = ('qemu-img', 'snapshot', '-d', snapshot_name, disk_path)
+-    # NOTE(vish): libvirt changes ownership of images
+-    execute(*qemu_img_cmd, run_as_root=True)
+-
+-
+-def extract_snapshot(disk_path, source_fmt, snapshot_name, out_path, dest_fmt):
+-    """Extract a named snapshot from a disk image
+-
+-    :param disk_path: Path to disk image
+-    :param snapshot_name: Name of snapshot in disk image
+     :param out_path: Desired path of extracted snapshot
+     """
+     # NOTE(markmc): ISO is just raw to qemu-img
+@@ -543,11 +521,6 @@ def extract_snapshot(disk_path, source_fmt, snapshot_name, out_path, dest_fmt):
+     if CONF.libvirt_snapshot_compression and dest_fmt == "qcow2":
+         qemu_img_cmd += ('-c',)
+ 
+-    # When snapshot name is omitted we do a basic convert, which
+-    # is used by live snapshots.
+-    if snapshot_name is not None:
+-        qemu_img_cmd += ('-s', snapshot_name)
+-
+     qemu_img_cmd += (disk_path, out_path)
+     execute(*qemu_img_cmd)
+ 
diff --git a/openstack-nova.spec b/openstack-nova.spec
index 3826add..87ee193 100644
--- a/openstack-nova.spec
+++ b/openstack-nova.spec
@@ -1,8 +1,8 @@
 %global with_doc %{!?_without_doc:1}%{?_without_doc:0}
 
 Name:             openstack-nova
-Version:          2013.2
-Release:          5%{?dist}
+Version:          2013.2.1
+Release:          1%{?dist}
 Summary:          OpenStack Compute (nova)
 
 Group:            Applications/System
@@ -50,21 +50,19 @@ Source22:         nova-ifc-template
 Source30:         openstack-nova-novncproxy.sysconfig
 
 #
-# patches_base=2013.2
+# patches_base=2013.2.1
 #
 Patch0001: 0001-Ensure-we-don-t-access-the-net-when-building-docs.patch
 Patch0002: 0002-remove-runtime-dep-on-python-pbr.patch
-Patch0003: 0003-Revert-Use-oslo.sphinx-and-remove-local-copy-of-doc-.patch
-Patch0004: 0004-Pass-volume_api-to-get_encryption_metadata.patch
-Patch0005: 0005-remove-the-s-option-on-qemu-img-convert.patch
-Patch0006: 0006-ensure-we-don-t-boot-oversized-images.patch
+Patch0003: 0003-Use-updated-parallel-install-versions-of-epel-packag.patch
+Patch0004: 0004-Remove-unnecessary-steps-for-cold-snapshots.patch
 
 # This is EPEL specific and not upstream
-Patch100:         openstack-nova-newdeps.patch
 
 BuildArch:        noarch
 BuildRequires:    intltool
 BuildRequires:    python-sphinx10
+BuildRequires:    python-oslo-sphinx
 BuildRequires:    python-setuptools
 BuildRequires:    python-netaddr
 BuildRequires:    openstack-utils
@@ -431,11 +429,8 @@ This package contains documentation files for nova.
 %patch0002 -p1
 %patch0003 -p1
 %patch0004 -p1
-%patch0005 -p1
-%patch0006 -p1
 
 # Apply EPEL patch
-%patch100 -p1
 
 find . \( -name .gitignore -o -name .placeholder \) -delete
 
@@ -934,10 +929,14 @@ fi
 %endif
 
 %changelog
+* Mon Dec 16 2013 Xavier Queralt <xqueralt at redhat.com> - 2013.2.1-1
+- Update to stable/havana 2013.2.1 release
+- Add python-oslo-sphinx to build requirements
+
 * Tue Dec 03 2013 Xavier Queralt <xqueralt at redhat.com> - 2013.2-5
 - Fix the CVE number references from the latest change
 
-* Tue Nov 18 2013 Xavier Queralt <xqueralt at redhat.com> - 2013.2-4
+* Mon Nov 18 2013 Xavier Queralt <xqueralt at redhat.com> - 2013.2-4
 - Remove cert and scheduler hard dependency on cinderclient - rhbz#1031679
 - Require ipmitool for baremetal driver - rhbz#1022243
 - Ensure we don't boot oversized images (CVE-2013-4463 and CVE-2013-2096)
@@ -1004,7 +1003,7 @@ fi
 * Wed Aug 07 2013 Xavier Queralt <xqueralt at redhat.com> - 2013.2-0.9.b2
 - Create a nova-dist.conf file with default values under /usr/share
 
-* Sun Jul 22 2013 Pádraig Brady <pbrady at redhat.com> - 2013.2-0.8.b2
+* Mon Jul 22 2013 Pádraig Brady <pbrady at redhat.com> - 2013.2-0.8.b2
 - Update to Havana milestone 2
 
 * Wed Jul 17 2013 Pádraig Brady <pbrady at redhat.com> - 2013.2-0.6.b1
@@ -1092,7 +1091,7 @@ fi
 * Tue Oct 30 2012 Pádraig Brady <pbrady at redhat.com> - 2012.2-2
 - Add support for python-migrate-0.6
 
-* Thu Oct 12 2012 Pádraig Brady <pbrady at redhat.com> - 2012.2-1
+* Fri Oct 12 2012 Pádraig Brady <pbrady at redhat.com> - 2012.2-1
 - Update to folsom final
 
 * Fri Oct 12 2012 Nikola Dipanov <ndipanov at redhat.com> - 2012.1.3-1
@@ -1119,7 +1118,7 @@ fi
 * Mon Aug  6 2012 Pádraig Brady <P at draigBrady.com> - 2012.1.1-12
 - Fix group installation issue introduced in 2012.1.1-10
 
-* Sun Jul 30 2012 Pádraig Brady <P at draigBrady.com> - 2012.1.1-11
+* Mon Jul 30 2012 Pádraig Brady <P at draigBrady.com> - 2012.1.1-11
 - Update from stable upstream including...
 - Fix metadata file injection with xen
 - Fix affinity filters when hints is None
@@ -1176,7 +1175,7 @@ fi
 - fix the encoding of the dns_domains table (requires a db sync)
 - fix a crash due to a nova services startup race (#825051)
 
-* Wed Jun 08 2012 Pádraig Brady <P at draigBrady.com> - 2012.1-10
+* Fri Jun 08 2012 Pádraig Brady <P at draigBrady.com> - 2012.1-10
 - Enable libguestfs image inspection
 
 * Wed Jun 06 2012 Pádraig Brady <P at draigBrady.com> - 2012.1-9
@@ -1198,7 +1197,7 @@ fi
 * Tue May 01 2012 Pádraig Brady <P at draigBrady.com> - 2012.1-5
 - Start the services later in the boot sequence
 
-* Wed Apr 27 2012 Pádraig Brady <P at draigBrady.com> - 2012.1-4
+* Fri Apr 27 2012 Pádraig Brady <P at draigBrady.com> - 2012.1-4
 - Fix install issues with new Essex init scripts
 
 * Wed Apr 25 2012 Pádraig Brady <P at draigBrady.com> - 2012.1-3
@@ -1214,7 +1213,7 @@ fi
 * Fri Apr 13 2012 Pádraig Brady <P at draigBrady.com> - 2012.1-1
 - Update to Essex release
 
-* Mon Apr 01 2012 Pádraig Brady <P at draigBrady.com> - 2012.1-0.1.rc1
+* Sun Apr 01 2012 Pádraig Brady <P at draigBrady.com> - 2012.1-0.1.rc1
 - Update to Essex release candidate 1
 
 * Thu Mar 29 2012 Pádraig Brady <P at draigBrady.com> - 2011.3.1-8
@@ -1224,7 +1223,7 @@ fi
 - CVE-2012-1585 - Long server names grow nova-api log files significantly
 - Resolves: rhbz#808148
 
-* Mon Mar  6 2012 Pádraig Brady <P at draigBrady.com> - 2011.3.1-5
+* Tue Mar 06 2012 Pádraig Brady <P at draigBrady.com> - 2011.3.1-5
 - Require bridge-utils
 
 * Mon Feb 13 2012 Pádraig Brady <P at draigBrady.com> - 2011.3.1-4
@@ -1275,7 +1274,7 @@ fi
 - Don't require the fuse group (#770927)
 - Require the fuse package (to avoid #767852)
 
-* Tue Dec 14 2011 Pádraig Brady <P at draigBrady.com> - 2011.3-13
+* Wed Dec 14 2011 Pádraig Brady <P at draigBrady.com> - 2011.3-13
 - Sanitize EC2 manifests and image tarballs (#767236, CVE 2011-4596)
 - update libguestfs support
 
diff --git a/sources b/sources
index ff81a20..3dcc9e9 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-dec2a8321504922a1beb8c4188c4e78c  nova-2013.2.tar.gz
+46dfc48b839a7ebbb36a13ef3225fcb9  nova-2013.2.1.tar.gz


More information about the scm-commits mailing list