Version of django in cloud-tools conflicts with horizon:grizzly

Bug #1240667 reported by Jonathan Davies on 2013-10-16
56
This bug affects 10 people
Affects Status Importance Assigned to Milestone
juju-core
Critical
Dimiter Naydenov
ubuntu-cloud-archive
Medium
Unassigned
juju-core (Ubuntu)
Undecided
Unassigned

Bug Description

I've just deployed a brand new deployment of openstack and I ran into:

- https://ask.openstack.org/en/question/2280/horizon-how-to-fix-cannot-import-force_unicode-in-apaches-errorlog/

Apparently:

"""
If that's the case, it's a hint that the wrong version of Django is used. Horizon in the Grizzly release depends on Django 1.4.x and is not compatible with Django 1.5, which leads to this error.
"""

However, 1.5 is what we ship in cloud-tools and this thus breaks grizzly deployments with cloud-tools (however, a 1.4 package is available):

"""
python-django:
  Installed: 1.5.4-1ubuntu1~ctools0
  Candidate: 1.5.4-1ubuntu1~ctools0
  Version table:
 *** 1.5.4-1ubuntu1~ctools0 0
        500 http://ubuntu-cloud.archive.canonical.com/ubuntu/ precise-updates/cloud-tools/main amd64 Packages
        100 /var/lib/dpkg/status
     1.4.5-1ubuntu0.1~cloud0 0
        500 http://ubuntu-cloud.archive.canonical.com/ubuntu/ precise-updates/grizzly/main amd64 Packages
     1.3.1-4ubuntu1.8 0
        500 http://archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
     1.3.1-4ubuntu1 0
        500 http://archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
"""

See bug 1271937 which discusses the need to use juju-mongodb instead of mongodb-server

Related branches

lp:~dimitern/juju-core/290-lp-1240667-cloud-tools-priority
juju hackers: Pending requested 2014-02-11
Jonathan Davies (jpds) wrote :
Jonathan Davies (jpds) wrote :

I can run:

$ sudo apt-get install python-django=1.4.5-1ubuntu0.1~cloud0
$ sudo apache2ctl restart

...and everything just works.

Scott Moser (smoser) wrote :

Thanks for reporting this bug.
It actually gives a concrete example of a use case that we said was not supported.

Some text we had previously written with regard to compatibility is below:
 | cloud-tools pockets are not guaranteed compatible with other cloud archive
 | pockets, and could possibly break things on 12.04.  For example:
 | * if you have a stack of software that works on lxc on 12.04, that
 | software might break with cloud-tools version of the software.
 | * The lxc driver in nova that is present in havana-updates is not
 | guaranteed to function with lxc that is in cloud-tools-updates.

There really is no way that we can realistically support any 12.04 package that was built against 12.04 level dependencies with 13.10 (or later) level packages.

Changed in cloud-archive:
importance: Undecided → Low
status: New → Won't Fix
Scott Moser (smoser) wrote :

Johnathon pointed out to me why this is a problem.

  Juju client launches a system and adds the cloud-tools archive to it. Juju needs to do that for 2 reasons:
a.) to use lxc from the cloud archive (on any node using lxc).
b.) to use mongodb from the cloud archive (on the bootstrap node)

Changed in cloud-archive:
status: Won't Fix → Confirmed
Scott Moser (smoser) on 2013-10-16
Changed in cloud-archive:
importance: Low → Medium
Changed in juju-core:
status: New → Confirmed
importance: Undecided → Medium
James Page (james-page) wrote :

Maybe the cloud-tools pocket could be pinned at a lower priority than the main archive and selected components explicitly installed from the tools pocket for lxc and mongodb?

This also begs the question as to what happens for non-12.04 juju instances, as the cloud-tools pocket only supports 12.04. Are mongodb etc.. being installed from the juju stable PPA still?

James Page (james-page) wrote :

Note this also impacts other things in the cloud-tools pocket; for example, juju deploy mongodb now gets an entirely different version to that in 12.04.

> Maybe the cloud-tools pocket could be pinned at a lower priority than
> the main archive and selected components explicitly installed from the
> tools pocket for lxc and mongodb?
>
> This also begs the question as to what happens for non-12.04 juju
> instances, as the cloud-tools pocket only supports 12.04. Are mongodb
> etc.. being installed from the juju stable PPA still?

