Merge lp:~james-page/glance/grizzly-qa-1 into lp:~openstack-ubuntu-testing/glance/grizzly

Proposed by James Page
Status: Merged
Merge reported by: Chuck Short
Merged at revision: not available
Proposed branch: lp:~james-page/glance/grizzly-qa-1
Merge into: lp:~openstack-ubuntu-testing/glance/grizzly
Diff against target: 382 lines (+141/-74)
12 files modified
debian/changelog (+15/-0)
debian/control (+50/-57)
debian/copyright (+0/-1)
debian/glance-api.glance-api.upstart (+4/-2)
debian/glance-api.install (+7/-7)
debian/glance-common.install (+1/-1)
debian/glance-registry.glance-registry.upstart (+4/-2)
debian/glance-registry.install (+2/-2)
debian/patches/series (+1/-0)
debian/patches/webob_1.1_compat.patch (+54/-0)
debian/python-glance.install (+0/-1)
debian/rules (+3/-1)
To merge this branch: bzr merge lp:~james-page/glance/grizzly-qa-1
Reviewer Review Type Date Requested Status
Chuck Short (community) Approve
Review via email: mp+136178@code.launchpad.net

Description of the change

1) Re-enable build failure on test suite failure

New patch to fixup compatibility with webob - see patch for details

2) start-stop-daemon in upstart configurations

3) Misc housekeeping.

To post a comment you must log in.
Revision history for this message
Chuck Short (zulcss) wrote :

I think the webob patch should go upstream but this looks fine to me for now.

