← Back to team overview

openstack team mailing list archive

Re: [devstack] Easing maintenance of list of distro packages to install

 

Le mercredi 20 juin 2012, à 08:17 -0500, Dean Troyer a écrit :
> On Wed, Jun 20, 2012 at 5:06 AM, Vincent Untz <vuntz@xxxxxxxx> wrote:
> >  - this leads to incomplete updates for dependencies. It happens that
> >   someone updates the apts files but not the rpms ones. (shameless
> 
> This is going to always be a problem, independent of the mechanism
> used to manage package lists.

Unless we have tests checking that all distros have a mapping for each
package :-)

> The simple fact is that we really only develop DevStack on Ubuntu,
> anything else is a second-class citizen by definition. I do test
> Fedora periodically, but as of this point those are the only two
> distros we have committed to support, and Fedora still lags (try
> running stack.sh on f17 sometime).

Well, I'd say it's up to the people running that distro to ensure that
DevStack works fine there, really. But we can make their life easier,
and make second-class feel much closer to first-class :-)

> >  - this just doesn't scale when adding support for another distro,
> >   especially as rpm-based distros don't all share the same package
> >   names (hence files/rpms/ cannot really be shared).
> 
> The directory names could easily be anything else, it was originally
> meant to distinguish packages (apts) vs pips.

Sure.

> > I already have some working code for that, but I want to check if people
> > are fine with the idea before submitting it for review.
> 
> We have had other package dependency schemes proposed in the past, in
> the end the issue isn't the mechanism but the support.  As it is the
> Fedora lists still often lag unless I can catch a review and prompt
> the author to add the required entry in the rpms directory
> 
> Support aside, anything that we might adopt will necessarily be kept
> simple, such as changing the packaging names (apts/rpms) to packager
> names (ubuntu,fedora,etc).

Is the following simple-enough:

 - adding a package: add the Debian package name in files/apts/, and add
   one line for the mapping in each other distro. Lazy approach is a
   line telling it's the same name, and users of the other distro will
   fix it when they update their devstack.

 - renaming a package: a simple sed in files/apts/ and in the
   translation tables

 - removing a package: simply removing the lines in files/apts/ and in
   the translation tables

Cheers,

Vincent

-- 
Les gens heureux ne sont pas pressés.


References