[MIR] juju-quickstart, python-jujuclient, urwid, websocket-client

Bug #1273865 reported by Gary Poster on 2014-01-28
14
This bug affects 1 person
Affects Status Importance Assigned to Milestone
juju-quickstart (Ubuntu)
High
Unassigned
Utopic
Undecided
Unassigned
python-jujuclient (Ubuntu)
High
Unassigned
Utopic
Undecided
Unassigned
python-websocket-client (Ubuntu)
High
Unassigned
Utopic
Undecided
Unassigned
urwid (Ubuntu)
High
Unassigned
Utopic
Undecided
Unassigned
websocket-client (Ubuntu)
High
Unassigned
Utopic
Undecided
Unassigned

Bug Description

[juju-quickstart]

Availability: in universe, arch: all.

Rationale: key component for the Juju ecosystem.

Security: no security history. No CVEs found. No suid or sgid
executables. No executables in /sbin or /usr/sbin. No daemons. No
privileged ports (although the Juju GUI does open a privileged port,
which this package deploys). One might consider Juju to be
security-sensitive, as it controls production deployments, and this
package bootstraps Juju. This package uses sudo, although this use is
scheduled to be removed. See bug 1282630.

Quality assurance:

Upstream ships a thorough test suite which includes 100% SLOC coverage.
By design, this tool makes it possible to use juju with as minimal
configuration as possible and with no documentation reading, by
deploying the GUI for the user and presenting its interface.

No debconf questions. No long-term outstanding bugs.

No relevant packaging bugs. There are a number of active bugs open
upstream; these are being actively worked on by upstream. This package
does not deal with exotic hardware. The upstream test suite is run as
part of the package build, and a failing test suite fails the package
build. A debian/watch file exists and is functional.

UI standards:

This is an end-user console application and is not internationalized
(not translatable). This is tracked in bug 1292026.

The package does not ship a desktop file. As a console application
designed for developer use, a desktop file has minimal relevance for
developers.

Dependencies:

urwid, python-jujuclient and websocket-client are dependencies in
universe. MIR reports follow in this bug.

Standards compliance: standard and minimal dh sequencer based packaging.
FHS compliant and the packaging is up to current Debian policy.

Maintenance:

Actively maintained upstream, by the Juju GUI team. ~ubuntu-server
commits to maintaining this package in Ubuntu and is subscribed to
package bugs.

[urwid]

Availability: in universe and built on all architecture.

Rationale: dependency of juju-quickstart.

Security: no security history. No CVEs found. No suid or sgid
executables. No executables in /sbin or /usr/sbin. No daemons. No
privileged port use is apparent. urwid is a UI library, so may be used
as a UI in security sensitive software, although this isn't the case
with juju-quickstart.

Quality assurance:

As a library, this package is functional on installation. No debconf
questions. No major long-term outstanding bugs. Upstream is active. No
use of exotic hardware.

Test-related packaging bugs in Debian are all fixed in Debian svn. The
only other bug in Debian is believed fixed already. Upstream has more
bugs, but none of them appear to be major issues for general urwid use.

No use of exotic hardware. Test suite is run as part of the package
build, and fails the build if tests fail. debian/watch file is out of
date, but fixed in current Debian svn.

UI standards: N/A

Dependencies: all in main.

Standards compliance: minimal cdbs+debhelper based packaging. Ideally
this would use the dh sequencer now, and I get the impression that DPMT
would be happy to switch it. But urwid is a relatively slow moving
project, and the rules file is simple and minimal enough that it doesn't
seem worth switching just for the sake of it. If there is a problem that
requires a change, then it could be switched to dh at that time easily
enough. FHS compliant and the packaging is up to current Debian policy.

urwid is a long-lived relatively stable package, with minimal
maintenance requirements. Upstream is active though, and all bugs in
Debian BTS are fixed in Debian svn. ~ubuntu-server commits to
maintaining this package in Ubuntu and is subscribed to package bugs.

