Merge lp:~roadmr/checkbox/plainbox-packaging-dbus-service into lp:checkbox

Proposed by Daniel Manrique
Status: Superseded
Proposed branch: lp:~roadmr/checkbox/plainbox-packaging-dbus-service
Merge into: lp:checkbox
Diff against target: 370 lines (+278/-0)
18 files modified
debian/changelog (+79/-0)
debian/compat (+1/-0)
debian/control (+104/-0)
debian/copyright (+22/-0)
debian/plainbox-autostart-desktop.install (+1/-0)
debian/plainbox-autostart-server.install (+1/-0)
debian/plainbox-ci-mailer.install (+1/-0)
debian/plainbox-insecure-policy.install (+1/-0)
debian/plainbox-secure-policy.install (+1/-0)
debian/plainbox-service.install (+2/-0)
debian/plainbox.install (+1/-0)
debian/python3-plainbox.install (+2/-0)
debian/python3-plainbox.links (+1/-0)
debian/python3-pyremove (+2/-0)
debian/rules (+41/-0)
debian/source/format (+1/-0)
debian/tests/control (+2/-0)
debian/tests/unit-tests (+15/-0)
To merge this branch: bzr merge lp:~roadmr/checkbox/plainbox-packaging-dbus-service
Reviewer Review Type Date Requested Status
Checkbox Developers Pending
Review via email: mp+175075@code.launchpad.net

This proposal has been superseded by a proposal from 2013-07-16.

Commit message

This adds a plainbox-service package containing only the service file and declaring the dependencies on python3-dbus and python3-gi (as well as plainbox itself).

Description of the change

This adds a plainbox-service package containing only the service file and declaring the dependencies on python3-dbus and python3-gi (as well as plainbox itself).

To post a comment you must log in.

Unmerged revisions

14. By Daniel Manrique

Added plainbox-service package to auto-start on demand for dbus requests

13. By Daniel Manrique

"[r=zkrynicki][bug=][author=roadmr] Recent plainbox builds are failing, ostensibly because during testing, plainbox/impl/service.py wants to include dbus, which is not declared as a dependency and thus not installed.

While it's strictly a Build-Depends, I also added it as a Depends since this will eventually be one of the main ways to use plainbox.

Let me know if it would be preferrable to remove the runtime dependency on dbus (not the build one), and instead add that dependency in i.e. GUI clients that communicate through dbus."

12. By Zygmunt Krynicki

"[r=zkrynicki][bug=][author=zkrynicki] automatic merge by tarmac"

11. By Sylvain Pineau

"[r=sylvain-pineau][bug=][author=sylvain-pineau] Adds the checkbox-trusted-launcher in /usr/bin and provides the virtual policy packages"

10. By Daniel Manrique

"[r=zkrynicki][bug=][author=roadmr] Adds a plainbox-ci-mailer package to install the upstart job from plainbox source."

9. By Brendan Donegan

"[r=brendan-donegan][bug=][author=brendan-donegan] automatic merge by tarmac"

8. By Daniel Manrique

dumb, dumb typo in depends string

7. By Daniel Manrique

Added python3-requests as a build-depends

6. By Daniel Manrique

"[r=zkrynicki][bug=][author=roadmr] automatic merge by tarmac"

5. By Zygmunt Krynicki