review: Approve

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 2012-11-23 16:10:01 +0000
3+++ debian/changelog 2012-11-26 14:01:45 +0000
4@@ -1,3 +1,18 @@
5+glance (2013.1~g1-0ubuntu2) UNRELEASED; urgency=low
6+
7+ * Re-enable gating of package build based on unit test success:
8+ - d/p/webob_1.1_compat.patch: Misc fixes for changes in behaviour
9+ between webob 1.0.8 and 1.1 which cause test failures.
10+ - d/rules: Enable build failure on unit testing failure, scope
11+ test execution to glance/tests.
12+ * Switched upstart configurations to use start-stop-daemon instead of su.
13+ * General package tidy:
14+ - d/control: Drop glance-client package.
15+ - d/control: Drop BD on python-dev-all.
16+ - Wrapped and sorted.
17+
18+ -- James Page <james.page@ubuntu.com> Mon, 26 Nov 2012 09:02:51 +0000
19+
20 glance (2013.1~g1-0ubuntu1) raring; urgency=low
21
22 [ Adam Gandelman ]
23
24=== modified file 'debian/control'
25--- debian/control 2012-10-12 10:09:43 +0000
26+++ debian/control 2012-11-26 14:01:45 +0000
27@@ -2,38 +2,38 @@
28 Section: net
29 Priority: extra
30 Maintainer: Ubuntu OpenStack <openstack-packaging@lists.ubuntu.com>
31-Build-Depends: debhelper (>= 7.0.50),
32+Build-Depends:
33+ debhelper (>= 7.0.50),
34 python-all (>= 2.6),
35- python-all-dev (>= 2.6.6-3~),
36 sqlite3
37 Build-Depends-Indep:
38- python-setuptools,
39- python-sphinx,
40- python-sqlalchemy-ext | python-sqlalchemy (<< 0.6.3-2),
41+ curl,
42+ pep8,
43+ python-argparse,
44+ python-boto,
45+ python-crypto,
46+ python-dateutil,
47+ python-eventlet,
48+ python-glanceclient,
49+ python-httplib2 (>= 0.6.0),
50+ python-iso8601,
51+ python-jsonschema,
52+ python-keystone,
53+ python-kombu,
54+ python-migrate,
55+ python-mox,
56 python-nose,
57- python-mox,
58- python-webob,
59- python-routes,
60- python-eventlet,
61- python-pastedeploy,
62 python-paste,
63- python-migrate,
64- python-argparse,
65- python-httplib2 (>= 0.6.0),
66+ python-pastedeploy,
67+ python-requests,
68+ python-routes,
69+ python-setuptools,
70+ python-sphinx,
71+ python-sqlalchemy-ext | python-sqlalchemy (<< 0.6.3-2),
72 python-swift,
73- python-boto,
74- python-crypto,
75- python-kombu,
76- python-dateutil,
77- python-requests,
78- python-keystone,
79- python-iso8601,
80- python-jsonschema,
81 python-swiftclient,
82- python-glanceclient,
83- python-xattr,
84- curl,
85- pep8
86+ python-webob,
87+ python-xattr
88 Standards-Version: 3.9.3
89 XS-Python-Version: >= 2.6
90 Homepage: http://launchpad.net/glance
91@@ -43,25 +43,27 @@
92 Package: python-glance
93 Architecture: all
94 Section: python
95-Depends: ${python:Depends}, ${misc:Depends},
96- python-webob,
97- python-pastedeploy,
98+Depends:
99 python-argparse,
100- python-kombu,
101+ python-crypto,
102+ python-dateutil,
103+ python-eventlet,
104 python-httplib2,
105 python-iso8601,
106- python-dateutil,
107- python-requests,
108+ python-jsonschema,
109 python-keystone,
110- python-swiftclient,
111- python-crypto,
112- python-jsonschema,
113+ python-kombu,
114 python-migrate,
115- python-sqlalchemy-ext | python-sqlalchemy (<< 0.6.3-2),
116+ python-pastedeploy,
117+ python-requests,
118 python-routes,
119- python-eventlet,
120 python-setuptools,
121- python-xattr
122+ python-sqlalchemy-ext | python-sqlalchemy (<< 0.6.3-2),
123+ python-swiftclient,
124+ python-webob,
125+ python-xattr,
126+ ${misc:Depends},
127+ ${python:Depends}
128 Provides: ${python:Provides}
129 XB-Python-Version: ${python:Versions}
130 Description: OpenStack Image Registry and Delivery Service - Python library
131@@ -75,9 +77,11 @@
132 Package: glance
133 Architecture: all
134 Section: python
135-Depends: ${python:Depends}, ${misc:Depends},
136+Depends:
137 glance-api (= ${source:Version}),
138 glance-registry (= ${source:Version}),
139+ ${misc:Depends},
140+ ${python:Depends}
141 Suggests: python-ceph
142 Description: OpenStack Image Registry and Delivery Service - Daemons
143 The Glance project provides an image registration and discovery service
144@@ -85,7 +89,7 @@
145 in conjunction by Nova to deliver images from object stores, such as
146 OpenStack's Swift service, to Nova's compute nodes.
147 .
148- This package contains the daemons.
149+ This package is a metapackage for all glance daemons.
150
151 Package: python-glance-doc
152 Architecture: all
153@@ -102,9 +106,11 @@
154 Package: glance-common
155 Architecture: all
156 Section: python
157-Depends: ${python:Depends}, ${misc:Depends},
158+Depends:
159+ adduser,
160 python-glance (= ${source:Version}),
161- adduser
162+ ${misc:Depends},
163+ ${python:Depends}
164 Breaks: glance ( <= 2011.3-0ubuntu4.1 )
165 Replaces: glance ( <= 2011.3-0ubuntu4.1 )
166 Description: OpenStack Image Registry and Delivery Service - Common
167@@ -119,7 +125,7 @@
168 Architecture: all
169 Section: python
170 Replaces: glance (<< 2012.1~e1~20110919.1021-0ubuntu2)
171-Depends: ${python:Depends}, ${misc:Depends}, glance-common (= ${source:Version})
172+Depends: glance-common (= ${source:Version}), ${misc:Depends}, ${python:Depends}
173 Recommends: python-glanceclient
174 Description: OpenStack Image Registry and Delivery Service - API
175 The Glance project provides an image registration, discovery and
176@@ -127,13 +133,13 @@
177 they may also be used by Nova to deliver images from object stores, such as
178 OpenStack's Swift service, to Nova's compute nodes.
179 .
180- This package contains the glance api server.
181+ This package contains the glance API server.
182
183 Package: glance-registry
184 Architecture: all
185 Section: python
186 Replaces: glance (<< 2012.1~e1~20110919.1021-0ubuntu2)
187-Depends: ${python:Depends}, ${misc:Depends}, glance-common (= ${source:Version})
188+Depends: glance-common (= ${source:Version}), ${misc:Depends}, ${python:Depends}
189 Recommends: python-glanceclient
190 Description: OpenStack Image Registry and Delivery Service - Registry
191 The Glance project provides an image registration, discovery and
192@@ -142,16 +148,3 @@
193 OpenStack's Swift service, to Nova's compute nodes.
194 .
195 This package contains the glance registry server.
196-
197-Package: glance-client
198-Architecture: all
199-Section: python
200-Replaces: glance (<< 2012.1~e1~20110919.1021-0ubuntu2)
201-Depends: ${python:Depends}, ${misc:Depends}, glance-common (= ${source:Version})
202-Description: OpenStack Image Registry and Delivery Service - client
203- The Glance project provides an image registration, discovery and
204- delivery service. These services may be used as stand-along services, and
205- they may also be used by Nova to deliver images from object stores, such as
206- OpenStack's Swift service, to Nova's compute nodes.
207- .
208- This package contains the glance client.
209
210=== modified file 'debian/copyright'
211--- debian/copyright 2011-01-17 10:54:50 +0000
212+++ debian/copyright 2012-11-26 14:01:45 +0000
213@@ -21,4 +21,3 @@
214 .
215 On Debian-based systems the full text of the Apache version 2.0 license
216 can be found in `/usr/share/common-licenses/Apache-2.0'.
217-
218
219=== modified file 'debian/glance-api.glance-api.upstart'
220--- debian/glance-api.glance-api.upstart 2012-08-21 23:47:03 +0000
221+++ debian/glance-api.glance-api.upstart 2012-11-26 14:01:45 +0000
222@@ -2,8 +2,10 @@
223 author "Soren Hansen <soren@linux2go.dk>"
224
225 start on runlevel [2345]
226-stop on runlevel [016]
227+stop on runlevel [!2345]
228
229 respawn
230
231-exec su -s /bin/sh -c "exec glance-api" glance
232+exec start-stop-daemon --start --chuid glance \
233+ --chdir /var/lib/glance --name glance-api \
234+ --exec /usr/bin/glance-api
235
236=== modified file 'debian/glance-api.install'
237--- debian/glance-api.install 2012-06-20 22:30:47 +0000
238+++ debian/glance-api.install 2012-11-26 14:01:45 +0000
239@@ -1,11 +1,11 @@
240+etc/glance-api-paste.ini etc/glance
241+etc/glance-api.conf etc/glance
242+etc/glance-cache.conf etc/glance
243+etc/glance-scrubber.conf etc/glance
244+etc/policy.json etc/glance
245 usr/bin/glance-api
246+usr/bin/glance-cache-cleaner
247 usr/bin/glance-cache-manage
248-usr/bin/glance-scrubber
249 usr/bin/glance-cache-prefetcher
250-usr/bin/glance-cache-cleaner
251 usr/bin/glance-cache-pruner
252-etc/glance-api.conf etc/glance
253-etc/glance-api-paste.ini etc/glance
254-etc/glance-cache.conf etc/glance
255-etc/glance-scrubber.conf etc/glance
256-etc/policy.json etc/glance
257+usr/bin/glance-scrubber
258
259=== modified file 'debian/glance-common.install'
260--- debian/glance-common.install 2012-03-07 15:18:28 +0000
261+++ debian/glance-common.install 2012-11-26 14:01:45 +0000
262@@ -1,2 +1,2 @@
263+usr/bin/glance-control
264 usr/bin/glance-manage
265-usr/bin/glance-control
266
267=== modified file 'debian/glance-registry.glance-registry.upstart'
268--- debian/glance-registry.glance-registry.upstart 2012-08-21 23:47:03 +0000
269+++ debian/glance-registry.glance-registry.upstart 2012-11-26 14:01:45 +0000
270@@ -2,8 +2,10 @@
271 author "Soren Hansen <soren@linux2go.dk>"
272
273 start on runlevel [2345]
274-stop on runlevel [016]
275+stop on runlevel [!2345]
276
277 respawn
278
279-exec su -s /bin/sh -c "exec glance-registry" glance
280+exec start-stop-daemon --start --chuid glance \
281+ --chdir /var/lib/glance --name glance-registry \
282+ --exec /usr/bin/glance-registry
283
284=== modified file 'debian/glance-registry.install'
285--- debian/glance-registry.install 2012-11-12 15:06:58 +0000
286+++ debian/glance-registry.install 2012-11-26 14:01:45 +0000
287@@ -1,4 +1,4 @@
288+etc/glance-registry-paste.ini etc/glance
289+etc/glance-registry.conf etc/glance
290 usr/bin/glance-registry
291 usr/bin/glance-replicator
292-etc/glance-registry.conf etc/glance
293-etc/glance-registry-paste.ini etc/glance
294
295=== modified file 'debian/patches/series'
296--- debian/patches/series 2012-11-14 14:31:42 +0000
297+++ debian/patches/series 2012-11-26 14:01:45 +0000
298@@ -1,2 +1,3 @@
299 sql_conn.patch
300 disable-network-for-docs.patch
301+webob_1.1_compat.patch
302
303=== added file 'debian/patches/webob_1.1_compat.patch'
304--- debian/patches/webob_1.1_compat.patch 1970-01-01 00:00:00 +0000
305+++ debian/patches/webob_1.1_compat.patch 2012-11-26 14:01:45 +0000
306@@ -0,0 +1,54 @@
307+Description: webob 1.1 compatibility fixes.
308+ Some behaviour changes between 1.0.8 and 1.1 cause test
309+ failures; specifically:
310+ .
311+ - when app_iter is used for chunked transfers the
312+ Content-MD5 header is dropped automatically; this
313+ might be a bug in webob but setting the MD5 after
314+ providing the iterator fixes the issue for the time
315+ being.
316+ - LimitedLengthFile is now declared in webob itself and
317+ no longer exposes the StringIO it wraps directly.
318+ .
319+ Upstream openstack still baseline on 1.0.8 so Ubuntu will
320+ need to hold this patch until they upgrade.
321+Author: James Page <james.page@ubuntu.com>
322+Forwarded: no
323+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/python-webob/+bug/1083155
324+
325+--- a/glance/tests/unit/v2/test_image_data_resource.py
326++++ b/glance/tests/unit/v2/test_image_data_resource.py
327+@@ -135,7 +135,7 @@ class TestImageDataDeserializer(test_uti
328+ request.headers['Content-Length'] = 3
329+ output = self.deserializer.upload(request)
330+ data = output.pop('data')
331+- self.assertEqual(data.getvalue(), 'YYY')
332++ self.assertEqual(data.read(), 'YYY')
333+ expected = {'size': 3}
334+ self.assertEqual(expected, output)
335+
336+@@ -160,7 +160,7 @@ class TestImageDataDeserializer(test_uti
337+ request.headers['Content-Length'] = 3
338+ output = self.deserializer.upload(request)
339+ data = output.pop('data')
340+- self.assertEqual(data.getvalue(), 'YYY')
341++ self.assertEqual(data.read(), 'YYY')
342+ expected = {'size': 3}
343+ self.assertEqual(expected, output)
344+
345+--- a/glance/api/v2/image_data.py
346++++ b/glance/api/v2/image_data.py
347+@@ -135,10 +135,11 @@ class ResponseSerializer(wsgi.JSONRespon
348+ checksum = result['meta']['checksum']
349+ response.headers['Content-Length'] = size
350+ response.headers['Content-Type'] = 'application/octet-stream'
351+- if checksum:
352+- response.headers['Content-MD5'] = checksum
353+ response.app_iter = common.size_checked_iter(
354+ response, result['meta'], size, result['data'], self.notifier)
355++ if checksum:
356++ response.headers['Content-MD5'] = checksum
357++
358+
359+ def upload(self, response, result):
360+ response.status_int = 201
361
362=== modified file 'debian/python-glance.install'
363--- debian/python-glance.install 2011-01-17 11:35:10 +0000
364+++ debian/python-glance.install 2012-11-26 14:01:45 +0000
365@@ -1,2 +1,1 @@
366 usr/lib/python*/dist-packages/*
367-
368
369=== modified file 'debian/rules'
370--- debian/rules 2012-11-14 13:52:46 +0000
371+++ debian/rules 2012-11-26 14:01:45 +0000
372@@ -14,7 +14,9 @@
373
374 ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS)))
375 override_dh_auto_test:
376- bash run_tests.sh -N || true
377+ # Scope tests to glance/tests otherwise we get a weird
378+ # nose test failure about glance/openstack/common
379+ bash run_tests.sh -N glance/tests
380 endif
381
382 override_dh_auto_build:

Subscribers

People subscribed via source and target branches