"charms" needs branch name consistency
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Invalid
|
Undecided
|
Unassigned | ||
pyjuju |
Triaged
|
Low
|
Unassigned |
Bug Description
Currently the charm store only publishes branches in the launchpad distro 'charms' namespace if they are marked as 'trunk'.
This causes problems with the way launchpad's distro organization works, as they name the branches not 'trunk' but $series. After branching a new distro, we had to rename all the official branches from 'precise' to 'trunk' to get the charm store to pick them up.
It might seem like it would make more sense to ship the branches that are marked as 'Mature' in branch metadata, rather than only the ones named 'trunk.' However, the charm store needs to have a single charm for each piece of the charm namespace. The name trunk is used because that is the one that is used when somebody pushes to lp:charms/foo .
It would make more sense for the branch-distro script to just create the branches named trunk for consistency with the other ways to create branches.
description: | updated |
Changed in juju: | |
status: | New → Invalid |
Changed in juju: | |
importance: | Undecided → Low |
status: | New → Triaged |
The Launchpad branch name is:
lp:~user/charms/series/project/trunk
And that gets mapped to:
cs: ~user/series/ project
The reason why we map "trunk" is because that's the default branch name in Launchpad, but no matter which name it is, we can only map a single name to allow such naming scheme.
That said, in the future we'll extend the branch names supported by introducing the concept of subsets of charms for specific purposes (e.g. production vs. testing, etc). This will have richer semantics, and will use the branch name in a specific scheme to be defined.