[openstack-nova/f17] Updated from latest stable/essex

Pádraig Brady pbrady at fedoraproject.org
Wed Jun 27 13:53:55 UTC 2012


commit 29ed3a3369074b3a93ea1d56381cb1e962744c3e
Author: Pádraig Brady <P at draigBrady.com>
Date:   Wed Jun 27 14:45:12 2012 +0100

    Updated from latest stable/essex
    
    Including:
     - Call-libvirt_volume_driver-with-right-mountpoint
     - Stop-nova_ipam_lib-from-changing-the-timeout-setting

 ...bvirt_volume_driver-with-right-mountpoint.patch |   61 ++++++++++++++++++
 ...pam_lib-from-changing-the-timeout-setting.patch |   65 ++++++++++++++++++++
 ...tomic-manipulation-of-libvirt-disk-images.patch |    4 +-
 ...e-don-t-access-the-net-when-building-docs.patch |    2 +-
 ...0006-fix-useexisting-deprecation-warnings.patch |    2 +-
 ...-configurable-libvirt-injection-partition.patch |    4 +-
 ... 0008-repeat-fusermount-to-avoid-business.patch |    2 +-
 ...unt-guest-image-once-when-injecting-files.patch |    4 +-
 openstack-nova.spec                                |   23 +++++---
 9 files changed, 150 insertions(+), 17 deletions(-)
