8 http://www.nexedi.org/static/packages/source/slapos.buildout/
10 http://www.nexedi.org/static/packages/source/
11 http://www.owlfish.com/software/wsgiutils/download.html
13 # Separate from site eggs
14 allowed-eggs-from-site-packages =
15 include-site-packages = false
16 exec-sitecustomize = false
18 # Use only quite well working sites.
27 peak.telecommunity.com
33 # Exact version of Zope
34 http://svn.zope.org/repos/main/Zope/tags/2.12.20/versions.cfg
35 ../component/logrotate/buildout.cfg
36 ../component/dcron/buildout.cfg
37 ../component/file/buildout.cfg
38 ../component/fonts/buildout.cfg
39 ../component/ghostscript/buildout.cfg
40 ../component/git/buildout.cfg
41 ../component/glib/buildout.cfg
42 ../component/graphviz/buildout.cfg
43 ../component/gzip/buildout.cfg
44 ../component/haproxy/buildout.cfg
45 ../component/hookbox/buildout.cfg
46 ../component/imagemagick/buildout.cfg
47 ../component/kumo/buildout.cfg
48 ../component/libreoffice-bin/buildout.cfg
49 ../component/lxml-python/buildout.cfg
50 ../component/percona-toolkit/buildout.cfg
51 ../component/mariadb/buildout.cfg
52 ../component/memcached/buildout.cfg
53 ../component/mysql-python/buildout.cfg
54 ../component/pdftk/buildout.cfg
55 ../component/pycrypto-python/buildout.cfg
56 ../component/pysvn-python/buildout.cfg
57 ../component/python-2.6/buildout.cfg
58 ../component/python-2.7/buildout.cfg
59 ../component/python-ldap-python/buildout.cfg
60 ../component/rdiff-backup/buildout.cfg
61 ../component/sphinx/buildout.cfg
62 ../component/stunnel/buildout.cfg
63 ../component/subversion/buildout.cfg
64 ../component/tesseract/buildout.cfg
65 ../component/varnish/buildout.cfg
66 ../component/w3-validator/buildout.cfg
67 ../component/w3m/buildout.cfg
68 ../component/xorg/buildout.cfg
69 ../component/poppler/buildout.cfg
70 ../component/xtrabackup/buildout.cfg
71 ../component/zabbix/buildout.cfg
72 ../component/sed/buildout.cfg
73 ../component/coreutils/buildout.cfg
74 ../component/grep/buildout.cfg
94 groonga-storage-engine-mariadb
100 tesseract-eng-traineddata-unzip
130 # Cloudooo specific part
133 # get git repositories
137 # fix products path (Zeo needs ERP5 Products to be available for
138 # conflict resolution)
140 # some additional utils
145 # <url or path> [...]
147 # Use absolute paths for local repositories, and URLs for non-local otherwise.
149 list = ${local-bt5-repository:list}
151 [local-bt5-repository]
152 # Same as bt5-repository, but only local repository.
153 # Used to generate bt5lists.
154 list = ${erp5:location}/bt5 ${erp5:location}/product/ERP5/bootstrap
157 recipe = plone.recipe.command
159 genbt5list = ${erp5:location}/product/ERP5/bin/genbt5list
161 ${buildout:executable} ${:genbt5list} ${local-bt5-repository:list}
162 update-command = ${:command}
170 eggs = slapos.libnetworkcache
173 pkgname = itools-0.50.8
174 location = ${buildout:parts-directory}/${:_buildout_section_name_}
175 lib = ${:location}/lib
176 source = ${:location}/src
178 # ugly itools building sections until itools and setuptools learn to get
182 recipe = hexagonit.recipe.download
183 strip-top-level-dir = true
184 url = http://download.hforge.org/itools/0.50/${itools:pkgname}.tar.gz
185 md5sum = 12704cc354e2201e0921a832bf6b1556
186 destination = ${itools:source}
189 recipe = plone.recipe.command
190 # reference itools-download:destination instead of itools:source to trigger its
192 # here, we unset PYTHONPATH to invoke different python than buildout one.
194 cd ${itools-download:destination} &&
195 PYTHONPATH= ${python2.6:executable} setup.py build_ext -L ${glib:location}/lib -I ${glib:location}/include/glib-2.0:${glib:location}/lib/glib-2.0/include -R ${glib:location}/lib &&
196 PYTHONPATH= ${python2.6:executable} setup.py install_lib -d ${itools:lib}
198 update-command = ${:command}
199 location = ${itools:location}
203 # Recipe minitage.recipe.fetch is disabled, as it uses PATH variable, but it
204 # is not possible to change its environment to use localy delivered subversion
205 # nor git. plone.recipe.command can do same job, but it is controllable which
206 # binary will be used
207 recipe = plone.recipe.command
208 svn_param =--trust-server-cert --non-interactive --quiet
209 location = ${buildout:parts-directory}/${:_buildout_section_name_}
212 ${subversion:location}/bin/svn checkout -r 98997 ${:svn_param} https://svn.plone.org/svn/collective/ExtFile/trunk ${:location}/ExtFile &&
213 ${git:location}/bin/git clone --quiet git://git.hforge.org/Localizer.git ${:location}/Localizer && cd ${:location}/Localizer && ${git:location}/bin/git reset --quiet --hard dacb6ba0ae559cd9bdb8822812d24a12a21e9e37
215 [erp5_repository_list]
216 repository_id_list = erp5
219 # Recipe zerokspot.recipe.git is disabled, as is not possible to change its
220 # environment to use localy delivered git.
221 # plone.recipe.command can do same job, but it is controllable which binary
223 recipe = plone.recipe.command
224 location = ${buildout:parts-directory}/${:_buildout_section_name_}
226 repository = http://git.erp5.org/repos/erp5.git
229 command = ${git:location}/bin/git clone --quiet -b ${:branch} ${:repository} ${:location} && if [ -n ${:revision} ]; then cd ${:location} && ${git:location}/bin/git reset --quiet --hard ${:revision} ; fi
230 update-command = cd ${:location} && ${git:location}/bin/git pull --quiet && if [ -n ${:revision} ]; then cd ${:location} && ${git:location}/bin/git reset --quiet --hard ${:revision} ; fi
233 # XXX: ERP5 related products are not defined as python distributions, so it is
234 # required to configure them in declarative manner
238 recipe = plone.recipe.command
241 for DIR in "${products-deps:location}"; do cd "$DIR"; rm -f Products ; ln -s . Products; touch __init__.py; done
242 for DIR in "${erp5:location}"; do cd "$DIR"; rm -f Products ; ln -s product Products; touch product/__init__.py; done
243 update-command = ${:command}
246 # XXX: Workaround for fact ERP5Type is not an distribution and does not
247 # expose entry point for test runner
248 recipe = zc.recipe.egg
251 extra-paths = ${eggs:extra-paths}
253 runUnitTest=runUnitTest:main
254 scripts = runUnitTest
256 import glob, imp, os, sys
257 import App # prevent Testing from importing Zope2.App instead of App
259 Products.__path__[:0] = filter(None,
260 os.getenv('INSERT_PRODUCTS_PATH', '').split(os.pathsep))
261 Products.__path__.extend(reversed('''${products:list}'''.split()))
262 os.environ['SOFTWARE_HOME'] = os.path.abspath(imp.find_module('Zope2')[1])
263 os.environ['ZOPE_SCRIPTS'] = ''
264 parts_directory = '''${buildout:parts-directory}'''
265 repository_id_list = \
266 '''${erp5_repository_list:repository_id_list}'''.split()[::-1]
267 os.environ['erp5_tests_bt5_path'] = ','.join(sum((
268 [bt5_path, os.path.join(bt5_path, '*')]
269 for bt5_path in (os.path.join(parts_directory, x, 'bt5')
270 for x in repository_id_list)), []))
271 sys.path[:0] = [os.path.join(parts_directory, x, 'tests')
272 for x in repository_id_list]
274 glob.glob(os.path.join(parts_directory, x, 'product', '*', 'tests'))
275 for x in repository_id_list), [])
278 # XXX: Workaround for fact ERP5Type is not an distribution and does not
279 # expose entry point for test runner
280 recipe = zc.recipe.egg
283 extra-paths = ${eggs:extra-paths}
285 runTestSuite=Products.ERP5Type.tests.runTestSuite:main
286 scripts = runTestSuite
291 [Products.__path__.insert(0, p) for p in reversed(os.environ.get('INSERT_PRODUCTS_PATH', '').split(':')) if p]
292 Products.__path__.extend(reversed('''${products:list}'''.split()))
294 os.environ['SOFTWARE_HOME'] = os.path.abspath(os.path.dirname(os.path.dirname(Zope2.__file__)))
295 os.environ['ZOPE_SCRIPTS'] = ''
296 repository_id_list = list(reversed('''${erp5_repository_list:repository_id_list}'''.split()))
297 sys.path[0:0] = ['/'.join(['''${buildout:parts-directory}''', x]) for x in repository_id_list]
300 recipe = zc.recipe.egg
305 ${python-ldap-python:egg}
307 ${pycrypto-python:egg}
333 # Zope 2.12 with patched acquisition
338 # Other Zope 2 packages
339 Products.PluggableAuthService
340 Products.PluginRegistry
343 Products.CMFActionIcons
350 Products.GenericSetup
351 five.localsitemanager
354 Products.DCWorkflowGraph
355 Products.MimetypesRegistry
356 Products.ExternalEditor
360 # Currently forked in our repository
361 # Products.PortalTransforms
362 # Dependency for our fork of PortalTransforms
365 # parameterizing the version of the generated python interpreter name by the
366 # python section version causes dependency between this egg section and the
367 # installation of python, which we don't want on an instance
368 interpreter = python2.6
377 ${itools:location}/lib
378 ${products-deps:location}
394 recipe = zc.recipe.egg
395 python = ${eggs:python}
401 killpidfromfile = slapos.systool:killpidfromfile
402 onetimedownload = slapos.toolbox:onetimedownload
405 recipe = zc.recipe.egg
409 cloudooo.handler.ffmpeg
410 cloudooo.handler.imagemagick
416 paster=cloudooo_paster
419 # Use SlapOS patched zc.buildout
420 zc.buildout = 1.6.0-dev-SlapOS-002
422 # pin Acquisition and Products.DCWorkflow to Nexedi flavour of eggs
423 Acquisition = 2.13.7nxd001
424 Products.DCWorkflow = 2.2.3nxd002
426 # Known version with works
428 # Patched version which support python 2.6
430 # modified version that works fine for buildout installation
431 SOAPpy = 0.12.0nxd001
432 # we are still using this old stable version.
435 # Zope Known Good Set is incompatible with buildout 1.5.0 in case of
436 # distribute and zc.buildout, and as ERP5 Appliance trunk wants to use
437 # the newest versions of buildout infrastructure clear the pin
441 # official pysvn egg does not supports --include-dirs and
442 # --library-dirs, so we use our modified version