[Zope-dev] zc.recipe.cmmi shared builds

Jens W. Klein jens at bluedynamics.com
Tue Mar 24 08:51:14 EDT 2009


Am Tue, 24 Mar 2009 10:26:08 +0100 schrieb Wolfgang Schnerring:
> I'd like to extend zc.recipe.cmmi to support shared build directories.
> 
> Use case example: we use lxml in a lot of our projects, which currently
> means having to build libxml and libxslt over and over again, since the
> buildout needs to be standalone and thus can't depend on them being
> installed on the system. But while that's a necessity for deployment,
> it's really annoying for development.

So build once and use often, we do this i.e. for ldap by compiling in a 
separate buildout located in /opt/openldap and then have a section in the 
specific buildout like:

[python-ldap]
recipe = zc.recipe.egg:custom
egg = python-ldap
include-dirs  = 
	/opt/is/openldap/parts/open-ldap/include
library-dirs  = 
	/opt/is/openldap/parts/open-ldap/lib
rpath = 
	/opt/is/openldap/parts/open-ldap/lib

 
> Plan of attack:
> Introduce an option "shared" (defaults to False). If that is set, a)
> calculate HASH as a hash of the recipe's current options (e. g.
> configure parameters, environment variables) b) perform the cmmi in
> ${buildout:download-cache}/cmmi/build/<HASH>, if that directory is not
> present yet. (Probably needs a little thought about how to differentiate
> between "present and has a complete build" and "present but we errored
> out")
> 
> Any thoughts?

sounds good to me, it would simplify our infrastructure a lot. important 
is the hash: it needs to include all parameters, environment et al passed 
to the cmmi.

regards
Jens

-- 
Jens W. Klein - Klein & Partner KEG - BlueDynamics Alliance



More information about the Zope-Dev mailing list