components/openstack/horizon/patches/06-launchpad-1255136.patch
author Strony <strony.zhang@oracle.com>
Mon, 23 Jun 2014 07:55:33 -0700
changeset 1963 fe904db9c438
permissions -rw-r--r--
18646500 Unable to attach a volume to a KZ instance using Horizon 19022958 Unable to specify solaris device names when attaching volumes to instances
Although the following patch has been addressed in Icehouse 2014.1, it
still has not yet been released for Havana.  It has been modified to
apply cleanly into our current Havana implementation

From 1b13a42b9edbd34e8bb4339a962cd2c30bda7d81 Mon Sep 17 00:00:00 2001
From: Zhenguo Niu <[email protected]>
Date: Wed, 4 Dec 2013 09:45:56 +0800
Subject: [PATCH] Set can_set_mount_point default to False

Patch https://review.openstack.org/#/c/59229/ only changed the default
value in the local_settings.py example file. If the setting isn't defined,
it still defaults to True
Change-Id: Ia3525786e5eb9ec83b8057c1cb6158ab153adc59
Closes-Bug: #1255136

--- horizon-2013.2.3/doc/source/topics/settings.rst.orig	2014-06-20 05:00:21.858630069 -0700
+++ horizon-2013.2.3/doc/source/topics/settings.rst	2014-06-20 06:27:39.151996410 -0700
@@ -204,14 +204,15 @@
 ``OPENSTACK_HYPERVISOR_FEATURES``
 ---------------------------------
 
-Default: ``{'can_set_mount_point': True, 'can_encrypt_volumes': False}``
+Default: ``{'can_set_mount_point': False, 'can_encrypt_volumes': False}``
 
 A dictionary containing settings which can be used to identify the
 capabilities of the hypervisor for Nova.
 
-Some hypervisors have the ability to set the mount point for volumes attached
-to instances (KVM does not). Setting ``can_set_mount_point`` to ``False`` will
-remove the option to set the mount point from the UI.
+The Xen Hypervisor has the ability to set the mount point for volumes attached
+to instances (other Hypervisors currently do not). Setting
+``can_set_mount_point`` to ``True`` will add the option to set the mount point
+from the UI.
 
 In the Havana release, there will be a feature for encrypted volumes
 which will be controlled by the ``can_encrypt_volumes``. Setting it to ``True``
--- horizon-2013.2.3/openstack_dashboard/dashboards/project/volumes/tests.py.orig	2014-06-20 04:56:16.805828523 -0700
+++ horizon-2013.2.3/openstack_dashboard/dashboards/project/volumes/tests.py	2014-06-20 06:32:26.947240676 -0700
@@ -555,6 +555,8 @@
 
     @test.create_stubs({cinder: ('volume_get',), api.nova: ('server_list',)})
     def test_edit_attachments(self):
+        PREV = settings.OPENSTACK_HYPERVISOR_FEATURES['can_set_mount_point']
+        settings.OPENSTACK_HYPERVISOR_FEATURES['can_set_mount_point'] = True
         volume = self.volumes.first()
         servers = [s for s in self.servers.list()
                    if s.tenant_id == self.request.user.tenant_id]
@@ -573,11 +575,10 @@
         self.assertEqual(res.status_code, 200)
         self.assertTrue(isinstance(form.fields['device'].widget,
                                    widgets.TextInput))
+        settings.OPENSTACK_HYPERVISOR_FEATURES['can_set_mount_point'] = PREV
 
     @test.create_stubs({cinder: ('volume_get',), api.nova: ('server_list',)})
     def test_edit_attachments_cannot_set_mount_point(self):
-        PREV = settings.OPENSTACK_HYPERVISOR_FEATURES['can_set_mount_point']
-        settings.OPENSTACK_HYPERVISOR_FEATURES['can_set_mount_point'] = False
 
         volume = self.volumes.first()
         servers = [s for s in self.servers.list()
@@ -593,7 +594,6 @@
         form = res.context['form']
         self.assertTrue(isinstance(form.fields['device'].widget,
                                    widgets.HiddenInput))
-        settings.OPENSTACK_HYPERVISOR_FEATURES['can_set_mount_point'] = PREV
 
     @test.create_stubs({cinder: ('volume_get',),
                         api.nova: ('server_get', 'server_list',),
--- horizon-2013.2.3/openstack_dashboard/dashboards/project/volumes/forms.py.orig	2014-06-20 04:54:21.534957784 -0700
+++ horizon-2013.2.3/openstack_dashboard/dashboards/project/volumes/forms.py	2014-06-20 06:33:14.199293693 -0700
@@ -230,7 +230,7 @@
                                       "OPENSTACK_HYPERVISOR_FEATURES",
                                       {})
         can_set_mount_point = hypervisor_features.get("can_set_mount_point",
-                                                      True)
+                                                      False)
         if not can_set_mount_point:
             self.fields['device'].widget = forms.widgets.HiddenInput()
             self.fields['device'].required = False
--- horizon-2013.2.3/openstack_dashboard/local/local_settings.py.example.orig	2014-06-20 06:49:38.061148762 -0700
+++ horizon-2013.2.3/openstack_dashboard/local/local_settings.py.example	2014-06-20 03:03:06.949623969 -0700
@@ -149,8 +149,12 @@
     'can_edit_role': True
 }
 
+# The Xen Hypervisor has the ability to set the mount point for volumes
+# attached to instances (other Hypervisors currently do not). Setting
+# can_set_mount_point to True will add the option to set the mount point
+# from the UI.
 OPENSTACK_HYPERVISOR_FEATURES = {
-    'can_set_mount_point': True,
+    'can_set_mount_point': False,
 }
 
 # The OPENSTACK_NEUTRON_NETWORK settings can be used to enable optional
--- horizon-2013.2.3/openstack_dashboard/test/settings.py.orig	2014-06-20 04:59:02.205734858 -0700
+++ horizon-2013.2.3/openstack_dashboard/test/settings.py	2014-06-20 06:28:57.101070812 -0700
@@ -107,7 +107,7 @@
 }
 
 OPENSTACK_HYPERVISOR_FEATURES = {
-    'can_set_mount_point': True,
+    'can_set_mount_point': False,
 }
 
 OPENSTACK_IMAGE_BACKEND = {