]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commitdiff
Update specs to 2013.2.3 version
authorDmitry Burmistrov <dburmistrov@mirantis.com>
Fri, 16 May 2014 13:31:11 +0000 (17:31 +0400)
committerDmitry Burmistrov <dburmistrov@mirantis.com>
Fri, 16 May 2014 13:31:11 +0000 (17:31 +0400)
13 files changed:
debian/changelog
debian/control
debian/patches/MIRA-Do-not-clone-non-raw-images-in-rbd-backend.patch [changed mode: 0755->0644]
debian/patches/fix-babel-requirements.patch [deleted file]
debian/patches/fix-sqlalchemy-requirements.patch
debian/patches/revert-stable-havana-requirements.patch [new file with mode: 0644]
debian/patches/series
rpm/SOURCES/0001-Ensure-we-don-t-access-the-net-when-building-docs.patch
rpm/SOURCES/0002-Use-updated-parallel-install-versions-of-epel-packag.patch
rpm/SOURCES/0003-Remove-runtime-dep-on-python-pbr-python-d2to1.patch
rpm/SOURCES/0004-Revert-Use-oslo.sphinx-and-remove-local-copy-of-doc-.patch
rpm/SOURCES/MIRA-Do-not-clone-non-raw-images-in-rbd-backend.patch [changed mode: 0755->0644]
rpm/SPECS/openstack-cinder.spec

index 14d1ad611d3f21ca14d003ef29258d7bd45c4cea..ea4fc4df4ca3c32741cc754c0eeeb62eafd2b6a5 100644 (file)
@@ -1,8 +1,112 @@
-cinder (1:2013.2-0ubuntu1~cloud0) precise-havana; urgency=low
+cinder (1:2013.2.3-0ubuntu1~cloud0) precise-havana; urgency=medium
 
   * New upstream release for the Ubuntu Cloud Archive.
 
