Charms: Proposed workflow for multi-distro development.

Clint Byrum clint at ubuntu.com
Wed Dec 7 07:18:09 UTC 2011


So, with precise releasing alpha1 last week, we have a bootable
dev release that has begun to diverge from 11.10. Adam encountered a
difference in the way rabbitmqctl works, and in fact, the new RabbitMQ has
all kinds of cool new capabilities that the old one does not. Likewise,
Precise has MySQL 5.5 allowing for some new functionality.

So we need to start thinking on how we want to manage the charm collection
across multiple releases of Ubuntu.

Some of us have discussed this in private conversations, but I don't
think we've ever publicly discussed how we think this should work. So
here's the sequence of events I'd like to propose:

[11.10 release]
- dev work continues only on oneiric charms >
[precise alpha 1 ]
- open "precise" series of charms by copying all oneiric charms to
precise.
- Direct "dev focus" of lp:charm to precise. This means pushing to
lp:charm/foo will now silently go to lp:charm/precise/foo.
- Changes which are appropriate for oneiric are manually merged back to
the oneiric charm using bzr merge. (perhaps we can automate this to one
command similar to the 'backportpackage' command in Ubuntu)

I'd like to repeat this workflow with similar timing for 12.04 -> 12.10
as well.

One can see 1 year from now where there would be 

11.10
12.04
12.10
R-alpha1

This means a lot of changes will be happening 2 releases beyond the LTS,
while most users will likely be using the LTS. I'm ok with this, but its
worth noting. We will maintain charms the same way we do packages, where
we'll require that charms be fixed in the dev release before any fixes
are made in older releases. It will be a little different, as features
will work the same way and be quite welcome in the older series releases
(as long as they don't change the interfaces).

If everyone is ok with that, I will open a ticket to have a launchpad
admin run the script to open precise development (its in lp:launchpad
under scripts/branch-distro.py). Its kind of an irreversible thing,
so I'd like to get people's +1's, not just any -1's.



More information about the Juju mailing list