[python-jujuclient]

Availability: in universe, arch: all.

Rationale: dependency of juju-quickstart.

Security: no security history. No CVEs found. No suid or sgid
executables. No executables in /sbin or /usr/sbin. No daemons. No
privileged ports. python-jujuclient is used by juju-quickstart to manage
deployments; the deployments themselves are security-sensitive.

Quality assurance:

As a library, this package is functional on installation. No debconf
questions. No long-term outstanding bugs. Upstream is active. No use of
exotic hardware.

No relevant upstream test suite; tracked in bug 1293467.

debian/watch file is present and working.

UI standards: N/A

Dependencies: websocket-client is in universe (also see bug 1292502
regarding the package naming of this dependency). MIR report follows.

Standards compliance: standard and minimal dh sequencer based packaging.
FHS compliant and the packaging is up to current Debian policy.

Maintenance: actively maintained upstream, by Kapil Thangavelu.
~ubuntu-server commits to maintaining this package in Ubuntu and is
subscribed to package bugs. The upstream code says: "Seriously Alpha.
Works now, but API *will* change". Upstream responds: "yeah.. i should
take that out, it was commentary from the first release against the api,
but in truth it has been pretty stable to date".

[websocket-client]

Availability: in universe, arch: all.

Rationale: dependency of python-jujuclient.

Security: no security history. No CVEs found. No suid or sgid
executables. No executables in /sbin or /usr/sbin. No daemons. This
library is a client for the WebSocket protocol, and as such will
generally handle untrusted input, although this isn't the case with
juju-quickstart.

Quality assurance:

As a library, this package is functional on installation. No debconf
questions. No major long-term outstanding bugs. Upstream is active. No
use of exotic hardware. Test suite is run as part of the package build,
and fails the build if tests fail. debian/watch file is present and
working.

There was an issue with a conflict between Debian and Ubuntu packaging
and tracked in bug 1292502, but this is now resolved. The upstream test
suite had to be imported using a distribution patch in order to run it
as part of the package build (bug 1292511); this was reported to
upstream, so hopefully will be fixed upstream soon so that the
distribution patch can be removed.

UI standards: N/A

Dependencies: all in main.

Standards compliance: standard and minimal dh sequencer based packaging.
FHS compliant and the packaging is up to current Debian policy.

Maintenance: upstream is active. ~ubuntu-server commits to maintaining
this package in Ubuntu and is subscribed to package bugs.

tags: added: needs-packaging
Brian Murray (brian-murray) wrote :

*** This is an automated message ***

This bug is tagged needs-packaging which identifies it as a request for a new package in Ubuntu. As a part of the managing needs-packaging bug reports specification, https://wiki.ubuntu.com/QATeam/Specs/NeedsPackagingBugs, all needs-packaging bug reports have Wishlist importance. Subsequently, I'm setting this bug's status to Wishlist.

Changed in ubuntu:
importance: Undecided → Wishlist
James Page (james-page) on 2014-02-14
summary: - [needs-packaging] juju-quickstart
+ [MIR] juju-quickstart
affects: ubuntu → juju-quickstart (Ubuntu)
Changed in juju-quickstart (Ubuntu):
milestone: none → ubuntu-14.04-beta-1
description: updated
Changed in python-jujuclient (Ubuntu):
status: New → Incomplete
Changed in urwid (Ubuntu):
status: New → Incomplete

*** This is an automated message ***

This bug is tagged needs-packaging which identifies it as a request for a new package in Ubuntu. As a part of the managing needs-packaging bug reports specification, https://wiki.ubuntu.com/QATeam/Specs/NeedsPackagingBugs, all needs-packaging bug reports have Wishlist importance. Subsequently, I'm setting this bug's status to Wishlist.

summary: - [MIR] juju-quickstart
+ [needs-packaging] [MIR] juju-quickstart
Changed in urwid (Ubuntu):
importance: Undecided → Wishlist

*** This is an automated message ***

