Merge lp:~corey.bryant/horizon/2014.1.5 into lp:~ubuntu-server-dev/horizon/icehouse

Proposed by Corey Bryant
Status: Merged
Merged at revision: 203
Proposed branch: lp:~corey.bryant/horizon/2014.1.5
Merge into: lp:~ubuntu-server-dev/horizon/icehouse
Diff against target: 229 lines (+16/-186)
4 files modified
debian/changelog (+13/-0)
debian/patches/fix-host-listing-live-migration.patch (+0/-182)
debian/patches/fix-requirements.patch (+3/-3)
debian/patches/series (+0/-1)
To merge this branch: bzr merge lp:~corey.bryant/horizon/2014.1.5
Reviewer Review Type Date Requested Status
Ubuntu Server Developers Pending
Review via email: mp+262601@code.launchpad.net
To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/changelog'
2--- debian/changelog 2015-03-30 13:37:24 +0000
3+++ debian/changelog 2015-06-22 15:40:58 +0000
4@@ -1,3 +1,16 @@
5+horizon (1:2014.1.5-0ubuntu1) UNRELEASED; urgency=medium
6+
7+ * Resynchronize with stable/icehouse (4ff165c) (LP: #1467533):
8+ - [78b6f5e] Fix exponentially growing AJAX updates for table rows
9+ - [86a6628] Handle RequestURITooLong error in large instance table
10+ - [2a6fe4a] Fix host listing in live migration
11+ - [9109812] Exclude security group related quotas when the extension disabled
12+ - [4ff165c] horizon ignores region for identity service
13+ * d/p/fix-host-listing-live-migration.patch: Dropped; Fixed upstream.
14+ * d/p/fix-requirements.patch: Rebased
15+
16+ -- Corey Bryant <corey.bryant@canonical.com> Mon, 22 Jun 2015 10:14:26 -0400
17+
18 horizon (1:2014.1.4-0ubuntu2) trusty; urgency=medium
19
20 * d/control: Set minimum python-six dependency to 1.5.2 (LP: #1403114).
21
22=== removed file 'debian/patches/fix-host-listing-live-migration.patch'
23--- debian/patches/fix-host-listing-live-migration.patch 2015-03-16 19:13:08 +0000
24+++ debian/patches/fix-host-listing-live-migration.patch 1970-01-01 00:00:00 +0000
25@@ -1,182 +0,0 @@
26-Description: Fix host listing in live migration
27-Author: Dirk Mueller<dirk@dmllr.de>
28-Origin: Cherry picked from https://review.openstack.org/#/c/149621/
29----
30- .../dashboards/admin/instances/forms.py | 7 ++--
31- .../dashboards/admin/instances/tests.py | 40 +++++++++++-----------
32- .../dashboards/admin/instances/views.py | 4 +--
33- openstack_dashboard/test/test_data/nova_data.py | 10 ++++++
34- 4 files changed, 36 insertions(+), 25 deletions(-)
35-
36-diff --git a/openstack_dashboard/dashboards/admin/instances/forms.py b/openstack_dashboard/dashboards/admin/instances/forms.py
37-index b13dce6..86da601 100644
38---- a/openstack_dashboard/dashboards/admin/instances/forms.py
39-+++ b/openstack_dashboard/dashboards/admin/instances/forms.py
40-@@ -50,10 +50,11 @@ class LiveMigrateForm(forms.SelfHandlingForm):
41- def populate_host_choices(self, request, initial):
42- hosts = initial.get('hosts')
43- current_host = initial.get('current_host')
44-- host_list = [(host.hypervisor_hostname,
45-- host.hypervisor_hostname)
46-+ host_list = [(host.host_name,
47-+ host.host_name)
48- for host in hosts
49-- if host.service['host'] != current_host]
50-+ if host.service.startswith('compute') and
51-+ host.host_name != current_host]
52- if host_list:
53- host_list.insert(0, ("", _("Select a new host")))
54- else:
55-diff --git a/openstack_dashboard/dashboards/admin/instances/tests.py b/openstack_dashboard/dashboards/admin/instances/tests.py
56-index abb98af..64276f8 100644
57---- a/openstack_dashboard/dashboards/admin/instances/tests.py
58-+++ b/openstack_dashboard/dashboards/admin/instances/tests.py
59-@@ -221,14 +221,14 @@ class InstanceViewTest(test.BaseAdminViewTests):
60- self.assertContains(res, "instances__revert")
61- self.assertNotContains(res, "instances__migrate")
62-
63-- @test.create_stubs({api.nova: ('hypervisor_list',
64-+ @test.create_stubs({api.nova: ('host_list',
65- 'server_get',)})
66- def test_instance_live_migrate_get(self):
67- server = self.servers.first()
68- api.nova.server_get(IsA(http.HttpRequest), server.id) \
69- .AndReturn(server)
70-- api.nova.hypervisor_list(IsA(http.HttpRequest)) \
71-- .AndReturn(self.hypervisors.list())
72-+ api.nova.host_list(IsA(http.HttpRequest)) \
73-+ .AndReturn(self.hosts.list())
74-
75- self.mox.ReplayAll()
76-
77-@@ -252,13 +252,13 @@ class InstanceViewTest(test.BaseAdminViewTests):
78-
79- self.assertRedirectsNoFollow(res, INDEX_URL)
80-
81-- @test.create_stubs({api.nova: ('hypervisor_list',
82-+ @test.create_stubs({api.nova: ('host_list',
83- 'server_get',)})
84- def test_instance_live_migrate_list_hypervisor_get_exception(self):
85- server = self.servers.first()
86- api.nova.server_get(IsA(http.HttpRequest), server.id) \
87- .AndReturn(server)
88-- api.nova.hypervisor_list(IsA(http.HttpRequest)) \
89-+ api.nova.host_list(IsA(http.HttpRequest)) \
90- .AndRaise(self.exceptions.nova)
91-
92- self.mox.ReplayAll()
93-@@ -268,14 +268,14 @@ class InstanceViewTest(test.BaseAdminViewTests):
94-
95- self.assertRedirectsNoFollow(res, INDEX_URL)
96-
97-- @test.create_stubs({api.nova: ('hypervisor_list',
98-+ @test.create_stubs({api.nova: ('host_list',
99- 'server_get',)})
100- def test_instance_live_migrate_list_hypervisor_without_current(self):
101- server = self.servers.first()
102- api.nova.server_get(IsA(http.HttpRequest), server.id) \
103- .AndReturn(server)
104-- api.nova.hypervisor_list(IsA(http.HttpRequest)) \
105-- .AndReturn(self.hypervisors.list())
106-+ api.nova.host_list(IsA(http.HttpRequest)) \
107-+ .AndReturn(self.hosts.list())
108-
109- self.mox.ReplayAll()
110-
111-@@ -283,24 +283,25 @@ class InstanceViewTest(test.BaseAdminViewTests):
112- args=[server.id])
113- res = self.client.get(url)
114- self.assertNotContains(
115-- res, "<option value=\"devstack003\">devstack003</option>")
116-+ res, "<option value=\"instance-host\">devstack004</option>")
117- self.assertContains(
118- res, "<option value=\"devstack001\">devstack001</option>")
119-- self.assertContains(
120-+ self.assertNotContains(
121- res, "<option value=\"devstack002\">devstack002</option>")
122-+ self.assertContains(
123-+ res, "<option value=\"devstack003\">devstack003</option>")
124-
125-- @test.create_stubs({api.nova: ('hypervisor_list',
126-+ @test.create_stubs({api.nova: ('host_list',
127- 'server_get',
128- 'server_live_migrate',)})
129- def test_instance_live_migrate_post(self):
130- server = self.servers.first()
131-- hypervisor = self.hypervisors.first()
132-- host = hypervisor.hypervisor_hostname
133-+ host = self.hosts.first().host_name
134-
135- api.nova.server_get(IsA(http.HttpRequest), server.id) \
136- .AndReturn(server)
137-- api.nova.hypervisor_list(IsA(http.HttpRequest)) \
138-- .AndReturn(self.hypervisors.list())
139-+ api.nova.host_list(IsA(http.HttpRequest)) \
140-+ .AndReturn(self.hosts.list())
141- api.nova.server_live_migrate(IsA(http.HttpRequest), server.id, host,
142- block_migration=False,
143- disk_over_commit=False) \
144-@@ -314,18 +315,17 @@ class InstanceViewTest(test.BaseAdminViewTests):
145- self.assertNoFormErrors(res)
146- self.assertRedirectsNoFollow(res, INDEX_URL)
147-
148-- @test.create_stubs({api.nova: ('hypervisor_list',
149-+ @test.create_stubs({api.nova: ('host_list',
150- 'server_get',
151- 'server_live_migrate',)})
152- def test_instance_live_migrate_post_api_exception(self):
153- server = self.servers.first()
154-- hypervisor = self.hypervisors.first()
155-- host = hypervisor.hypervisor_hostname
156-+ host = self.hosts.first().host_name
157-
158- api.nova.server_get(IsA(http.HttpRequest), server.id) \
159- .AndReturn(server)
160-- api.nova.hypervisor_list(IsA(http.HttpRequest)) \
161-- .AndReturn(self.hypervisors.list())
162-+ api.nova.host_list(IsA(http.HttpRequest)) \
163-+ .AndReturn(self.hosts.list())
164- api.nova.server_live_migrate(IsA(http.HttpRequest), server.id, host,
165- block_migration=False,
166- disk_over_commit=False) \
167-diff --git a/openstack_dashboard/dashboards/admin/instances/views.py b/openstack_dashboard/dashboards/admin/instances/views.py
168-index 54f41ce..4d2358d 100644
169---- a/openstack_dashboard/dashboards/admin/instances/views.py
170-+++ b/openstack_dashboard/dashboards/admin/instances/views.py
171-@@ -143,10 +143,10 @@ class LiveMigrateView(forms.ModalFormView):
172- @memoized.memoized_method
173- def get_hosts(self, *args, **kwargs):
174- try:
175-- return api.nova.hypervisor_list(self.request)
176-+ return api.nova.host_list(self.request)
177- except Exception:
178- redirect = reverse("horizon:admin:instances:index")
179-- msg = _('Unable to retrieve hypervisor information.')
180-+ msg = _('Unable to retrieve host information.')
181- exceptions.handle(self.request, msg, redirect=redirect)
182-
183- @memoized.memoized_method
184-diff --git a/openstack_dashboard/test/test_data/nova_data.py b/openstack_dashboard/test/test_data/nova_data.py
185-index 56cd698..26206e1 100644
186---- a/openstack_dashboard/test/test_data/nova_data.py
187-+++ b/openstack_dashboard/test/test_data/nova_data.py
188-@@ -730,6 +730,16 @@ def data(TEST):
189- "zone": "testing"
190- }
191- )
192-+
193-+ host4 = hosts.Host(hosts.HostManager(None),
194-+ {
195-+ "host_name": "devstack004",
196-+ "service": "compute",
197-+ "zone": "testing",
198-+ }
199-+ )
200-+
201- TEST.hosts.add(host1)
202- TEST.hosts.add(host2)
203- TEST.hosts.add(host3)
204-+ TEST.hosts.add(host4)
205---
206-2.1.0
207-
208
209=== modified file 'debian/patches/fix-requirements.patch'
210--- debian/patches/fix-requirements.patch 2015-03-16 19:13:08 +0000
211+++ debian/patches/fix-requirements.patch 2015-06-22 15:40:58 +0000
212@@ -6,6 +6,6 @@
213 @@ -22,4 +22,4 @@
214 python-swiftclient>=1.6,<=2.3.1
215 python-troveclient>=1.0.3,<=1.0.8
216- pytz>=2010h
217--six>=1.6.0
218-+six>=1.5.2
219+ pytz>=2010h,<=2015.2
220+-six>=1.6.0,<=1.9.0
221++six>=1.5.2,<=1.9.0
222
223=== modified file 'debian/patches/series'
224--- debian/patches/series 2015-03-16 19:13:08 +0000
225+++ debian/patches/series 2015-06-22 15:40:58 +0000
226@@ -1,4 +1,3 @@
227-fix-host-listing-live-migration.patch
228 fix-dashboard-django-wsgi.patch
229 fix-dashboard-manage.patch
230

Subscribers

People subscribed via source and target branches