Add missing dependency on python3-lxml for python3-plainbox and
build-depends

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'debian'
2=== added file 'debian/changelog'
3--- debian/changelog 1970-01-01 00:00:00 +0000
4+++ debian/changelog 2013-07-16 16:58:24 +0000
5@@ -0,0 +1,79 @@
6+plainbox (0.3-1) raring; urgency=low
7+
8+ * Added plainbox-service package to ensure dbus dependencies and
9+ install service auto-start file.
10+
11+ -- Daniel Manrique <roadmr@ubuntu.com> Tue, 16 Jul 2013 11:27:13 -0400
12+
13+plainbox (0.2-7) raring; urgency=low
14+
15+ [ Zygmunt Krynicki ]
16+ * Add missing dependency on python3-lxml for python3-plainbox and
17+ build-depends
18+
19+ [ Brendan Donegan ]
20+ * Add binary package plainbox-autostart which installs files necessary to
21+ have plainbox run automatically when the system starts up.
22+
23+ [ Daniel Manrique ]
24+ * Add binary package: plainbox-ci-mailer which installs an upstart job
25+ which posts the log files to an e-mailer CGI when the plainbox
26+ jobs report they are finished.
27+
28+ [ Sylvain Pineau]
29+ * Adds the checkbox-trusted-launcher in /usr/bin and provides the virtual
30+ policy packages.
31+
32+ -- Sylvain Pineau <sylvain.pineau@canonical.com> Fri, 10 May 2013 14:54:24 +0200
33+
34+plainbox (0.2-6) raring; urgency=low
35+
36+ * Add missing dependency on python3-pkg-resources to python3-plainbox
37+
38+ -- Zygmunt Krynicki <zygmunt.krynicki@canonical.com> Mon, 11 Mar 2013 11:05:57 +0100
39+
40+plainbox (0.2-5) raring; urgency=low
41+
42+ * Re-did packaging from scratch.
43+ * Added python3-plainbox-doc package with sphinx docs
44+ * Added python3-plainbox package
45+
46+ -- Zygmunt Krynicki <zygmunt.krynicki@canonical.com> Fri, 08 Mar 2013 22:05:16 +0100
47+
48+plainbox (0.2-4) quantal; urgency=low
49+
50+ * Rename debian/test to debian/tests, makes autopkgtests work again
51+
52+ -- Zygmunt Krynicki <zygmunt.krynicki@canonical.com> Wed, 05 Dec 2012 12:23:53 +0100
53+
54+plainbox (0.2-3) quantal; urgency=low
55+
56+ * Add dependency on python3-pkg-resources to plainbox
57+ * Use python3 as plainbox interpreter (replacing python3.2)
58+ * Don't build plainbox for multiple python3 versions
59+ * Use autopkgtests to run unit tests
60+
61+ -- Zygmunt Krynicki <zygmunt.krynicki@canonical.com> Wed, 05 Dec 2012 12:05:55 +0100
62+
63+plainbox (0.2-2) quantal; urgency=low
64+
65+ * Split the package into plainbox and python3-plainbox
66+ * Move the plainbox package to the utils section
67+ * Update debian/copyright to refer to common-licenses
68+
69+ -- Zygmunt Krynicki <zygmunt.krynicki@canonical.com> Tue, 04 Dec 2012 14:26:49 +0100
70+
71+plainbox (0.2-1) quantal; urgency=low
72+
73+ * Remove useless whitespace
74+ * Imported Upstream version 0.2
75+ * Ship README.md as docs
76+
77+ -- Zygmunt Krynicki <zygmunt.krynicki@canonical.com> Tue, 04 Dec 2012 10:20:05 +0100
78+
79+plainbox (0.1-1) quantal; urgency=low
80+
81+ * Initial release
82+
83+ -- Zygmunt Krynicki <zygmunt.krynicki@canonical.com> Wed, 14 Nov 2012 19:36:19 +0000
84+
85
86=== added file 'debian/compat'
87--- debian/compat 1970-01-01 00:00:00 +0000
88+++ debian/compat 2013-07-16 16:58:24 +0000
89@@ -0,0 +1,1 @@
90+9
91
92=== added file 'debian/control'
93--- debian/control 1970-01-01 00:00:00 +0000
94+++ debian/control 2013-07-16 16:58:24 +0000
95@@ -0,0 +1,104 @@
96+Source: plainbox
97+Section: utils
98+Priority: extra
99+Maintainer: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
100+Build-Depends: checkbox,
101+ debhelper (>= 8.0.0),
102+ python3-all,
103+ python3-dbus,
104+ python3-gi,
105+ python3-lxml,
106+ python3-mock,
107+ python3-pkg-resources,
108+ python3-requests ( >= 1.0),
109+ python3-setuptools,
110+ python3-sphinx
111+Standards-Version: 3.9.3
112+X-Python3-Version: >= 3.2
113+XS-Testsuite: autopkgtest
114+Homepage: http://pypi.python.org/pypi/plainbox
115+
116+Package: python3-plainbox-doc
117+Architecture: all
118+Section: doc
119+Depends: ${misc:Depends}, ${sphinxdoc:Depends}
120+Description: Simple replacement for CheckBox
121+ PlainBox is a hardware testing tool useful for certifying laptops, desktops
122+ and servers with Ubuntu. It is a replacement for the current certification
123+ tool, CheckBox.
124+ .
125+ PlainBox complements CheckBox. It uses all the hardware test definitions,
126+ scripts and libraries from CheckBox. PlainBox is currently in alpha stages,
127+ having mostly but not entirely complete core and a developer-centric command
128+ line interface.
129+ .
130+ This package contains the documentation for the plainbox python3 library
131+
132+Package: python3-plainbox
133+Architecture: all
134+Section: python
135+Depends: plainbox-policy,
136+ python3-lxml,
137+ python3-pkg-resources,
138+ python3-requests (>= 1.0),
139+ ${misc:Depends},
140+ ${python3:Depends}
141+Suggests: python3-plainbox-doc
142+Description: Simple replacement for CheckBox
143+ PlainBox is a hardware testing tool useful for certifying laptops, desktops
144+ and servers with Ubuntu. It is a replacement for the current certification
145+ tool, CheckBox.
146+ .
147+ PlainBox complements CheckBox. It uses all the hardware test definitions,
148+ scripts and libraries from CheckBox. PlainBox is currently in alpha stages,
149+ having mostly but not entirely complete core and a developer-centric command
150+ line interface.
151+ .
152+ This package contains the plainbox python3 library
153+
154+Package: plainbox
155+Architecture: all
156+Depends: checkbox, python3-plainbox, ${misc:Depends}, ${python3:Depends}
157+Description: Simple replacement for CheckBox
158+ PlainBox is a hardware testing tool useful for certifying laptops, desktops
159+ and servers with Ubuntu. It is a replacement for the current certification
160+ tool, CheckBox.
161+ .
162+ PlainBox complements CheckBox. It uses all the hardware test definitions,
163+ scripts and libraries from CheckBox. PlainBox is currently in alpha stages,
164+ having mostly but not entirely complete core and a developer-centric command
165+ line interface.
166+ .
167+ This package contains the plainbox executable
168+
169+Package: plainbox-service
170+Architecture: all
171+Depends: plainbox, python3-gi, python3-dbus
172+Description: File(s) needed for auto-starting PlainBox D-Bus service on demand.
173+
174+Package: plainbox-autostart-desktop
175+Architecture: all
176+Depends: plainbox, plainbox-insecure-policy
177+Description: File(s) needed for starting PlainBox automatically after login on a desktop install.
178+
179+Package: plainbox-autostart-server
180+Architecture: all
181+Depends: plainbox, plainbox-insecure-policy
182+Description: File(s) needed for starting PlainBox automatically after boot on a server install.
183+
184+Package: plainbox-secure-policy
185+Architecture: all
186+Provides: plainbox-policy
187+Description: PolicyKit action file needed by PlainBox for prompting the password once.
188+
189+Package: plainbox-insecure-policy
190+Architecture: all
191+Provides: plainbox-policy
192+Conflicts: plainbox-policy
193+Replaces: plainbox-policy
194+Description: PolicyKit action file needed by PlainBox for running in headless mode without authentication.
195+
196+Package: plainbox-ci-mailer
197+Architecture: all
198+Depends: curl, plainbox-autostart-server | plainbox-autostart-desktop
199+Description: Helper that e-mails PlainBox output from autostart packages when run is finished.
200
201=== added file 'debian/copyright'
202--- debian/copyright 1970-01-01 00:00:00 +0000
203+++ debian/copyright 2013-07-16 16:58:24 +0000
204@@ -0,0 +1,22 @@
205+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
206+Upstream-Name: plainbox
207+Source: https://launchpad.net/checkbox
208+
209+Files: *
210+Copyright: Copyright 2012-2013 Canonical Ltd.
211+License: GPL-3
212+ This package is free software: you can redistribute it and/or modify
213+ it under the terms of the GNU General Public License as published by
214+ the Free Software Foundation, either version 3 of the License, or
215+ (at your option) any later version.
216+ .
217+ This program is distributed in the hope that it will be useful,
218+ but WITHOUT ANY WARRANTY; without even the implied warranty of
219+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
220+ GNU General Public License for more details.
221+ .
222+ You should have received a copy of the GNU General Public License
223+ along with this program. If not, see <http://www.gnu.org/licenses/>.
224+ .
225+ On Debian systems, the complete text of the GNU General
226+ Public License can be found in `/usr/share/common-licenses/GPL'.
227
228=== added file 'debian/plainbox-autostart-desktop.install'
229--- debian/plainbox-autostart-desktop.install 1970-01-01 00:00:00 +0000
230+++ debian/plainbox-autostart-desktop.install 2013-07-16 16:58:24 +0000
231@@ -0,0 +1,1 @@
232+checkbox/plainbox/plainbox/data/plainbox.desktop etc/xdg/autostart
233
234=== added file 'debian/plainbox-autostart-server.install'
235--- debian/plainbox-autostart-server.install 1970-01-01 00:00:00 +0000
236+++ debian/plainbox-autostart-server.install 2013-07-16 16:58:24 +0000
237@@ -0,0 +1,1 @@
238+checkbox/plainbox/plainbox/data/plainbox.conf etc/init
239
240=== added file 'debian/plainbox-ci-mailer.install'
241--- debian/plainbox-ci-mailer.install 1970-01-01 00:00:00 +0000
242+++ debian/plainbox-ci-mailer.install 2013-07-16 16:58:24 +0000
243@@ -0,0 +1,1 @@
244+checkbox/plainbox/plainbox/data/plainbox-ci-mailer.conf etc/init
245
246=== added file 'debian/plainbox-insecure-policy.install'
247--- debian/plainbox-insecure-policy.install 1970-01-01 00:00:00 +0000
248+++ debian/plainbox-insecure-policy.install 2013-07-16 16:58:24 +0000
249@@ -0,0 +1,1 @@
250+checkbox/plainbox/contrib/policykit_yes/org.freedesktop.policykit.pkexec.policy usr/share/polkit-1/actions/
251
252=== added file 'debian/plainbox-secure-policy.install'
253--- debian/plainbox-secure-policy.install 1970-01-01 00:00:00 +0000
254+++ debian/plainbox-secure-policy.install 2013-07-16 16:58:24 +0000
255@@ -0,0 +1,1 @@
256+checkbox/plainbox/contrib/policykit_auth_admin_keep/org.freedesktop.policykit.pkexec.policy usr/share/polkit-1/actions/
257
258=== added file 'debian/plainbox-service.install'
259--- debian/plainbox-service.install 1970-01-01 00:00:00 +0000
260+++ debian/plainbox-service.install 2013-07-16 16:58:24 +0000
261@@ -0,0 +1,2 @@
262+checkbox/plainbox/contrib/com.canonical.certificaation.PlainBox1.service usr/share/dbus-1/services/
263+
264
265=== added file 'debian/plainbox.install'
266--- debian/plainbox.install 1970-01-01 00:00:00 +0000
267+++ debian/plainbox.install 2013-07-16 16:58:24 +0000
268@@ -0,0 +1,1 @@
269+usr/bin/plainbox
270
271=== added file 'debian/python3-plainbox.install'
272--- debian/python3-plainbox.install 1970-01-01 00:00:00 +0000
273+++ debian/python3-plainbox.install 2013-07-16 16:58:24 +0000
274@@ -0,0 +1,2 @@
275+usr/lib/python3
276+usr/bin/checkbox-trusted-launcher
277
278=== added file 'debian/python3-plainbox.links'
279--- debian/python3-plainbox.links 1970-01-01 00:00:00 +0000
280+++ debian/python3-plainbox.links 2013-07-16 16:58:24 +0000
281@@ -0,0 +1,1 @@
282+usr/share/doc/python3-plainbox/html/_sources usr/share/doc/python3-plainbox/rst
283
284=== added file 'debian/python3-pyremove'
285--- debian/python3-pyremove 1970-01-01 00:00:00 +0000
286+++ debian/python3-pyremove 2013-07-16 16:58:24 +0000
287@@ -0,0 +1,2 @@
288+README.md
289+plainbox*.egg-info/SOURCES.txt
290
291=== added file 'debian/rules'
292--- debian/rules 1970-01-01 00:00:00 +0000
293+++ debian/rules 2013-07-16 16:58:24 +0000
294@@ -0,0 +1,41 @@
295+#!/usr/bin/make -f
296+
297+#DH_VERBOSE=1
298+
299+PYTHON3=$(shell py3versions -vr)
300+
301+# Prevent setuptools/distribute from accessing the internet.
302+export http_proxy=http://127.0.9.1:9
303+
304+%:
305+ dh $@ --with python3,sphinxdoc
306+
307+ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
308+test-python%:
309+ cd $(CURDIR)/checkbox/plainbox && python$* setup.py test -vv
310+
311+override_dh_auto_test: $(PYTHON2:%=test-python%) $(PYTHON3:%=test-python%)
312+endif
313+
314+build-python%:
315+ cd $(CURDIR)/checkbox/plainbox && python$* setup.py build
316+
317+override_dh_auto_build: $(PYTHON3:%=build-python%)
318+ dh_auto_build
319+
320+install-python%:
321+ cd $(CURDIR)/checkbox/plainbox && python$* setup.py install --root=$(CURDIR)/debian/tmp --install-layout=deb
322+
323+override_dh_auto_install: $(PYTHON3:%=install-python%)
324+ dh_auto_install
325+
326+# This is tricky, dh_installdirs installs stuff to the first package in
327+# debian/control, ensure that's the -doc package.
328+override_dh_installdocs:
329+ cd $(CURDIR)/checkbox/plainbox && python3 setup.py build_sphinx
330+ dh_installdocs $(CURDIR)/checkbox/plainbox/build/sphinx/html/
331+
332+override_dh_auto_clean:
333+ dh_auto_clean
334+ rm -rf $(CURDIR)/checkbox/plainbox/build
335+ rm -rf $(CURDIR)/checkbox/plainbox/*.egg-info
336
337=== added directory 'debian/source'
338=== added file 'debian/source/format'
339--- debian/source/format 1970-01-01 00:00:00 +0000
340+++ debian/source/format 2013-07-16 16:58:24 +0000
341@@ -0,0 +1,1 @@
342+3.0 (quilt)
343
344=== added directory 'debian/tests'
345=== added file 'debian/tests/control'
346--- debian/tests/control 1970-01-01 00:00:00 +0000
347+++ debian/tests/control 2013-07-16 16:58:24 +0000
348@@ -0,0 +1,2 @@
349+Tests: unit-tests
350+Depends: @
351
352=== added file 'debian/tests/unit-tests'
353--- debian/tests/unit-tests 1970-01-01 00:00:00 +0000
354+++ debian/tests/unit-tests 2013-07-16 16:58:24 +0000
355@@ -0,0 +1,15 @@
356+#!/bin/sh
357+# autopkgtest check: Run the unit tests against the installed copy of plainbox
358+# (C) 2012 Canonical Ltd.
359+# Author: Zygmunt Krynicki <zygmunt.krynicki@canonical.com>
360+#
361+# Because each test program is executed inside unpacked source package and
362+# python search path is likely to pick up the plainbox module directly from the
363+# source we should relocate somewhere else. The intent of autopkgtest is to
364+# verify the _installed_ software.
365+
366+set -e
367+WORKDIR=$(mktemp -d)
368+trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM
369+cd $WORKDIR
370+python3 -m unittest --quiet plainbox.tests.test_suite 2>/dev/null && echo "unit-test: OK"

Subscribers

People subscribed via source and target branches