- -- James Page <james.page@ubuntu.com>  Wed, 16 Oct 2013 11:27:06 +0100
+ -- Openstack Ubuntu Testing Bot <openstack-testing-bot@ubuntu.com>  Mon, 14 Apr 2014 07:09:31 -0400
+
+cinder (1:2013.2.3-0ubuntu1) saucy-proposed; urgency=medium
+
+  * Resynchronize with stable/havana (c5cdf82) (LP: #1302575):
+    - [c5cdf82] User a more accurate max_delay for reconnects
+    - [62d4e54] VMware: Fixed upload-to-image for available volume
+    - [9ff2f90] Cast the quota set values to integer before checking their validity
+    - [5b9fc5c] Raise max header size to accommodate large tokens
+    - [78d7e7a] Ensures NetApp iSCSI driver correctly compares int values for size
+    - [d043874] Don't raise MySQL 2013 'Lost connection' errors
+    - [41f043a] Add db2 communication error code when check the db connection
+    - [ed41b68] Update quota-set throw 500 error
+    - [42e2805] Delete volume transfer in volume_destroy function
+    - [24a1bd8] Catch ImageBusy exception when deleting rbd volume
+    - [69e687d] GlusterFS: Fix deadlock in volume clone
+    - [e0dca03] GlusterFS: Synchronize additional operations
+    - [018ece5] Fix volume transfer href issue
+    - [924a901] Support volume_readonly_update using XML format
+    - [e8aeb57] Hiding postgresql password in connection string
+    - [07892b1] Add valid check and unit tests on quota class
+    - [472cf25] NetApp fix for vsadmin role failure for ssc 
+
+ -- Chuck Short <zulcss@ubuntu.com>  Fri, 04 Apr 2014 11:25:01 -0400
+
+cinder (1:2013.2.2-0ubuntu1) saucy-proposed; urgency=low
+
+  * Resynchronize with stable/havana (67e4b38) (LP: #1284643):
+    - [ec8ce6c] rate-limiting doesn't work LP: 1259957
+    - [5228001] Cinder Migrate from NFS fails due to nfs_mount_point_base not
+      being provided LP: 1238085
+    - [ace214a] migrate_volume dest_vg existence is wrong LP: 1258203
+    - [36b7596] lvm_mirrors in volume_migration should be converted to int
+      LP: 1258133
+    - [6687331] NFS/GlusterFS drivers should validate format of configured
+      shares LP: 1267253
+    - [3d967e0] Copy image to volume iSCSI multipath doesn't work properly if
+      there are different targets associated with different portals for a
+      mulitpath device. LP: 1266048
+    - [77fade5] NetApp cinder driver reports 0 free space for the first 60
+      seconds LP: 1253660
+    - [f02d4fe] GlusterFS: allow snapshot_delete when snapshot info does not
+      exist LP: 1252864
+    - [240c81d] GlusterFS: Use correct base argument when deleting attached
+      snaps LP: 1262880
+    - [4470fdb] No notification sent deleting a volume that doesn't have a real
+      backing volume LP: 1257053
+    - [f9e1943] cinder does not handle missing volume group gracefully (stuck
+      in "creating") LP: 1242942
+    - [67e4b38] LVM brick instantiation fails on volume_migration LP: 1258128
+
+ -- Chuck Short <zulcss@ubuntu.com>  Tue, 25 Feb 2014 08:57:25 -0500
+
+cinder (1:2013.2.1-0ubuntu1) saucy-proposed; urgency=low
+
+  * Resynchronize with stable/havana (eb78fee) (LP: #1262788):
+    - [d8a0cd9] GlusterFS: errors when trying to boot instance from cloned
+      volume LP: 1244238
+    - [550f439] SSC attribute netapp_mirrored is not followed LP: 1242808
+    - [0d3c303] SSC attributes netapp_compression and netapp_dedup are not
+      followed LP: 1236839
+    - [243ad85] Brick HostDriver test failure LP: 1244418
+    - [42f3e68] SSC volume filtering for extra specs can result in inconsistent
+      list LP: 1243081
+    - [2e5dc22] Broken NetAppDirect7modeISCSIDriver reports incorrect free
+      capacity, scheduler won't balance between multiple Netapp backends
+      LP: 1238967
+    - [ad05556] copy image to volume is broken for non-local volumes
+      LP: 1243980
+    - [5f7d263] check_ssh_injection not handling quoted args correctly
+      LP: 1244415
+    - [709130b] don't secure delete thin provisioned volumes or snapshots
+      LP: 1240299
+    - [986d243] invalid volume when source image virtual size is bigger than
+      the requested size LP: 1235358
+    - [df6d45f] invalid volume when source image virtual size is bigger than
+      the requested size LP: 1235358
+    - [78609c1] Properly handle volume cleanup with RBD driver LP: 1254318
+    - [0801927] KeyError from storwize driver when 'host' is not provided to
+      terminate_connection LP: 1244257
+    - [e96e33c] GlusterFS: cloned volume has incorrect permissions LP: 1254768
+    - [4529886] GlusterFS: operations that modify data require locking
+      LP: 1251425
+    - [3a58261] cinder backup should use pipe for diff transfer LP: 1244464
+    - [3591f0d] Havana cinder requires glance API V2 LP: 1252549
+    - [871d7d6] Excessive queries for API volumes/detail extensions LP: 1197612
+    - [22a7101] Ensure ThinLVM LV is active when cloning LP: 1252423
+    - [c5d4246] Excessive queries for API volumes/detail extensions LP: 1197612
+    - [395ec74] Excessive queries for API volumes/detail extensions LP: 1197612
+    - [1825386] Excessive queries for API volumes/detail extensions LP: 1197612
+    - [430f0b9] [messaging] QPID broadcast RPC requests to all servers for a
+      given topic LP: 1257293
+    - [eb78fee] Updated from global requirements
+  * debian/patches: Refresh.
+  * debian/patches/revert-stable-havana-requirements.patch: Revert
+    version bumps to dependencies in stable/havana back to what was
+    shipped with Saucy.
+
+ -- Adam Gandelman <adamg@ubuntu.com>  Tue, 17 Dec 2013 20:01:13 -0800
+
+cinder (1:2013.2-0ubuntu1) saucy; urgency=low
+
+  * New upstream release (LP: #1236462).
+
+ -- Chuck Short <zulcss@ubuntu.com>  Thu, 17 Oct 2013 10:00:43 -0400
 
 cinder (1:2013.2~rc3-0ubuntu1) saucy; urgency=low
 
index 1f20f0fb89e77b638f0dab52762ac2e6cb110d0d..8bf9f19ea227e1aabd5854053582a4c7683cfe50 100644 (file)
@@ -57,14 +57,12 @@ Depends:
  python-eventlet (>= 0.13.0),
  python-glanceclient (>= 1:0.9.0),
  python-greenlet (>= 0.3.2),
- python-importlib,
  python-iso8601,
  python-keystoneclient (>= 1:0.3.0),
  python-kombu (>= 2.5.12),
  python-lockfile,
  python-lxml (>= 2.3),
  python-migrate,
- python-mysqldb,
  python-netaddr,
  python-novaclient (>= 1:2.12.0),
  python-oslo.config (>= 1:1.1.0),
old mode 100755 (executable)
new mode 100644 (file)
index 0b1f085..31daeae
@@ -1,4 +1,4 @@
-From fd7e9dd59ffa346bed5a11e5312f4bb1bf114ab4 Mon Sep 17 00:00:00 2001
+From 80c652d54692a7408f56b5ae4201afd4bc3519ed Mon Sep 17 00:00:00 2001
 From: Dmitry Borodaenko <angdraug@gmail.com>
 Date: Wed, 27 Nov 2013 14:33:00 -0800
 Subject: [PATCH] Do not clone non-raw images in rbd backend
@@ -16,17 +16,17 @@ Change-Id: I5725d2f7576bc1b3e9b874ba944ad17d33a6e2cb
 Closes-Bug: #1246219
 Closes-Bug: #1247998
 ---
- cinder/tests/test_gpfs.py                     |   6 +-
- cinder/tests/test_netapp_nfs.py               |  12 +-
- cinder/tests/test_rbd.py                      | 168 +++++++++++++++++---------
- cinder/tests/test_volume.py                   |   2 +-
- cinder/volume/driver.py                       |   7 +-
- cinder/volume/drivers/gpfs.py                 |   2 +-
- cinder/volume/drivers/lvm.py                  |   2 +-
- cinder/volume/drivers/netapp/nfs.py           |   2 +-
- cinder/volume/drivers/rbd.py                  |  14 ++-
- cinder/volume/drivers/scality.py              |   2 +-
- cinder/volume/flows/create_volume/__init__.py |   2 +-
+ cinder/tests/test_gpfs.py                     |    6 +-
+ cinder/tests/test_netapp_nfs.py               |   12 +-
+ cinder/tests/test_rbd.py                      |  168 ++++++++++++++++---------
+ cinder/tests/test_volume.py                   |    2 +-
+ cinder/volume/driver.py                       |    7 +-
+ cinder/volume/drivers/gpfs.py                 |    2 +-
+ cinder/volume/drivers/lvm.py                  |    2 +-
+ cinder/volume/drivers/netapp/nfs.py           |    2 +-
+ cinder/volume/drivers/rbd.py                  |   14 ++-
+ cinder/volume/drivers/scality.py              |    2 +-
+ cinder/volume/flows/create_volume/__init__.py |    2 +-
  11 files changed, 144 insertions(+), 75 deletions(-)
 
 diff --git a/cinder/tests/test_gpfs.py b/cinder/tests/test_gpfs.py
@@ -54,10 +54,10 @@ index 4fdb788..1f47c6b 100644
          self.assertTrue(os.path.exists(volumepath))
          self.volume.delete_volume(self.context, volume['id'])
 diff --git a/cinder/tests/test_netapp_nfs.py b/cinder/tests/test_netapp_nfs.py
-index 950efc8..042280e 100644
+index a8e1d7e..7c21862 100644
 --- a/cinder/tests/test_netapp_nfs.py
 +++ b/cinder/tests/test_netapp_nfs.py
-@@ -469,7 +469,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -480,7 +480,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
          drv._post_clone_image(volume)
  
          mox.ReplayAll()
@@ -66,7 +66,7 @@ index 950efc8..042280e 100644
          mox.VerifyAll()
  
      def get_img_info(self, format):
-@@ -493,7 +493,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -504,7 +504,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
  
          mox.ReplayAll()
          (prop, cloned) = drv. clone_image(
@@ -75,7 +75,7 @@ index 950efc8..042280e 100644
          mox.VerifyAll()
          if not cloned and not prop['provider_location']:
              pass
-@@ -529,7 +529,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -540,7 +540,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
  
          mox.ReplayAll()
          drv. clone_image(
@@ -84,7 +84,7 @@ index 950efc8..042280e 100644
          mox.VerifyAll()
  
      def test_clone_image_cloneableshare_notraw(self):
-@@ -566,7 +566,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -577,7 +577,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
  
          mox.ReplayAll()
          drv. clone_image(
@@ -93,7 +93,7 @@ index 950efc8..042280e 100644
          mox.VerifyAll()
  
      def test_clone_image_file_not_discovered(self):
-@@ -605,7 +605,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -616,7 +616,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
  
          mox.ReplayAll()
          vol_dict, result = drv. clone_image(
@@ -102,7 +102,7 @@ index 950efc8..042280e 100644
          mox.VerifyAll()
          self.assertFalse(result)
          self.assertFalse(vol_dict['bootable'])
-@@ -652,7 +652,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -663,7 +663,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
  
          mox.ReplayAll()
          vol_dict, result = drv. clone_image(
@@ -112,10 +112,10 @@ index 950efc8..042280e 100644
          self.assertFalse(result)
          self.assertFalse(vol_dict['bootable'])
 diff --git a/cinder/tests/test_rbd.py b/cinder/tests/test_rbd.py
-index 60de09b..054bbb5 100644
+index 8242ee7..7fce74a 100644
 --- a/cinder/tests/test_rbd.py
 +++ b/cinder/tests/test_rbd.py
-@@ -34,6 +34,7 @@ from cinder.tests.test_volume import DriverTestCase
+@@ -35,6 +35,7 @@ from cinder.tests.test_volume import DriverTestCase
  from cinder import units
  from cinder.volume import configuration as conf
  import cinder.volume.drivers.rbd as driver
@@ -123,7 +123,7 @@ index 60de09b..054bbb5 100644
  
  
  LOG = logging.getLogger(__name__)
-@@ -247,7 +248,8 @@ class RBDTestCase(test.TestCase):
+@@ -292,7 +293,8 @@ class RBDTestCase(test.TestCase):
              self.assertRaises(exception.ImageUnacceptable,
                                self.driver._parse_location,
                                loc)
@@ -133,7 +133,7 @@ index 60de09b..054bbb5 100644
  
      def test_cloneable(self):
          self.stubs.Set(self.driver, '_get_fsid', lambda: 'abc')
-@@ -264,12 +266,14 @@ class RBDTestCase(test.TestCase):
+@@ -309,12 +311,14 @@ class RBDTestCase(test.TestCase):
  
          self.mox.ReplayAll()
  
@@ -150,7 +150,7 @@ index 60de09b..054bbb5 100644
  
      def test_uncloneable_unreadable(self):
          self.stubs.Set(self.driver, '_get_fsid', lambda: 'abc')
-@@ -284,7 +288,16 @@ class RBDTestCase(test.TestCase):
+@@ -329,7 +333,16 @@ class RBDTestCase(test.TestCase):
  
          self.mox.ReplayAll()
  
@@ -168,7 +168,7 @@ index 60de09b..054bbb5 100644
  
      def _copy_image(self):
          @contextlib.contextmanager
-@@ -504,26 +517,37 @@ class ManagedRBDTestCase(DriverTestCase):
+@@ -549,26 +562,37 @@ class ManagedRBDTestCase(DriverTestCase):
          super(ManagedRBDTestCase, self).setUp()
          fake_image.stub_out_image_service(self.stubs)
          self.volume.driver.set_initialized()
@@ -217,7 +217,7 @@ index 60de09b..054bbb5 100644
          # creating volume testdata
          db.volume_create(self.context,
                           {'id': volume_id,
-@@ -533,58 +557,88 @@ class ManagedRBDTestCase(DriverTestCase):
+@@ -578,58 +602,88 @@ class ManagedRBDTestCase(DriverTestCase):
                            'status': 'creating',
                            'instance_uuid': None,
                            'host': 'dummy'})
@@ -349,10 +349,10 @@ index 60de09b..054bbb5 100644
 +        self.assertTrue(self.volume.driver.clone_image({},
 +                        image_id, image_id, {}))
 diff --git a/cinder/tests/test_volume.py b/cinder/tests/test_volume.py
-index 4a0d475..928799f 100644
+index 6e75d1a..74f8162 100644
 --- a/cinder/tests/test_volume.py
 +++ b/cinder/tests/test_volume.py
-@@ -1216,7 +1216,7 @@ class VolumeTestCase(BaseVolumeTestCase):
+@@ -1345,7 +1345,7 @@ class VolumeTestCase(BaseVolumeTestCase):
          def fake_fetch_to_raw(ctx, image_service, image_id, path, size=None):
              pass
  
@@ -362,10 +362,10 @@ index 4a0d475..928799f 100644
  
          dst_fd, dst_path = tempfile.mkstemp()
 diff --git a/cinder/volume/driver.py b/cinder/volume/driver.py
-index 21dd12b..dd2be3c 100644
+index e77f290..b04c93f 100644
 --- a/cinder/volume/driver.py
 +++ b/cinder/volume/driver.py
-@@ -396,7 +396,7 @@ class VolumeDriver(object):
+@@ -397,7 +397,7 @@ class VolumeDriver(object):
          connector.disconnect_volume(attach_info['conn']['data'],
                                      attach_info['device'])
  
@@ -374,7 +374,7 @@ index 21dd12b..dd2be3c 100644
          """Create a volume efficiently from an existing image.
  
          image_location is a string whose format depends on the
-@@ -407,6 +407,11 @@ class VolumeDriver(object):
+@@ -408,6 +408,11 @@ class VolumeDriver(object):
          It can be used by the driver to introspect internal
          stores or registry to do an efficient image clone.
  
@@ -400,7 +400,7 @@ index 9a1a397..8792ad8 100644
  
      def _is_cloneable(self, image_id):
 diff --git a/cinder/volume/drivers/lvm.py b/cinder/volume/drivers/lvm.py
-index 094436f..c6023eb 100644
+index 8c477c6..0fc2269 100644
 --- a/cinder/volume/drivers/lvm.py
 +++ b/cinder/volume/drivers/lvm.py
 @@ -322,7 +322,7 @@ class LVMVolumeDriver(driver.VolumeDriver):
@@ -413,7 +413,7 @@ index 094436f..c6023eb 100644
  
      def backup_volume(self, context, backup, backup_service):
 diff --git a/cinder/volume/drivers/netapp/nfs.py b/cinder/volume/drivers/netapp/nfs.py
-index 602a1dc..9463137 100644
+index 0b5621a..8039587 100644
 --- a/cinder/volume/drivers/netapp/nfs.py
 +++ b/cinder/volume/drivers/netapp/nfs.py
 @@ -374,7 +374,7 @@ class NetAppNFSDriver(nfs.NfsDriver):
@@ -426,10 +426,10 @@ index 602a1dc..9463137 100644
  
          image_location is a string whose format depends on the
 diff --git a/cinder/volume/drivers/rbd.py b/cinder/volume/drivers/rbd.py
-index 775ab16..7ed59d0 100644
+index 7f38fda..d121199 100644
 --- a/cinder/volume/drivers/rbd.py
 +++ b/cinder/volume/drivers/rbd.py
-@@ -706,7 +706,7 @@ class RBDDriver(driver.VolumeDriver):
+@@ -717,7 +717,7 @@ class RBDDriver(driver.VolumeDriver):
          with RADOSClient(self) as client:
              return client.cluster.get_fsid()
  
@@ -438,7 +438,7 @@ index 775ab16..7ed59d0 100644
          try:
              fsid, pool, image, snapshot = self._parse_location(image_location)
          except exception.ImageUnacceptable as e:
-@@ -718,6 +718,13 @@ class RBDDriver(driver.VolumeDriver):
+@@ -729,6 +729,13 @@ class RBDDriver(driver.VolumeDriver):
              LOG.debug(reason)
              return False
  
@@ -452,7 +452,7 @@ index 775ab16..7ed59d0 100644
          # check that we can read the image
          try:
              with RBDVolumeProxy(self, image,
-@@ -730,9 +737,10 @@ class RBDDriver(driver.VolumeDriver):
+@@ -741,9 +748,10 @@ class RBDDriver(driver.VolumeDriver):
                        dict(loc=image_location, err=e))
              return False
  
@@ -479,7 +479,7 @@ index 4cf49c6..abd6c29 100644
  
          image_location is a string whose format depends on the
 diff --git a/cinder/volume/flows/create_volume/__init__.py b/cinder/volume/flows/create_volume/__init__.py
-index bb7acd3..e5aa371 100644
+index e77dd2c..97b3674 100644
 --- a/cinder/volume/flows/create_volume/__init__.py
 +++ b/cinder/volume/flows/create_volume/__init__.py
 @@ -1438,7 +1438,7 @@ class CreateVolumeFromSpecTask(base.CinderTask):
@@ -492,5 +492,5 @@ index bb7acd3..e5aa371 100644
              # TODO(harlowja): what needs to be rolled back in the clone if this
              # volume create fails?? Likely this should be a subflow or broken
 -- 
-1.8.5.1
+1.7.9.5
 
diff --git a/debian/patches/fix-babel-requirements.patch b/debian/patches/fix-babel-requirements.patch
deleted file mode 100644 (file)
index 675cc90..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Author: Revert new babel requirements.
-Author: Chuck Short <zulcss@ubuntu.com>
-Forwarded: No, https://review.openstack.org/#/c/48739/
-diff --git a/requirements.txt b/requirements.txt
-index 219962d..01ec2e6 100644
---- a/requirements.txt
-+++ b/requirements.txt
-@@ -2,7 +2,7 @@ pbr>=0.5.21,<1.0
- amqplib>=0.6.1
- anyjson>=0.3.3
- argparse
--Babel>=1.3
-+Babel>=0.9.6
- eventlet>=0.13.0
- greenlet>=0.3.2
- iso8601>=0.1.8
-
index c4217c67b79fd84e1427a9a1f03ca88bbfa8b764..df49e6d32b1680ab4e41c4832cb3fb5794a44849 100644 (file)
@@ -1,11 +1,14 @@
-diff -Naurp cinder-2013.2.rc1.orig/requirements.txt cinder-2013.2.rc1/requirements.txt
---- cinder-2013.2.rc1.orig/requirements.txt    2013-10-04 05:11:50.000000000 -0400
-+++ cinder-2013.2.rc1/requirements.txt 2013-10-04 08:33:32.072164528 -0400
-@@ -20,7 +20,7 @@ python-novaclient>=2.15.0
+Index: cinder/requirements.txt
+===================================================================
+--- cinder.orig/requirements.txt       2013-12-17 19:54:20.811733048 -0800
++++ cinder/requirements.txt    2013-12-17 20:00:20.879729788 -0800
+@@ -19,8 +19,8 @@
+ python-novaclient>=2.15.0
  python-swiftclient>=1.5
  Routes>=1.12.3
- six>=1.4.1
+-six>=1.4.1
 -SQLAlchemy>=0.7.8,<=0.7.99
++six
 +SQLAlchemy>=0.7.8,<=0.8.99
  sqlalchemy-migrate>=0.7.2
  stevedore>=0.10
diff --git a/debian/patches/revert-stable-havana-requirements.patch b/debian/patches/revert-stable-havana-requirements.patch
new file mode 100644 (file)
index 0000000..404733c
--- /dev/null
@@ -0,0 +1,25 @@
+Author: Adam Gandelman <adamg@ubuntu.com>
+Date: Wed Dec 18 10:06:25 PST 2013
+Subject: Reverts stable/havana version bumps to requirements.txt
+
+Reverts various version bumps to dependencies in stable/havana that
+were updated in global requirements to fix gating issues and synced
+across projects.
+
+Index: cinder/requirements.txt
+===================================================================
+--- cinder.orig/requirements.txt       2013-12-18 10:11:29.047267359 -0800
++++ cinder/requirements.txt    2013-12-18 10:14:33.963265684 -0800
+@@ -2,10 +2,10 @@
+ amqplib>=0.6.1
+ anyjson>=0.3.3
+ argparse
+-Babel>=1.3
++Babel>=0.9.6
+ eventlet>=0.13.0
+ greenlet>=0.3.2
+-iso8601>=0.1.8
++iso8601>=0.1.4
+ kombu>=2.4.8
+ lockfile>=0.8
+ lxml>=2.3
index be203b8c798a646f21e8b6f4c0a169819074ad10..e1e1498f99e66f64dd3b6894822cd55b316cbd62 100644 (file)
@@ -1,3 +1,2 @@
 fix-sqlalchemy-requirements.patch
-fix-babel-requirements.patch
-MIRA-Do-not-clone-non-raw-images-in-rbd-backend.patch
+revert-stable-havana-requirements.patch
index 865d8afeb767d538eff0d23599990c3ef728a460..83592071073e94773fcf14abbc070297b9605cca 100644 (file)
@@ -1,15 +1,15 @@
-From 9904118c6d3d130624eaec31878649e41efd1bc2 Mon Sep 17 00:00:00 2001
+From d45516ee9ddb1132c1cf896b9b85e6fc0e616619 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?P=C3=A1draig=20Brady?= <P@draigBrady.com>
 Date: Fri, 21 Sep 2012 13:33:26 +0100
 Subject: [PATCH] Ensure we don't access the net when building docs
 
 (Note, this has not been sent upstream)
 ---
- doc/source/conf.py | 1 -
- 1 file changed, 1 deletion(-)
+ doc/source/conf.py |    1 -
+ 1 files changed, 0 insertions(+), 1 deletions(-)
 
 diff --git a/doc/source/conf.py b/doc/source/conf.py
-index e27d458..7a2bf1a 100644
+index 97ee288..238a922 100644
 --- a/doc/source/conf.py
 +++ b/doc/source/conf.py
 @@ -29,7 +29,6 @@ sys.path.insert(0, os.path.abspath('./'))
index 6f2d7415e588259afa5bc7e5d04ee830a0611ab2..98f6279deccb890c2dafbd5758913ae2dfb6fad6 100644 (file)
@@ -1,4 +1,4 @@
-From c8b9384ccf0e9c69f35978f3abbb5e5d5638d859 Mon Sep 17 00:00:00 2001
+From 037ed59af01fabac4de2dd387a363c34417a1f3c Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?P=C3=A1draig=20Brady?= <P@draigBrady.com>
 Date: Wed, 24 Oct 2012 13:44:37 +0100
 Subject: [PATCH] Use updated parallel install versions of epel package
@@ -11,13 +11,13 @@ Delve into pkg_resources a little to get it to modify sys.path,
 so that our parallel installed egg takes precedence over the
 system default module versions.
 ---
- bin/cinder-manage                 |  4 +++-
- cinder/__init__.py                | 30 ++++++++++++++++++++++++++++++
- cinder/db/sqlalchemy/migration.py |  7 ++++++-
+ bin/cinder-manage                 |    4 +++-
+ cinder/__init__.py                |   30 ++++++++++++++++++++++++++++++
+ cinder/db/sqlalchemy/migration.py |    7 ++++++-
  3 files changed, 39 insertions(+), 2 deletions(-)
 
 diff --git a/bin/cinder-manage b/bin/cinder-manage
-index 3c05d77..9474e2e 100755
+index 76afaf6..1520ad7 100755
 --- a/bin/cinder-manage
 +++ b/bin/cinder-manage
 @@ -62,7 +62,6 @@ import sys
index 5fd94c95b8d0ced843ad7bb74d6a0169636f6837..fe584c8701499405f169569be6ec576d09a0a3d8 100644 (file)
@@ -1,15 +1,15 @@
-From 6ed6db76f6e6b1a579d07c3db63283d444385c14 Mon Sep 17 00:00:00 2001
+From 8af4061f341f87d9301eb128512ee1b46cfa995f Mon Sep 17 00:00:00 2001
 From: Eric Harney <eharney@redhat.com>
 Date: Thu, 13 Jun 2013 17:50:12 -0400
 Subject: [PATCH] Remove runtime dep on python-pbr, python-d2to1
 
 Requires RPM spec to fill in REDHATCINDERVERSION.
 ---
- cinder/version.py | 16 +++++++++++++---
- 1 file changed, 13 insertions(+), 3 deletions(-)
+ cinder/version.py |   16 +++++++++++++---
+ 1 files changed, 13 insertions(+), 3 deletions(-)
 
 diff --git a/cinder/version.py b/cinder/version.py
-index ad1ebc0..b4f6fd8 100644
+index 09d1ee3..e34979f 100644
 --- a/cinder/version.py
 +++ b/cinder/version.py
 @@ -14,12 +14,22 @@
index f9609a750d8c6cb91444c707cb631b1ebf92652b..1a921a5614881a194524ecd80da25db8a1e52506 100644 (file)
@@ -1,4 +1,4 @@
-From bd1bfd86fbeacd893ff5d9abb969c7b0c994fbf4 Mon Sep 17 00:00:00 2001
+From e6478368cc1a3a3feecdca3def1571cda54f373c Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?P=C3=A1draig=20Brady?= <P@draigBrady.com>
 Date: Mon, 22 Jul 2013 03:14:27 +0100
 Subject: [PATCH] Revert "Use oslo.sphinx and remove local copy of doc theme"
@@ -9,19 +9,15 @@ Conflicts:
 
        test-requirements.txt
 ---
- doc/source/_static/.gitignore      |   0
- doc/source/_static/.placeholder    |   0
- doc/source/_static/basic.css       | 416 +++++++++++++++++++++++++++++++++++++
- doc/source/_static/default.css     | 230 ++++++++++++++++++++
- doc/source/_static/jquery.tweet.js | 154 ++++++++++++++
- doc/source/_static/tweaks.css      | 218 +++++++++++++++++++
- doc/source/_templates/.gitignore   |   0
- doc/source/_templates/.placeholder |   0
- doc/source/_theme/layout.html      |  95 +++++++++
- doc/source/_theme/theme.conf       |   5 +
- doc/source/conf.py                 |   8 +-
- test-requirements.txt              |   1 -
- 12 files changed, 1121 insertions(+), 6 deletions(-)
+ doc/source/_static/basic.css       |  416 ++++++++++++++++++++++++++++++++++++
+ doc/source/_static/default.css     |  230 ++++++++++++++++++++
+ doc/source/_static/jquery.tweet.js |  154 +++++++++++++
+ doc/source/_static/tweaks.css      |  218 +++++++++++++++++++
+ doc/source/_theme/layout.html      |   95 ++++++++
+ doc/source/_theme/theme.conf       |    5 +
+ doc/source/conf.py                 |    8 +-
+ test-requirements.txt              |    1 -
+ 8 files changed, 1121 insertions(+), 6 deletions(-)
  create mode 100644 doc/source/_static/.gitignore
  create mode 100644 doc/source/_static/.placeholder
  create mode 100644 doc/source/_static/basic.css
@@ -1201,7 +1197,7 @@ index 0000000..e039fe0
 +pygments_style = friendly
 +
 diff --git a/doc/source/conf.py b/doc/source/conf.py
-index 7a2bf1a..01bd3b4 100644
+index 238a922..58fc367 100644
 --- a/doc/source/conf.py
 +++ b/doc/source/conf.py
 @@ -33,9 +33,7 @@ extensions = ['sphinx.ext.autodoc',
@@ -1227,10 +1223,10 @@ index 7a2bf1a..01bd3b4 100644
  # Theme options are theme-specific and customize the look and feel of a theme
  # further.  For a list of options available for each theme, see the
 diff --git a/test-requirements.txt b/test-requirements.txt
-index 3d8e9bf..f83b20b 100644
+index 6159c98..9d2efbb 100644
 --- a/test-requirements.txt
 +++ b/test-requirements.txt
-@@ -12,4 +12,3 @@ sphinx>=1.1.2
+@@ -12,4 +12,3 @@ sphinx>=1.1.2,<1.2
  python-subunit
  testtools>=0.9.32
  testrepository>=0.0.17
old mode 100755 (executable)
new mode 100644 (file)
index 0b1f085..31daeae
@@ -1,4 +1,4 @@
-From fd7e9dd59ffa346bed5a11e5312f4bb1bf114ab4 Mon Sep 17 00:00:00 2001
+From 80c652d54692a7408f56b5ae4201afd4bc3519ed Mon Sep 17 00:00:00 2001
 From: Dmitry Borodaenko <angdraug@gmail.com>
 Date: Wed, 27 Nov 2013 14:33:00 -0800
 Subject: [PATCH] Do not clone non-raw images in rbd backend
@@ -16,17 +16,17 @@ Change-Id: I5725d2f7576bc1b3e9b874ba944ad17d33a6e2cb
 Closes-Bug: #1246219
 Closes-Bug: #1247998
 ---
- cinder/tests/test_gpfs.py                     |   6 +-
- cinder/tests/test_netapp_nfs.py               |  12 +-
- cinder/tests/test_rbd.py                      | 168 +++++++++++++++++---------
- cinder/tests/test_volume.py                   |   2 +-
- cinder/volume/driver.py                       |   7 +-
- cinder/volume/drivers/gpfs.py                 |   2 +-
- cinder/volume/drivers/lvm.py                  |   2 +-
- cinder/volume/drivers/netapp/nfs.py           |   2 +-
- cinder/volume/drivers/rbd.py                  |  14 ++-
- cinder/volume/drivers/scality.py              |   2 +-
- cinder/volume/flows/create_volume/__init__.py |   2 +-
+ cinder/tests/test_gpfs.py                     |    6 +-
+ cinder/tests/test_netapp_nfs.py               |   12 +-
+ cinder/tests/test_rbd.py                      |  168 ++++++++++++++++---------
+ cinder/tests/test_volume.py                   |    2 +-
+ cinder/volume/driver.py                       |    7 +-
+ cinder/volume/drivers/gpfs.py                 |    2 +-
+ cinder/volume/drivers/lvm.py                  |    2 +-
+ cinder/volume/drivers/netapp/nfs.py           |    2 +-
+ cinder/volume/drivers/rbd.py                  |   14 ++-
+ cinder/volume/drivers/scality.py              |    2 +-
+ cinder/volume/flows/create_volume/__init__.py |    2 +-
  11 files changed, 144 insertions(+), 75 deletions(-)
 
 diff --git a/cinder/tests/test_gpfs.py b/cinder/tests/test_gpfs.py
@@ -54,10 +54,10 @@ index 4fdb788..1f47c6b 100644
          self.assertTrue(os.path.exists(volumepath))
          self.volume.delete_volume(self.context, volume['id'])
 diff --git a/cinder/tests/test_netapp_nfs.py b/cinder/tests/test_netapp_nfs.py
-index 950efc8..042280e 100644
+index a8e1d7e..7c21862 100644
 --- a/cinder/tests/test_netapp_nfs.py
 +++ b/cinder/tests/test_netapp_nfs.py
-@@ -469,7 +469,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -480,7 +480,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
          drv._post_clone_image(volume)
  
          mox.ReplayAll()
@@ -66,7 +66,7 @@ index 950efc8..042280e 100644
          mox.VerifyAll()
  
      def get_img_info(self, format):
-@@ -493,7 +493,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -504,7 +504,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
  
          mox.ReplayAll()
          (prop, cloned) = drv. clone_image(
@@ -75,7 +75,7 @@ index 950efc8..042280e 100644
          mox.VerifyAll()
          if not cloned and not prop['provider_location']:
              pass
-@@ -529,7 +529,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -540,7 +540,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
  
          mox.ReplayAll()
          drv. clone_image(
@@ -84,7 +84,7 @@ index 950efc8..042280e 100644
          mox.VerifyAll()
  
      def test_clone_image_cloneableshare_notraw(self):
-@@ -566,7 +566,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -577,7 +577,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
  
          mox.ReplayAll()
          drv. clone_image(
@@ -93,7 +93,7 @@ index 950efc8..042280e 100644
          mox.VerifyAll()
  
      def test_clone_image_file_not_discovered(self):
-@@ -605,7 +605,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -616,7 +616,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
  
          mox.ReplayAll()
          vol_dict, result = drv. clone_image(
@@ -102,7 +102,7 @@ index 950efc8..042280e 100644
          mox.VerifyAll()
          self.assertFalse(result)
          self.assertFalse(vol_dict['bootable'])
-@@ -652,7 +652,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
+@@ -663,7 +663,7 @@ class NetappDirectCmodeNfsDriverTestCase(test.TestCase):
  
          mox.ReplayAll()
          vol_dict, result = drv. clone_image(
@@ -112,10 +112,10 @@ index 950efc8..042280e 100644
          self.assertFalse(result)
          self.assertFalse(vol_dict['bootable'])
 diff --git a/cinder/tests/test_rbd.py b/cinder/tests/test_rbd.py
-index 60de09b..054bbb5 100644
+index 8242ee7..7fce74a 100644
 --- a/cinder/tests/test_rbd.py
 +++ b/cinder/tests/test_rbd.py
-@@ -34,6 +34,7 @@ from cinder.tests.test_volume import DriverTestCase
+@@ -35,6 +35,7 @@ from cinder.tests.test_volume import DriverTestCase
  from cinder import units
  from cinder.volume import configuration as conf
  import cinder.volume.drivers.rbd as driver
@@ -123,7 +123,7 @@ index 60de09b..054bbb5 100644
  
  
  LOG = logging.getLogger(__name__)
-@@ -247,7 +248,8 @@ class RBDTestCase(test.TestCase):
+@@ -292,7 +293,8 @@ class RBDTestCase(test.TestCase):
              self.assertRaises(exception.ImageUnacceptable,
                                self.driver._parse_location,
                                loc)
@@ -133,7 +133,7 @@ index 60de09b..054bbb5 100644
  
      def test_cloneable(self):
          self.stubs.Set(self.driver, '_get_fsid', lambda: 'abc')
-@@ -264,12 +266,14 @@ class RBDTestCase(test.TestCase):
+@@ -309,12 +311,14 @@ class RBDTestCase(test.TestCase):
  
          self.mox.ReplayAll()
  
@@ -150,7 +150,7 @@ index 60de09b..054bbb5 100644
  
      def test_uncloneable_unreadable(self):
          self.stubs.Set(self.driver, '_get_fsid', lambda: 'abc')
-@@ -284,7 +288,16 @@ class RBDTestCase(test.TestCase):
+@@ -329,7 +333,16 @@ class RBDTestCase(test.TestCase):
  
          self.mox.ReplayAll()
  
@@ -168,7 +168,7 @@ index 60de09b..054bbb5 100644
  
      def _copy_image(self):
          @contextlib.contextmanager
-@@ -504,26 +517,37 @@ class ManagedRBDTestCase(DriverTestCase):
+@@ -549,26 +562,37 @@ class ManagedRBDTestCase(DriverTestCase):
          super(ManagedRBDTestCase, self).setUp()
          fake_image.stub_out_image_service(self.stubs)
          self.volume.driver.set_initialized()
@@ -217,7 +217,7 @@ index 60de09b..054bbb5 100644
          # creating volume testdata
          db.volume_create(self.context,
                           {'id': volume_id,
-@@ -533,58 +557,88 @@ class ManagedRBDTestCase(DriverTestCase):
+@@ -578,58 +602,88 @@ class ManagedRBDTestCase(DriverTestCase):
                            'status': 'creating',
                            'instance_uuid': None,
                            'host': 'dummy'})
@@ -349,10 +349,10 @@ index 60de09b..054bbb5 100644
 +        self.assertTrue(self.volume.driver.clone_image({},
 +                        image_id, image_id, {}))
 diff --git a/cinder/tests/test_volume.py b/cinder/tests/test_volume.py
-index 4a0d475..928799f 100644
+index 6e75d1a..74f8162 100644
 --- a/cinder/tests/test_volume.py
 +++ b/cinder/tests/test_volume.py
-@@ -1216,7 +1216,7 @@ class VolumeTestCase(BaseVolumeTestCase):
+@@ -1345,7 +1345,7 @@ class VolumeTestCase(BaseVolumeTestCase):
          def fake_fetch_to_raw(ctx, image_service, image_id, path, size=None):
              pass
  
@@ -362,10 +362,10 @@ index 4a0d475..928799f 100644
  
          dst_fd, dst_path = tempfile.mkstemp()
 diff --git a/cinder/volume/driver.py b/cinder/volume/driver.py
-index 21dd12b..dd2be3c 100644
+index e77f290..b04c93f 100644
 --- a/cinder/volume/driver.py
 +++ b/cinder/volume/driver.py
-@@ -396,7 +396,7 @@ class VolumeDriver(object):
+@@ -397,7 +397,7 @@ class VolumeDriver(object):
          connector.disconnect_volume(attach_info['conn']['data'],
                                      attach_info['device'])
  
@@ -374,7 +374,7 @@ index 21dd12b..dd2be3c 100644
          """Create a volume efficiently from an existing image.
  
          image_location is a string whose format depends on the
-@@ -407,6 +407,11 @@ class VolumeDriver(object):
+@@ -408,6 +408,11 @@ class VolumeDriver(object):
          It can be used by the driver to introspect internal
          stores or registry to do an efficient image clone.
  
@@ -400,7 +400,7 @@ index 9a1a397..8792ad8 100644
  
      def _is_cloneable(self, image_id):
 diff --git a/cinder/volume/drivers/lvm.py b/cinder/volume/drivers/lvm.py
-index 094436f..c6023eb 100644
+index 8c477c6..0fc2269 100644
 --- a/cinder/volume/drivers/lvm.py
 +++ b/cinder/volume/drivers/lvm.py
 @@ -322,7 +322,7 @@ class LVMVolumeDriver(driver.VolumeDriver):
@@ -413,7 +413,7 @@ index 094436f..c6023eb 100644
  
      def backup_volume(self, context, backup, backup_service):
 diff --git a/cinder/volume/drivers/netapp/nfs.py b/cinder/volume/drivers/netapp/nfs.py
-index 602a1dc..9463137 100644
+index 0b5621a..8039587 100644
 --- a/cinder/volume/drivers/netapp/nfs.py
 +++ b/cinder/volume/drivers/netapp/nfs.py
 @@ -374,7 +374,7 @@ class NetAppNFSDriver(nfs.NfsDriver):
@@ -426,10 +426,10 @@ index 602a1dc..9463137 100644
  
          image_location is a string whose format depends on the
 diff --git a/cinder/volume/drivers/rbd.py b/cinder/volume/drivers/rbd.py
-index 775ab16..7ed59d0 100644
+index 7f38fda..d121199 100644
 --- a/cinder/volume/drivers/rbd.py
 +++ b/cinder/volume/drivers/rbd.py
-@@ -706,7 +706,7 @@ class RBDDriver(driver.VolumeDriver):
+@@ -717,7 +717,7 @@ class RBDDriver(driver.VolumeDriver):
          with RADOSClient(self) as client:
              return client.cluster.get_fsid()
  
@@ -438,7 +438,7 @@ index 775ab16..7ed59d0 100644
          try:
              fsid, pool, image, snapshot = self._parse_location(image_location)
          except exception.ImageUnacceptable as e:
-@@ -718,6 +718,13 @@ class RBDDriver(driver.VolumeDriver):
+@@ -729,6 +729,13 @@ class RBDDriver(driver.VolumeDriver):
              LOG.debug(reason)
              return False
  
@@ -452,7 +452,7 @@ index 775ab16..7ed59d0 100644
          # check that we can read the image
          try:
              with RBDVolumeProxy(self, image,
-@@ -730,9 +737,10 @@ class RBDDriver(driver.VolumeDriver):
+@@ -741,9 +748,10 @@ class RBDDriver(driver.VolumeDriver):
                        dict(loc=image_location, err=e))
              return False
  
@@ -479,7 +479,7 @@ index 4cf49c6..abd6c29 100644
  
          image_location is a string whose format depends on the
 diff --git a/cinder/volume/flows/create_volume/__init__.py b/cinder/volume/flows/create_volume/__init__.py
-index bb7acd3..e5aa371 100644
+index e77dd2c..97b3674 100644
 --- a/cinder/volume/flows/create_volume/__init__.py
 +++ b/cinder/volume/flows/create_volume/__init__.py
 @@ -1438,7 +1438,7 @@ class CreateVolumeFromSpecTask(base.CinderTask):
@@ -492,5 +492,5 @@ index bb7acd3..e5aa371 100644
              # TODO(harlowja): what needs to be rolled back in the clone if this
              # volume create fails?? Likely this should be a subflow or broken
 -- 
-1.8.5.1
+1.7.9.5
 
index e39dd511f66fd67f60a5ebb8b48f97e8f78eb194..752e5d9bc1838d91067a552e386bf2921d1d641c 100644 (file)
@@ -1,14 +1,14 @@
 %global with_doc %{!?_without_doc:1}%{?_without_doc:0}
 
 Name:             openstack-cinder
-Version:          2013.2
-Release:          0.9.b3%{?dist}
+Version:          2013.2.3
+Release:          1%{?dist}
 Summary:          OpenStack Volume service
 
 Group:            Applications/System
 License:          ASL 2.0
 URL:              http://www.openstack.org/software/openstack-storage/
-Source0:          https://launchpad.net/cinder/havana/havana-3/+download/cinder-%{version}.b3.tar.gz
+Source0:          https://launchpad.net/cinder/havana/%{version}/+download/cinder-%{version}.tar.gz
 Source1:          cinder-dist.conf
 Source2:          cinder.logrotate
 Source3:          cinder-tgt.conf
@@ -25,13 +25,12 @@ Source130:        openstack-cinder-backup.upstart
 Source20:         cinder-sudoers
 
 #
-# patches_base=2013.2.b3
+# patches_base=2013.2.3
 #
 Patch0001: 0001-Ensure-we-don-t-access-the-net-when-building-docs.patch
 Patch0002: 0002-Use-updated-parallel-install-versions-of-epel-packag.patch
 Patch0003: 0003-Remove-runtime-dep-on-python-pbr-python-d2to1.patch
 Patch0004: 0004-Revert-Use-oslo.sphinx-and-remove-local-copy-of-doc-.patch
-Patch0005: MIRA-Do-not-clone-non-raw-images-in-rbd-backend.patch
 
 BuildArch:        noarch
 BuildRequires:    intltool
@@ -81,7 +80,6 @@ Requires:         python-paramiko
 Requires:         python-qpid
 Requires:         python-kombu
 Requires:         python-amqplib
-Requires:         python-importlib
 
 Requires:         python-eventlet
 Requires:         python-greenlet
@@ -103,7 +101,7 @@ Requires:         python-webob1.2
 Requires:         python-glanceclient >= 1:0
 Requires:         python-swiftclient >= 1.2
 Requires:         python-keystoneclient
-Requires:         python-novaclient >= 2.14
+Requires:         python-novaclient >= 1:2.15
 
 Requires:         python-oslo-config >= 1:1.2.0
 Requires:         python-six
@@ -148,7 +146,6 @@ This package contains documentation files for cinder.
 %patch0002 -p1
 %patch0003 -p1
 %patch0004 -p1
-%patch0005 -p1
 
 find . \( -name .gitignore -o -name .placeholder \) -delete
 
@@ -255,16 +252,13 @@ fi
 exit 0
 
 %post
-if [ $1 -eq 1 ] ; then
-    # Initial installation
-    for svc in volume api scheduler; do
-        /sbin/chkconfig --add openstack-cinder-$svc
-    done
-fi
+for svc in volume api scheduler backup; do
+    /sbin/chkconfig --add openstack-cinder-$svc
+done
 
 %preun
 if [ $1 -eq 0 ] ; then
-    for svc in volume api scheduler; do
+    for svc in volume api scheduler backup; do
         /sbin/service openstack-cinder-${svc} stop > /dev/null 2>&1
         /sbin/chkconfig --del openstack-cinder-${svc}
     done
@@ -273,7 +267,7 @@ fi
 %postun
 if [ $1 -ge 1 ] ; then
     # Package upgrade, not uninstall
-    for svc in volume api scheduler; do
+    for svc in volume api scheduler backup; do
         /sbin/service openstack-cinder-${svc} condrestart > /dev/null 2>&1 || :
     done
 fi
@@ -315,6 +309,35 @@ fi
 %endif
 
 %changelog
+* Tue Apr 15 2014 Pádraig Brady <pbrady@redhat.com> - 2013.2.3-1
+- Update to Havana stable release 3
+
+* Wed Feb 19 2014 Pádraig Brady <pbrady@redhat.com> - 2013.2.2-1
+- Update to Havana stable release 2
+
+* Tue Dec 17 2013 Eric Harney <eharney@redhat.com> - 2013.2.1-1
+- Update to Havana stable release 1
+
+* Mon Oct 28 2013 Eric Harney <eharney@redhat.com> - 2013.2-2
+- Fix GlusterFS volume driver clone operations
+
+* Thu Oct 17 2013 Eric Harney <eharney@redhat.com> - 2013.2-1
+- Update to 2013.2 (Havana)
+- Handle cinder-backup service registration/restart/removal
+
+* Wed Oct 16 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.13.rc3
+- Update to Havana RC3
+
+* Tue Oct 15 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.12.rc2
+- Update to Havana RC2
+
+* Tue Oct 08 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.11.rc1
+- Update to Havana RC1
+- Fix python-novaclient req epoch
+
+* Mon Sep 23 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.10.b3
+- Depend on python-novaclient 2.15
+
 * Wed Sep 18 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.9.b3
 - Add cinder-dist.conf
 - Tighten permissions on /var/log/cinder