---
diff --git a/0002-Call-libvirt_volume_driver-with-right-mountpoint.patch b/0002-Call-libvirt_volume_driver-with-right-mountpoint.patch
new file mode 100644
index 0000000..8131420
--- /dev/null
+++ b/0002-Call-libvirt_volume_driver-with-right-mountpoint.patch
@@ -0,0 +1,61 @@
+From 33c2575ebf9c8022521d36f51b9b31cd41f7f74f Mon Sep 17 00:00:00 2001
+From: Vishvananda Ishaya <vishvananda at gmail.com>
+Date: Thu, 21 Jun 2012 13:25:57 -0700
+Subject: [PATCH] Call libvirt_volume_driver with right mountpoint
+
+ * fixes bug 1013782
+ * fixes tests for live migration
+ * removed test which doesn't apply
+
+(cherry picked from commit 96c86336c69b9d456e43234e3fe315bd3b101045)
+
+Change-Id: I8f95c6baa7aad878af19d5d8b8b34531a4a43885
+---
+ nova/tests/test_libvirt.py      |    3 ++-
+ nova/virt/libvirt/connection.py |    8 ++++----
+ 2 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/nova/tests/test_libvirt.py b/nova/tests/test_libvirt.py
+index af30051..ec8ae9a 100644
+--- a/nova/tests/test_libvirt.py
++++ b/nova/tests/test_libvirt.py
+@@ -1194,7 +1194,8 @@ class LibvirtConnTestCase(test.TestCase):
+         self.mox.StubOutWithMock(conn, "volume_driver_method")
+         for v in vol['block_device_mapping']:
+             conn.volume_driver_method('connect_volume',
+-                                     v['connection_info'], v['mount_device'])
++                                     v['connection_info'],
++                                     v['mount_device'].rpartition("/")[2])
+ 
+         # Starting test
+         self.mox.ReplayAll()
+diff --git a/nova/virt/libvirt/connection.py b/nova/virt/libvirt/connection.py
+index e0943ba..5ec029a 100644
+--- a/nova/virt/libvirt/connection.py
++++ b/nova/virt/libvirt/connection.py
+@@ -473,10 +473,10 @@ class LibvirtConnection(driver.ComputeDriver):
+             block_device_info)
+         for vol in block_device_mapping:
+             connection_info = vol['connection_info']
+-            mountpoint = vol['mount_device']
++            mount_device = vol['mount_device'].rpartition("/")[2]
+             self.volume_driver_method('disconnect_volume',
+                                       connection_info,
+-                                      mountpoint)
++                                      mount_device)
+         if cleanup:
+             self._cleanup(instance)
+ 
+@@ -2126,10 +2126,10 @@ class LibvirtConnection(driver.ComputeDriver):
+             block_device_info)
+         for vol in block_device_mapping:
+             connection_info = vol['connection_info']
+-            mountpoint = vol['mount_device']
++            mount_device = vol['mount_device'].rpartition("/")[2]
+             self.volume_driver_method('connect_volume',
+                                       connection_info,
+-                                      mountpoint)
++                                      mount_device)
+ 
+     def pre_block_migration(self, ctxt, instance_ref, disk_info_json):
+         """Preparation block migration.
diff --git a/0003-Stop-nova_ipam_lib-from-changing-the-timeout-setting.patch b/0003-Stop-nova_ipam_lib-from-changing-the-timeout-setting.patch
new file mode 100644
index 0000000..0c213ac
--- /dev/null
+++ b/0003-Stop-nova_ipam_lib-from-changing-the-timeout-setting.patch
@@ -0,0 +1,65 @@
+From 5b772f98fa139e7b4b32698004922add56ed22d0 Mon Sep 17 00:00:00 2001
+From: Vishvananda Ishaya <vishvananda at gmail.com>
+Date: Tue, 26 Jun 2012 20:37:02 +0000
+Subject: [PATCH] Stop nova_ipam_lib from changing the timeout setting
+
+ * Fixes incorrect logic for when timeout should be used. We
+   want to timeout along with dhcp, and release immediately
+   without dhcp
+ * Also makes ipam_lib release fixed_ips after floating ips, as
+   this is the way that the internal network managers do it.
+ * Fixes bug 1014769
+
+Change-Id: I687fac314264b8a89da128ed77c02d9b1ca140ff
+(cherry picked from commit 45e98d415ec661ba7772ed2513f2a24ebe68f1dd)
+---
+ nova/network/quantum/nova_ipam_lib.py |   19 ++++++++-----------
+ 1 files changed, 8 insertions(+), 11 deletions(-)
+
+diff --git a/nova/network/quantum/nova_ipam_lib.py b/nova/network/quantum/nova_ipam_lib.py
+index fff3243..40382fe 100644
+--- a/nova/network/quantum/nova_ipam_lib.py
++++ b/nova/network/quantum/nova_ipam_lib.py
+@@ -47,10 +47,6 @@ class QuantumNovaIPAMLib(object):
+         """
+         self.net_manager = net_manager
+ 
+-        # NOTE(s0mik) : If DHCP is not in use, we need to timeout IPs
+-        # periodically.  See comment in deallocate_ips_by_vif for more
+-        self.net_manager.timeout_fixed_ips = not self.net_manager.DHCP
+-
+     def create_subnet(self, context, label, tenant_id,
+                       quantum_net_id, priority, cidr=None,
+                       gateway=None, gateway_v6=None, cidr_v6=None,
+@@ -224,16 +220,12 @@ class QuantumNovaIPAMLib(object):
+         # be disassociated with the instance-id by a call to one of two
+         # methods inherited from FlatManager:
+         # - if DHCP is in use, a lease expiring in dnsmasq triggers
+-        #   a call to release_fixed_ip in the network manager.
+-        # - otherwise, _disassociate_stale_fixed_ips is called periodically
+-        #   to disassociate all fixed ips that are unallocated
+-        #   but still associated with an instance-id.
++        #   a call to release_fixed_ip in the network manager, or it will
++        #   be timed out periodically if the lease fails.
++        # - otherwise, we release the ip immediately
+ 
+         read_deleted_context = admin_context.elevated(read_deleted='yes')
+         for fixed_ip in fixed_ips:
+-            db.fixed_ip_update(admin_context, fixed_ip['address'],
+-                               {'allocated': False,
+-                                'virtual_interface_id': None})
+             fixed_id = fixed_ip['id']
+             floating_ips = self.net_manager.db.floating_ip_get_by_fixed_ip_id(
+                                 admin_context,
+@@ -252,6 +244,11 @@ class QuantumNovaIPAMLib(object):
+                         read_deleted_context,
+                         address,
+                         affect_auto_assigned=True)
++            db.fixed_ip_update(admin_context, fixed_ip['address'],
++                               {'allocated': False,
++                                'virtual_interface_id': None})
++            if not self.net_manager.DHCP:
++                db.fixed_ip_disassociate(admin_context, fixed_ip['address'])
+ 
+         if len(fixed_ips) == 0:
+             LOG.error(_('No fixed IPs to deallocate for vif %s') %
diff --git a/0001-ensure-atomic-manipulation-of-libvirt-disk-images.patch b/0004-ensure-atomic-manipulation-of-libvirt-disk-images.patch
similarity index 98%
rename from 0001-ensure-atomic-manipulation-of-libvirt-disk-images.patch
rename to 0004-ensure-atomic-manipulation-of-libvirt-disk-images.patch
index eafd320..9561852 100644
--- a/0001-ensure-atomic-manipulation-of-libvirt-disk-images.patch
+++ b/0004-ensure-atomic-manipulation-of-libvirt-disk-images.patch
@@ -1,4 +1,4 @@
-From b57f04571265b7889872e890bba9e0c38e55bb54 Mon Sep 17 00:00:00 2001
+From 972858eab37408304f447a443641b949e9ca5b42 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?P=C3=A1draig=20Brady?= <pbrady at redhat.com>
 Date: Fri, 16 Mar 2012 03:43:49 +0000
 Subject: [PATCH] ensure atomic manipulation of libvirt disk images
@@ -169,7 +169,7 @@ index 1e0ae0a..626f3ff 100644
  
      return metadata
 diff --git a/nova/virt/libvirt/connection.py b/nova/virt/libvirt/connection.py
-index e0943ba..b940a17 100644
+index 5ec029a..f909886 100644
 --- a/nova/virt/libvirt/connection.py
 +++ b/nova/virt/libvirt/connection.py
 @@ -1112,7 +1112,8 @@ class LibvirtConnection(driver.ComputeDriver):
diff --git a/0002-Ensure-we-don-t-access-the-net-when-building-docs.patch b/0005-Ensure-we-don-t-access-the-net-when-building-docs.patch
similarity index 94%
rename from 0002-Ensure-we-don-t-access-the-net-when-building-docs.patch
rename to 0005-Ensure-we-don-t-access-the-net-when-building-docs.patch
index 8df2f4a..d569112 100644
--- a/0002-Ensure-we-don-t-access-the-net-when-building-docs.patch
+++ b/0005-Ensure-we-don-t-access-the-net-when-building-docs.patch
@@ -1,4 +1,4 @@
-From 79bd3ff978f9b33ab0f77ae8cb3d03f1e2b5b994 Mon Sep 17 00:00:00 2001
+From 6161e1a9dc1b760ceb3abfc48e892fc5fd811e67 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/0003-fix-useexisting-deprecation-warnings.patch b/0006-fix-useexisting-deprecation-warnings.patch
similarity index 97%
rename from 0003-fix-useexisting-deprecation-warnings.patch
rename to 0006-fix-useexisting-deprecation-warnings.patch
index a344559..54b20b5 100644
--- a/0003-fix-useexisting-deprecation-warnings.patch
+++ b/0006-fix-useexisting-deprecation-warnings.patch
@@ -1,4 +1,4 @@
-From 851977b586901df8ca955e7b8f1ff78519db731c Mon Sep 17 00:00:00 2001
+From 36efbacfce3cde895e48612fbf92718e490ede9d Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?P=C3=A1draig=20Brady?= <pbrady at redhat.com>
 Date: Thu, 8 Mar 2012 16:32:30 +0000
 Subject: [PATCH] fix useexisting deprecation warnings
diff --git a/0004-support-a-configurable-libvirt-injection-partition.patch b/0007-support-a-configurable-libvirt-injection-partition.patch
similarity index 97%
rename from 0004-support-a-configurable-libvirt-injection-partition.patch
rename to 0007-support-a-configurable-libvirt-injection-partition.patch
index d5d0e09..4891b6f 100644
--- a/0004-support-a-configurable-libvirt-injection-partition.patch
+++ b/0007-support-a-configurable-libvirt-injection-partition.patch
@@ -1,4 +1,4 @@
-From fdcd601a1da74186a926bc046758ae3055fe4a1e Mon Sep 17 00:00:00 2001
+From 54f03b5c74a16f1f5ed1d67a2dc5d55fddac32f9 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?P=C3=A1draig=20Brady?= <pbrady at redhat.com>
 Date: Wed, 18 Apr 2012 23:27:31 +0100
 Subject: [PATCH] support a configurable libvirt injection partition
@@ -47,7 +47,7 @@ index 4fb5dda..11959b2 100644
              else:
                  self.mapped_device = map_path
 diff --git a/nova/virt/libvirt/connection.py b/nova/virt/libvirt/connection.py
-index b940a17..20d96b5 100644
+index f909886..ad084b2 100644
 --- a/nova/virt/libvirt/connection.py
 +++ b/nova/virt/libvirt/connection.py
 @@ -108,6 +108,11 @@ libvirt_opts = [
diff --git a/0005-repeat-fusermount-to-avoid-business.patch b/0008-repeat-fusermount-to-avoid-business.patch
similarity index 92%
rename from 0005-repeat-fusermount-to-avoid-business.patch
rename to 0008-repeat-fusermount-to-avoid-business.patch
index a27bbd2..81d06bc 100644
--- a/0005-repeat-fusermount-to-avoid-business.patch
+++ b/0008-repeat-fusermount-to-avoid-business.patch
@@ -1,4 +1,4 @@
-From 777602028986357192145d29962db7e0f62267df Mon Sep 17 00:00:00 2001
+From 8346d52f7f4e4bc7c93dc877ac5bc5aa63e999ee Mon Sep 17 00:00:00 2001
 From: Alessio Ababilov <aababilov at griddynamics.com>
 Date: Fri, 15 Jun 2012 18:33:26 +0300
 Subject: [PATCH] repeat fusermount to avoid business
diff --git a/0006-only-mount-guest-image-once-when-injecting-files.patch b/0009-only-mount-guest-image-once-when-injecting-files.patch
similarity index 98%
rename from 0006-only-mount-guest-image-once-when-injecting-files.patch
rename to 0009-only-mount-guest-image-once-when-injecting-files.patch
index 65efa59..67e0028 100644
--- a/0006-only-mount-guest-image-once-when-injecting-files.patch
+++ b/0009-only-mount-guest-image-once-when-injecting-files.patch
@@ -1,4 +1,4 @@
-From fa16491fc55358dc1db7177fa3350a9621265c1d Mon Sep 17 00:00:00 2001
+From def7d00ded863b0647ef18d611c2832b1336d06a Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?P=C3=A1draig=20Brady?= <pbrady at redhat.com>
 Date: Thu, 21 Jun 2012 15:28:05 +0100
 Subject: [PATCH] only mount guest image once when injecting files
@@ -114,7 +114,7 @@ index 6cb19f2..6756ac2 100644
  
      admin_password is a root password
 diff --git a/nova/virt/libvirt/connection.py b/nova/virt/libvirt/connection.py
-index 20d96b5..8235a84 100644
+index ad084b2..9f85419 100644
 --- a/nova/virt/libvirt/connection.py
 +++ b/nova/virt/libvirt/connection.py
 @@ -970,12 +970,6 @@ class LibvirtConnection(driver.ComputeDriver):
diff --git a/openstack-nova.spec b/openstack-nova.spec
index 0b6c9a1..cccfc5a 100644
--- a/openstack-nova.spec
+++ b/openstack-nova.spec
@@ -2,7 +2,7 @@
 
 Name:             openstack-nova
 Version:          2012.1.1
-Release:          1%{?dist}
+Release:          2%{?dist}
 Summary:          OpenStack Compute (nova)
 
 Group:            Applications/System
@@ -32,12 +32,14 @@ Source24:         nova-sudoers
 #
 # patches_base=2012.1.1
 #
-Patch0001: 0001-ensure-atomic-manipulation-of-libvirt-disk-images.patch
-Patch0002: 0002-Ensure-we-don-t-access-the-net-when-building-docs.patch
-Patch0003: 0003-fix-useexisting-deprecation-warnings.patch
-Patch0004: 0004-support-a-configurable-libvirt-injection-partition.patch
-Patch0005: 0005-repeat-fusermount-to-avoid-business.patch
-Patch0006: 0006-only-mount-guest-image-once-when-injecting-files.patch
+Patch0002: 0002-Call-libvirt_volume_driver-with-right-mountpoint.patch
+Patch0003: 0003-Stop-nova_ipam_lib-from-changing-the-timeout-setting.patch
+Patch0004: 0004-ensure-atomic-manipulation-of-libvirt-disk-images.patch
+Patch0005: 0005-Ensure-we-don-t-access-the-net-when-building-docs.patch
+Patch0006: 0006-fix-useexisting-deprecation-warnings.patch
+Patch0007: 0007-support-a-configurable-libvirt-injection-partition.patch
+Patch0008: 0008-repeat-fusermount-to-avoid-business.patch
+Patch0009: 0009-only-mount-guest-image-once-when-injecting-files.patch
 
 BuildArch:        noarch
 BuildRequires:    intltool
@@ -155,12 +157,14 @@ This package contains documentation files for nova.
 %prep
 %setup -q -n nova-%{version}
 
-%patch0001 -p1
 %patch0002 -p1
 %patch0003 -p1
 %patch0004 -p1
 %patch0005 -p1
 %patch0006 -p1
+%patch0007 -p1
+%patch0008 -p1
+%patch0009 -p1
 
 find . \( -name .gitignore -o -name .placeholder \) -delete
 
@@ -358,6 +362,9 @@ fi
 %endif
 
 %changelog
+* Wed Jun 27 2012 Pádraig Brady <P at draigBrady.com> - 2012.1.1-2
+- Update to latest essex stable branch
+
 * Fri Jun 22 2012 Pádraig Brady <P at draigBrady.com> - 2012.1.1-1
 - Update to essex stable release 2012.1.1
 - Improve performance and stability of file injection


More information about the scm-commits mailing list