This bug is tagged needs-packaging which identifies it as a request for a new package in Ubuntu. As a part of the managing needs-packaging bug reports specification, https://wiki.ubuntu.com/QATeam/Specs/NeedsPackagingBugs, all needs-packaging bug reports have Wishlist importance. Subsequently, I'm setting this bug's status to Wishlist.

Changed in python-jujuclient (Ubuntu):
importance: Undecided → Wishlist
Robie Basak (racb) wrote :

It's packaged now. Let's get rid of the tag to shut up the bot.

tags: removed: needs-packaging
summary: - [needs-packaging] [MIR] juju-quickstart
+ [MIR] juju-quickstart

Re-prioritizing based on discussion with Mark Ramm.

Changed in juju-quickstart (Ubuntu):
importance: Wishlist → High
Changed in python-jujuclient (Ubuntu):
importance: Wishlist → High
Changed in urwid (Ubuntu):
importance: Wishlist → High
Robie Basak (racb) wrote :

python-jujuclient depends on python-websocket-client, which is also in universe.

Changed in python-websocket-client (Ubuntu):
status: New → Incomplete
importance: Undecided → High
Robie Basak (racb) on 2014-03-13
Changed in juju-quickstart (Ubuntu):
status: New → In Progress
assignee: nobody → Robie Basak (racb)
Robie Basak (racb) wrote :

Debdiff attached to run test suite during build. The patch needed is cherry-picked from upstream. The tests failed without this. The next upstream release should include this, and we should be able to drop the patch then.

I'm still working on this MIR; I'll upload when I have everything ready together.

Robie Basak (racb) wrote :

I've created bug 1292026 to track the UI translatability issue.

tags: added: patch
Robie Basak (racb) wrote :

python-websocket-client is a duplicate of python-websocket. We need to switch the dependency, and the latter should be removed.

Robie Basak (racb) wrote :

python-websocket-client -> websocket-client due to bug 1292502

Changed in python-websocket-client (Ubuntu Trusty):
status: Incomplete → Invalid
Changed in websocket-client (Ubuntu Trusty):
importance: Undecided → High
status: New → Incomplete
Robie Basak (racb) wrote :

Current websocket-client debdiff attached.

Robie Basak (racb) wrote :

bug 1292511 is on build time tests for websocket-client.

Robie Basak (racb) wrote :

bug 1293467 is on build time tests for python-jujuclient.

Robie Basak (racb) wrote :
Robie Basak (racb) wrote :

Uploaded all relevant fixes to python-jujuclient, websocket-client and juju-quickstart packages. Now ready for MIR approval team review.

description: updated
Changed in juju-quickstart (Ubuntu Trusty):
status: In Progress → New
assignee: Robie Basak (racb) → nobody
Changed in python-jujuclient (Ubuntu Trusty):
status: Incomplete → New
Changed in urwid (Ubuntu Trusty):
status: Incomplete → New
Changed in websocket-client (Ubuntu Trusty):
status: Incomplete → New
Robie Basak (racb) on 2014-03-18
summary: - [MIR] juju-quickstart
+ [MIR] juju-quickstart, python-jujuclient, urwid, websocket-client
Robie Basak (racb) on 2014-03-18
description: updated
Michael Terry (mterry) wrote :

juju-quickstart:
- Like the tests and packaging and bug subscriber
- I see there's a bug about removing sudo support, which would be nice to see land.
- Can you explain what all the PPA adding and pulling in packages from universe is about? Why not depend on juju-core directly, or is this installation done on other machines?

Changed in juju-quickstart (Ubuntu Trusty):
status: New → Incomplete
Robie Basak (racb) wrote :

@Michael

> - I see there's a bug about removing sudo support, which would be nice to see land.

Agreed. This is ready now but has been awaiting feature freeze exception in bug 1282630. Could you perhaps grant the MIR conditional on this going in if you feel it is required?

> - Can you explain what all the PPA adding and pulling in packages from universe is about? Why not depend on juju-core directly, or is this installation done on other machines?