Nope, although at this stage that only leaves Quantal affected, and
nobody would be running Quantal anymore ? right ?

Andrew Wilkins (axwalk) wrote :

> > Maybe the cloud-tools pocket could be pinned at a lower priority than
> > the main archive and selected components explicitly installed from the
> > tools pocket for lxc and mongodb?
> >
> > This also begs the question as to what happens for non-12.04 juju
> > instances, as the cloud-tools pocket only supports 12.04. Are mongodb
> > etc.. being installed from the juju stable PPA still?
>
> Nope, although at this stage that only leaves Quantal affected, and
> nobody would be running Quantal anymore ? right ?

Actually, we do still add the PPA for Quantal (only).

- cloud-tools pocket for precise
- ppa:juju/stable for quantal
- no additions for anything else

James Page (james-page) wrote :

/etc/apt/preferences.d/50-cloud-tools:

Package: *
Pin: release n=precise-updates/cloud-tools
Pin-Priority: 400

Will pin the cloud tools pockets at a lower priority than the main archive.

Curtis Hovey (sinzui) on 2013-10-22
Changed in juju-core:
importance: Medium → High
status: Confirmed → Triaged
milestone: none → 1.17.0
Curtis Hovey (sinzui) on 2013-10-31
tags: added: charms packaging regression
Curtis Hovey (sinzui) wrote :

This also affect the charmworld charm that is deployed as manage.jujucharms.com and is the data provider for jujucharms.com.

Curtis Hovey (sinzui) on 2013-11-19
Changed in juju-core:
milestone: 1.17.0 → 1.19.0
Curtis Hovey (sinzui) on 2013-12-02
tags: added: cloud-archive
Jonathan Davies (jpds) on 2013-12-03
tags: added: cts-cloud-review
Nicola Larosa (teknico) wrote :

I also deployed Openstack (precise-grizzly, via MAAS) and stumbled into this.

Mark Ramm (mark-ramm) on 2014-01-22
Changed in juju-core:
importance: High → Critical
Curtis Hovey (sinzui) on 2014-01-22
Changed in juju-core:
milestone: 1.19.0 → 1.17.1
Martin Packman (gz) on 2014-01-23
Changed in juju-core:
milestone: 1.17.1 → 1.18.0
Curtis Hovey (sinzui) on 2014-01-23
description: updated
Curtis Hovey (sinzui) wrote :

I think the solution to this issue is to follow the suggestion in comment #9, but the rules for selecting the right mongodb are harder. apt-get does not let us specify a version greater-than. juju might need to parse the apt-cache to find a version from either the cloud-archive or newer version. If we are looking at apt-cache, we could also look for juju-monogodb.

Changed in juju-core:
status: Triaged → In Progress
assignee: nobody → Dimiter Naydenov (dimitern)
Dimiter Naydenov (dimitern) wrote :

Added the apt preferences file, as suggested in #9, also mongodb-server is installed with explicit --target-release 'precise-updates/cloud-tools' argument, so it's always the correct version. Tested on EC2 by bootstrapping and deploying openstack-dashboard on machine 0. It went fine and I was able to open the /horizon login page. No errors during charm installation, so I can assume it fixes the issue.

Dimiter Naydenov (dimitern) wrote :

I'm removing the ubuntu-cloud-archive, because this really is a juju-core bug only.

Changed in cloud-archive:
status: Confirmed → Invalid
Changed in juju-core:
milestone: 1.18.0 → 1.17.3
Changed in juju-core:
status: In Progress → Fix Committed
Curtis Hovey (sinzui) on 2014-02-21
Changed in juju-core:
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package juju-core - 1.17.3-0ubuntu1

---------------
juju-core (1.17.3-0ubuntu1) trusty; urgency=medium

  * New upstream point release (LP: #1271941, #834930, #1240667, #1274210):
    - https://launchpad.net/juju-core/trunk/1.17.3
 -- James Page <email address hidden> Mon, 24 Feb 2014 09:19:55 +0000

Changed in juju-core (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers