VCS code duplication and subordinate
Mark Ramm
mark.ramm-christensen at canonical.com
Mon Mar 11 14:24:03 UTC 2013
On 03/10/2013 02:06 PM, Patrick Hetu wrote:
> In the process of building the Django charm, I realized that a lot of charms are
> repeating the parts that handle VCS. Like:
>
> http://bazaar.launchpad.net/~charmers/charms/precise/node-app/trunk/view/head:/hooks/install#L28
> http://bazaar.launchpad.net/~charmers/charms/precise/rack/trunk/view/head:/hooks/install#L38
> http://bazaar.launchpad.net/~charmers/charms/precise/python-django/trunk/view/head:/hooks/install#L36
>
> There is also a blueprint here:
>
> https://blueprints.launchpad.net/juju/+spec/juju-charm-app-git-deployment
>
> So, I was thinking that we could create one subordinate charm per VCS to:
>
> 1) Reduce the installation time
> 2) Ease the maintenance
> 3) Include more advance stuff like branches, authentification, etc
>
> What do you think?
>
> Patrick
>
It's also possible to add this to a standard library of charm tools,
rather than do it in a subordinate.
What advantages do you see in doing it as a subordinate? Language
independence is one, I'm sure there are others that I'm not seeing.
But I also think it makes the relationship between charms and
subordinates significantly more complicated, since install of one
service could actually *require* a subordiate, and we don't yet have any
way of managing requirements, and I personally would like to avoid
needing to do charm-dependency graph resolution if at all possible.
--Mark Ramm
More information about the Juju
mailing list