Francesco, Gary or Rick would probably be best to answer this; I'll pass the question to them.

Richard Harding (rharding) wrote :

@Michael

> - Can you explain what all the PPA adding and pulling in packages from universe is about? Why not depend on juju-core directly, or is this installation done on other machines?

Quickstart is meant to provide a nice single point to get developers and users started with Juju as fast and effortlessly as possible. It's meant to be a useful tool for users that will be expecting to work on Juju and the latest versions so that they're developing against current and upcoming work. It's not intended to be a production tool for managing your critical production deployments.

This is something that we came at from our typical user point of view, and didn't properly consider the implications for the repositories. We've started work to support a --distro-only flag to quickstart that will allow it to function without adding and fetching Juju from the PPA. This should allow users that wish to stick with the version in distro to do so, but allow most users to quickly get a development environment on the current version going with a single command.

Let me know if you'd prefer to approach this differently. Our goal is to help ease the onramp to Juju for users and, and eventually we hope to get quickstart on the cd so that, from a fresh install, you'd be able to get Juju running with a local LXC environment right away. The goal would not be to get Juju, mongodb, and lxc all built into the cd or on main. It's a starting point and not a complete wrapper.

Robie Basak (racb) on 2014-03-27
Changed in juju-quickstart (Ubuntu Trusty):
status: Incomplete → New
Francesco Banconi (frankban) wrote :

We just released quickstart 1.3 implementing the --distro-only flag.

James Page (james-page) wrote :

In all likelyhood juju-core won't make it into main this cycle; which creates a relationship between this package (potentially in main) and juju-core (probably in universe).

I see the inclusion of juju-quickstart tied to the inclusion of juju-core in main. I'm not sure what additional value juju-quickstart gets on its own in main. One of the originak goals was to have juju-core recommend juju-quickstart - that can still happen in universe.

James Page (james-page) wrote :

Also I really think that the default option should be --distro-only - at least for the package we carry in distro.

Robie Basak (racb) wrote :

Putting this MIR on hold pending resolution of the juju-core MIR in bug 1267393.

Changed in python-jujuclient (Ubuntu Trusty):
status: New → Incomplete
Changed in urwid (Ubuntu Trusty):
status: New → Incomplete
Changed in websocket-client (Ubuntu Trusty):
status: New → Incomplete
Changed in juju-quickstart (Ubuntu Trusty):
status: New → Incomplete
James Page (james-page) on 2014-04-09
no longer affects: juju-quickstart (Ubuntu Trusty)
no longer affects: python-jujuclient (Ubuntu Trusty)
no longer affects: python-websocket-client (Ubuntu Trusty)
no longer affects: urwid (Ubuntu Trusty)
no longer affects: websocket-client (Ubuntu Trusty)
Rolf Leggewie (r0lf) wrote :

utopic has seen the end of its life and is no longer receiving any updates. Marking the utopic task for this ticket as "Won't Fix".

Changed in juju-quickstart (Ubuntu Utopic):
status: New → Won't Fix
Changed in python-jujuclient (Ubuntu Utopic):
status: New → Won't Fix
Changed in python-websocket-client (Ubuntu Utopic):
status: New → Won't Fix
Changed in urwid (Ubuntu Utopic):
status: New → Won't Fix
Changed in websocket-client (Ubuntu Utopic):
status: New → Won't Fix
Launchpad Janitor (janitor) wrote :

[Expired for websocket-client (Ubuntu) because there has been no activity for 60 days.]

Changed in websocket-client (Ubuntu):
status: Incomplete → Expired
Launchpad Janitor (janitor) wrote :

[Expired for python-jujuclient (Ubuntu) because there has been no activity for 60 days.]

Changed in python-jujuclient (Ubuntu):
status: Incomplete → Expired
Launchpad Janitor (janitor) wrote :

[Expired for urwid (Ubuntu) because there has been no activity for 60 days.]

Changed in urwid (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Related blueprints