[openstack-dev] Automation around binary dependencies

Robert Collins robertc at robertcollins.net
Mon Jun 10 21:49:06 UTC 2013


On 11 June 2013 09:37, Doug Hellmann <doug.hellmann at dreamhost.com> wrote:
>
> Are we sure there is always a 1:1 mapping? It seems like we had at least one
> case where a dependency was in a single package on one platform but in split
> across multiple packages on another. I can't think of that case, though, so
> maybe I'm imagining things.

If not we can always list all the bits; inheriting a reference list
doesn't constrain us to that list, merely seeds the process.

> Keeping a single golden list with the right version numbers consistent
> across all of the projects.
>
> Could we release a package that just contains the list as a data file that
> bindep can use? That would keep the dependency list for OpenStack separate
> from bindep, making the tool more likely to be reusable and avoiding the
> copying problem.

Noodling: suggests we need a way to say 'IF you have <name>, enforce
<constraints>' without implying 'and we want <name>'. Further noodling
- that would want to be profile specific as it is for
other-requirements.

Then we just union that with the project list.

One way would be a magic profile e.g. [bindep:'ifinstalled'] which if
set would still honour other profile values, but would never trigger
install, only constraints. Another way would be a marker seperate to
the profiles list.


> I assume we'll want to pin versions of these packages, just as we do with
> the Python requirements. If that's the case, we need a mapping list for each
> distro anyway. The golden list would map some standard name to the distro
> package with a version. The dependency lists in a given project would
> include the "generic" name without the version.

We may need to, but I think it will be rare in the distro world; most
distros don't ship multiple versions of binary packages, so if you
need to pin, you're screwed.

-Rob

-- 
Robert Collins <rbtcollins at hp.com>
Distinguished Technologist
HP Cloud Services



More information about the OpenStack-dev mailing list