version up : Zope2-2.12.26.
[slapos.git] / stack / erp5 / buildout.cfg
1 [buildout]
2 # Local development
3 develop =
4   ${:parts-directory}/slapos.cookbook-repository
5   ${:parts-directory}/cloudooo-repository
6
7 extensions =
8   slapos.zcbworkarounds
9   mr.developer
10
11 find-links =
12     http://www.nexedi.org/static/packages/source/slapos.buildout/
13     http://www.nexedi.org/static/packages/source/hexagonit.recipe.download/
14     http://dist.repoze.org
15     http://www.nexedi.org/static/packages/source/
16     http://www.owlfish.com/software/wsgiutils/download.html
17
18 extends =
19 # Exact version of Zope
20   http://svn.zope.org/repos/main/Zope/tags/2.12.26/versions.cfg
21   ../../stack/slapos.cfg
22   ../../component/logrotate/buildout.cfg
23   ../../component/dcron/buildout.cfg
24   ../../component/file/buildout.cfg
25   ../../component/fonts/buildout.cfg
26   ../../component/ghostscript/buildout.cfg
27   ../../component/git/buildout.cfg
28   ../../component/graphviz/buildout.cfg
29   ../../component/gzip/buildout.cfg
30   ../../component/haproxy/buildout.cfg
31   ../../component/hookbox/buildout.cfg
32   ../../component/librsvg/buildout.cfg
33   ../../component/imagemagick/buildout.cfg
34   ../../component/kumo/buildout.cfg
35   ../../component/libdmtx/buildout.cfg
36   ../../component/libpng/buildout.cfg
37   ../../component/libreoffice-bin/buildout.cfg
38   ../../component/lxml-python/buildout.cfg
39   ../../component/percona-toolkit/buildout.cfg
40   ../../component/mariadb/buildout.cfg
41   ../../component/memcached/buildout.cfg
42   ../../component/mysql-python/buildout.cfg
43   ../../component/pdftk/buildout.cfg
44   ../../component/pil-python/buildout.cfg
45   ../../component/pycrypto-python/buildout.cfg
46   ../../component/pysvn-python/buildout.cfg
47   ../../component/python-2.6/buildout.cfg
48   ../../component/python-2.7/buildout.cfg
49   ../../component/python-ldap-python/buildout.cfg
50   ../../component/rdiff-backup/buildout.cfg
51   ../../component/subversion/buildout.cfg
52   ../../component/tesseract/buildout.cfg
53   ../../component/varnish/buildout.cfg
54   ../../component/w3-validator/buildout.cfg
55   ../../component/w3m/buildout.cfg
56   ../../component/xorg/buildout.cfg
57   ../../component/poppler/buildout.cfg
58   ../../component/xtrabackup/buildout.cfg
59   ../../component/zabbix/buildout.cfg
60   ../../component/sed/buildout.cfg
61   ../../component/coreutils/buildout.cfg
62   ../../component/grep/buildout.cfg
63   ../../component/dash/buildout.cfg
64   ../../component/wget/buildout.cfg
65   ../../component/aspell/buildout.cfg
66   ../../component/cloudooo/buildout.cfg
67   ../../component/6tunnel/buildout.cfg
68
69 parts =
70   rdiff-backup
71   aspell
72   aspell-en-dictionary
73   apache
74   apache-antiloris
75   file
76   graphviz
77   memcached
78   haproxy
79   varnish-3.0
80   w3m
81   poppler
82   libpng
83   ghostscript
84   mariadb
85   mroonga-mariadb
86   imagemagick
87   libdmtx
88   dmtx-utils
89   kumo
90   libreoffice-bin
91   w3-validator
92   tesseract
93   hookbox
94   bootstrap2.6
95   perl-DBD-mariadb
96   perl-DBI
97   percona-toolkit
98   zabbix-agent
99   pdftk
100   dcron
101   dash
102   wget
103
104 # Buildoutish
105   eggs
106   testrunner
107   test_suite_runner
108
109 # basic Xorg
110   libXdmcp
111   libXext
112   libXau
113   libSM
114   libXrender
115
116 # fonts
117   liberation-fonts
118   ipaex-fonts
119
120 # Cloudooo specific part
121   cloudooo
122
123 # get git repositories
124   erp5
125   genbt5list
126
127 # fix products path (Zeo needs ERP5 Products to be available for
128 # conflict resolution)
129   fix-products-paths
130 # some additional utils
131   slapos-toolbox
132
133 # Local development
134   slapos.cookbook-repository
135   check-recipe
136   slapos.cookbook-python2.6
137   slapos.recipe.template-python2.6
138 # Create instance template
139   template
140
141 # Local development
142 [slapos.cookbook-repository]
143 recipe = slapos.recipe.build:gitclone
144 repository = http://git.erp5.org/repos/slapos.git
145 branch = erp5-component
146 git-executable = ${git:location}/bin/git
147
148 [check-recipe]
149 recipe = plone.recipe.command
150 stop-on-error = true
151 update-command = ${:command}
152 command = grep parts ${buildout:develop-eggs-directory}/slapos.cookbook.egg-link
153
154 [slapos.cookbook-python2.6]
155 recipe = zc.recipe.egg
156 eggs = slapos.cookbook
157 scripts =
158 python = python2.6
159 ugly-depend-on = ${slapos.cookbook-repository:repository} ${slapos.cookbook-repository:branch}
160
161 [slapos.recipe.template-python2.6]
162 recipe = zc.recipe.egg
163 eggs = slapos.recipe.template
164 scripts =
165 python = python2.6
166
167 [template-jinja2-base]
168 recipe = slapos.recipe.template:jinja2
169 template = ${:_profile_base_location_}/${:filename}.in
170 rendered = ${buildout:directory}/${:filename}
171 # XXX: extra-context is needed because we cannot append to a key of an extended
172 # section.
173 extra-context =
174 context =
175     key bin_directory buildout:bin-directory
176     key develop_eggs_directory buildout:develop-eggs-directory
177     key eggs_directory buildout:eggs-directory
178     ${:extra-context}
179
180 [template-mariadb]
181 recipe = slapos.recipe.build:download
182 url = ${:_profile_base_location_}/instance-mariadb.cfg.in
183 md5sum = 0e67f6d8b7de909be1324c680cabe8f0
184 mode = 640
185
186 [template-zope]
187 recipe = slapos.recipe.build:download
188 url = ${:_profile_base_location_}/instance-zope.cfg.in
189 md5sum = 7b1b6ee1fd122f5590844a90853622dc
190 mode = 640
191
192 [template-kumofs]
193 recipe = slapos.recipe.build:download
194 url = ${:_profile_base_location_}/instance-kumofs.cfg.in
195 md5sum = 62759c4cbb586bd4d0dcf82c08654e7a
196 mode = 640
197
198 [template-cloudooo]
199 recipe = slapos.recipe.build:download
200 url = ${:_profile_base_location_}/instance-cloudoo.cfg.in
201 md5sum = 24fc2dccc7ec20ec317ac4a9530ce6ac
202 mode = 640
203
204 [template-zope-conf]
205 recipe = slapos.recipe.build:download
206 url = ${:_profile_base_location_}/zope.conf.in
207 md5sum = c4c42d06c63d33de703fc03415e34d84
208 mode = 640
209
210 [template]
211 < = template-jinja2-base
212 # XXX: "template.cfg" is hardcoded in instanciation recipe
213 filename = template.cfg
214 template = ${:_profile_base_location_}/instance.cfg.in
215 md5sum = 2d9fa15edcc5d336b79a602d2c24d7e6
216 extra-context =
217     key apache_location apache:location
218     key aspell_location aspell:location
219     key buildout_bin_directory buildout:bin-directory
220     key coreutils_location coreutils:location
221     key curl_location curl:location
222     key dash_location dash:location
223     key dcron_location dcron:location
224     key dmtx_utils_location dmtx-utils:location
225     key erp5_location erp5:location
226     key file_location file:location
227     key fontconfig_location fontconfig:location
228     key fonts_location fonts:location
229     key freetype_location freetype:location
230     key gettext_location gettext:location
231     key git_location git:location
232     key graphviz_location graphviz:location
233     key grep_location grep:location
234     key gzip_location gzip:location
235     key haproxy_location haproxy:location
236     key imagemagick_location imagemagick:location
237     key kumo_location kumo:location
238     key libICE_location libICE:location
239     key libSM_location libSM:location
240     key libX11_location libX11:location
241     key libXau_location libXau:location
242     key libXdmcp_location libXdmcp:location
243     key libXext_location libXext:location
244     key libXrender_location libXrender:location
245     key libpng12_location libpng12:location
246     key libreoffice_bin_location libreoffice-bin:location
247     key librsvg_location librsvg:location
248     key libxcb_location libxcb:location
249     key local_bt5_repository local-bt5-repository:list
250     key logrotate_location logrotate:location
251     key mariadb_location mariadb:location
252     key memcached_location memcached:location
253     key openssl_location openssl:location
254     key perl_location perl:location
255     key perl_siteprefix perl:siteprefix
256     key pdftk_location pdftk:location
257     key poppler_location poppler:location
258     key sed_location sed:location
259     key template_balancer template-balancer:target
260     key template_cloudooo template-cloudooo:target
261     key template_cluster_zope template-cluster-zope:target
262     key template_erp5_single template-erp5-single:target
263     key template_erp5_cluster template-erp5-cluster:target
264     key template_kumofs template-kumofs:target
265     key template_logrotate_base template-logrotate-base:rendered
266     key template_mariadb template-mariadb:target
267     key template_memcached template-memcached:target
268     key template_varnish template-varnish:target
269     key template_zeo template-zeo:target
270     key template_zope template-zope:target
271     key template_zope_conf template-zope-conf:target
272     key tesseract_location tesseract:location
273     key sixtunnel_location 6tunnel:location
274     key varnish_location varnish-3.0:location
275     key w3m_location w3m:location
276     key wget_location wget:location
277     key xtrabackup_location xtrabackup:location
278     key zlib_location zlib:location
279
280 [template-memcached]
281 recipe = slapos.recipe.build:download
282 url = ${:_profile_base_location_}/instance-memcached.cfg.in
283 md5sum = 25bffcb311aa0a202e68399a413fd780
284 mode = 640
285
286 [template-erp5-single]
287 recipe = slapos.recipe.build:download
288 url = ${:_profile_base_location_}/instance-erp5-single.cfg.in
289 md5sum = f82d59347fdf707ffd671654d318ca70
290 mode = 640
291
292 [template-erp5-cluster]
293 recipe = slapos.recipe.build:download
294 url = ${:_profile_base_location_}/instance-erp5-cluster.cfg.in
295 md5sum = b044df76edad94dc5bfc2729e3041573
296 mode = 640
297
298 [template-zeo]
299 recipe = slapos.recipe.build:download
300 url = ${:_profile_base_location_}/instance-zeo.cfg.in
301 md5sum = 70425735822e029a7ebd1008903c673b
302 mode = 640
303
304 [template-cluster-zope]
305 recipe = slapos.recipe.build:download
306 url = ${:_profile_base_location_}/instance-cluster-zope.cfg.in
307 md5sum = 22c351ae5edd507e8cd3de1abeb705f3
308 mode = 640
309
310 [template-balancer]
311 recipe = slapos.recipe.build:download
312 url = ${:_profile_base_location_}/instance-balancer.cfg.in
313 md5sum = 787fa10c0dc4e607706c572ba8e06386
314 mode = 640
315
316 [template-logrotate-base]
317 < = template-jinja2-base
318 filename = instance-logrotate-base.cfg
319 md5sum = af19ff0c7817df85987c69738fb083f2
320 extra-context =
321     key dcron_location dcron:location
322     key gzip_location gzip:location
323     key logrotate_location logrotate:location
324
325 [template-varnish]
326 recipe = slapos.recipe.build:download
327 url = ${:_profile_base_location_}/instance-varnish.cfg.in
328 md5sum = f7c47ffc3e23e07f81eb4ca172286ccc
329 mode = 640
330
331 [bt5-repository]
332 # Format:
333 #   <url or path> [...]
334 #
335 # Use absolute paths for local repositories, and URLs for non-local otherwise.
336 #
337 list = ${local-bt5-repository:list}
338
339 [local-bt5-repository]
340 # Same as bt5-repository, but only local repository.
341 # Used to generate bt5lists.
342 list = ${erp5:location}/bt5 ${erp5:location}/product/ERP5/bootstrap
343
344 [genbt5list]
345 recipe = plone.recipe.command
346 stop-on-error = true
347 genbt5list = ${erp5:location}/product/ERP5/bin/genbt5list
348 command =
349   ${buildout:executable} ${:genbt5list} ${local-bt5-repository:list}
350 update-command = ${:command}
351
352 [bootstrap2.6]
353 python = python2.6
354
355 [erp5_repository_list]
356 repository_id_list = erp5
357
358 [erp5]
359 recipe = slapos.recipe.build:gitclone
360 repository = http://git.erp5.org/repos/erp5.git
361 branch = master
362 git-executable = ${git:location}/bin/git
363
364 [fix-products-paths]
365 recipe = plone.recipe.command
366 stop-on-error = true
367 command =
368   for DIR in "${erp5:location}"; do cd "$DIR"; rm -f Products ; ln -s product Products; touch product/__init__.py; done
369 update-command = ${:command}
370
371 [testrunner]
372 # XXX: Workaround for fact ERP5Type is not an distribution and does not
373 #      expose entry point for test runner
374 recipe = zc.recipe.egg
375 python = python2.6
376 eggs = ${eggs:eggs}
377 extra-paths = ${eggs:extra-paths}
378 entry-points =
379   runUnitTest=runUnitTest:main
380 scripts = runUnitTest
381 initialization =
382   import glob, imp, os, sys
383   import App # prevent Testing from importing Zope2.App instead of App
384   import Products
385   Products.__path__[:0] = filter(None,
386     os.getenv('INSERT_PRODUCTS_PATH', '').split(os.pathsep))
387   os.environ['SOFTWARE_HOME'] = os.path.abspath(imp.find_module('Zope2')[1])
388   os.environ['ZOPE_SCRIPTS'] = ''
389   parts_directory = '''${buildout:parts-directory}'''
390   repository_id_list = \
391     '''${erp5_repository_list:repository_id_list}'''.split()[::-1]
392   os.environ['erp5_tests_bt5_path'] = ','.join(sum((
393     [bt5_path, os.path.join(bt5_path, '*')]
394     for bt5_path in (os.path.join(parts_directory, x, 'bt5')
395                      for x in repository_id_list)), []))
396   extra_path_list = '''${:extra-paths}'''.split()
397   sys.path[:0] = sum((
398     glob.glob(os.path.join(x, 'tests'))
399     for x in extra_path_list), [])
400   sys.path[:0] = sum((
401     glob.glob(os.path.join(x, 'Products', '*', 'tests'))
402     for x in extra_path_list), [])
403
404 [test_suite_runner]
405 # XXX: Workaround for fact ERP5Type is not an distribution and does not
406 #      expose entry point for test runner
407 recipe = zc.recipe.egg
408 python = python2.6
409 eggs = ${eggs:eggs}
410 extra-paths = ${eggs:extra-paths}
411 entry-points =
412   runTestSuite=Products.ERP5Type.tests.runTestSuite:main
413 scripts = runTestSuite
414 initialization =
415   import os
416   import sys
417   import Products
418   [Products.__path__.insert(0, p) for p in reversed(os.environ.get('INSERT_PRODUCTS_PATH', '').split(':')) if p]
419   import Zope2
420   os.environ['SOFTWARE_HOME'] = os.path.abspath(os.path.dirname(os.path.dirname(Zope2.__file__)))
421   os.environ['ZOPE_SCRIPTS'] = ''
422   repository_id_list = list(reversed('''${erp5_repository_list:repository_id_list}'''.split()))
423   sys.path[0:0] = ['/'.join(['''${buildout:parts-directory}''', x]) for x in repository_id_list]
424
425 [eggs]
426 recipe = zc.recipe.egg
427 python = python2.6
428 eggs =
429   ${mysql-python:egg}
430   ${lxml-python:egg}
431   ${pil-python:egg}
432   ${python-ldap-python:egg}
433   ${pysvn-python:egg}
434   ${pycrypto-python:egg}
435   PyXML
436   SOAPpy
437   cElementTree
438   chardet
439   coverage
440   elementtree
441   erp5diff
442   inotifyx
443   ipdb
444   mechanize
445   numpy
446   ordereddict
447   paramiko
448   ply
449   python-magic
450   python-memcached
451   pytz
452   requests
453   threadframe
454   timerserver
455   urlnorm
456   uuid
457   xml_marshaller
458   xupdate_processor
459   feedparser
460   argparse
461   validictory
462   erp5.util
463   huBarcode
464   qrcode
465
466 # Zope
467   ZODB3
468   Zope2
469 # Zope acquisition patch
470   Acquisition
471
472 # Other Zope 2 packages
473   Products.PluggableAuthService
474   Products.PluginRegistry
475
476 # CMF 2.2
477   Products.CMFActionIcons
478   Products.CMFCalendar
479   Products.CMFCore
480   Products.CMFDefault
481   Products.CMFTopic
482   Products.CMFUid
483   Products.DCWorkflow
484   Products.GenericSetup
485   five.localsitemanager
486
487 # Other products
488   Products.DCWorkflowGraph
489   Products.MimetypesRegistry
490   Products.ExternalEditor
491   Products.TIDStorage
492
493 # Currently forked in our repository
494 #    Products.PortalTransforms
495 # Dependency for our fork of PortalTransforms
496   StructuredText
497
498 # Needed for parsing .po files from our Localizer subset
499   polib
500
501 # parameterizing the version of the generated python interpreter name by the
502 # python section version causes dependency between this egg section and the
503 # installation of python, which we don't want on an instance
504 interpreter = python2.6
505 scripts =
506   repozo
507   runzope
508   runzeo
509   tidstoraged
510   tidstorage_repozo
511   web_checker_utility = erp5.util.webchecker:web_checker_utility
512
513 extra-paths =
514   ${erp5:location}
515
516 [cloudooo-repository]
517 branch = master
518 revision = 4cdfffb3f81a0fdbb7b372d92de664e716f12d4b
519
520 [mysql-python]
521 python = python2.6
522
523 [lxml-python]
524 python = python2.6
525
526 [pil-python]
527 python = python2.6
528
529 [python-ldap-python]
530 python = python2.6
531
532 [pysvn-python]
533 python = python2.6
534
535 [slapos-toolbox]
536 recipe = zc.recipe.egg
537 python = ${eggs:python}
538 eggs =
539   ${lxml-python:egg}
540   slapos.toolbox
541   slapos.toolbox[zodbpack]
542
543 scripts =
544   killpidfromfile
545   onetimedownload
546   zodbpack
547
548 [versions]
549 # pin Acquisition and Products.DCWorkflow to Nexedi flavour of eggs
550 Acquisition = 2.13.7nxd001
551 Products.DCWorkflow = 2.2.3nxd002
552
553 # Known version with works
554 numpy = 1.6.2
555 # Patched version which support python 2.6
556 PyXML = 0.8.4nxd001
557 # modified version that works fine for buildout installation
558 SOAPpy = 0.12.0nxd001
559 # we are still using this old stable version.
560 rdiff-backup = 1.0.5
561
562 # official pysvn egg does not supports --include-dirs and
563 # --library-dirs, so we use our modified version
564 pysvn = 1.7.4nxd006
565
566 # CMF 2.3 requries Zope 2.13.
567 Products.CMFCalendar = 2.2.2
568 Products.CMFCore = 2.2.6
569 Products.CMFDefault = 2.2.2
570 Products.CMFTopic = 2.2.1
571 Products.CMFUid = 2.2.1
572
573 # Unpined locally developed egg
574 slapos.cookbook =
575
576 # Pinned versions
577 Flask = 0.9
578 GitPython = 0.3.2.RC1
579 MySQL-python = 1.2.3
580 PIL = 1.1.7
581 Paste = 1.7.5.1
582 PasteDeploy = 1.5.0
583 PasteScript = 1.7.5
584 Products.CMFActionIcons = 2.1.3
585 Products.DCWorkflowGraph = 0.4.1
586 Products.ExternalEditor = 1.1.0
587 Products.GenericSetup = 1.7.2
588 Products.MimetypesRegistry = 2.0.3
589 Products.PluggableAuthService = 1.8.0
590 Products.PluginRegistry = 1.3
591 Products.TIDStorage = 5.4.8
592 Products.Zelenium = 1.0.3
593 StructuredText = 2.11.1
594 WSGIUtils = 0.7
595 Werkzeug = 0.8.3
596 apache-libcloud = 0.11.1
597 argparse = 1.2.1
598 async = 0.6.1
599 atomize = 0.1.1
600 buildout-versions = 1.7
601 cElementTree = 1.0.5-20051216
602 chardet = 1.1
603 coverage = 3.5.2
604 csp-eventlet = 0.7.0
605 elementtree = 1.2.7-20070827-preview
606 erp5.recipe.cmmiforcei686 = 0.1.3
607 erp5.util = 0.4.6
608 erp5diff = 0.8.1.5
609 eventlet = 0.9.17
610 feedparser = 5.1.2
611 five.localsitemanager = 2.0.5
612 fpconst = 0.7.2
613 gitdb = 0.5.4
614 greenlet = 0.4.0
615 hexagonit.recipe.cmmi = 1.6
616 http-parser = 0.7.8
617 huBarcode = 0.63
618 inotifyx = 0.2.0
619 ipdb = 0.7
620 ipython = 0.13
621 meld3 = 0.6.8
622 netaddr = 0.7.9
623 netifaces = 0.8
624 ordereddict = 1.1
625 paramiko = 1.7.7.2
626 plone.recipe.command = 1.1
627 ply = 3.4
628 polib = 1.0.0
629 psutil = 0.6.1
630 python-ldap = 2.4.10
631 python-magic = 0.4.3
632 python-memcached = 1.47-ipv6-1
633 restkit = 4.2.0
634 rtjp-eventlet = 0.3.2
635 setuptools = 0.6c12dev-r88846
636 slapos.core = 0.28
637 slapos.libnetworkcache = 0.13.2
638 slapos.recipe.build = 0.11.4
639 slapos.recipe.template = 2.4.2
640 slapos.toolbox = 0.29
641 smmap = 0.8.2
642 socketpool = 0.5.2
643 supervisor = 3.0a12
644 threadframe = 0.2
645 timerserver = 2.0.2
646 urlnorm = 1.1.2
647 uuid = 1.30
648 validictory = 0.8.3
649 xml-marshaller = 0.9.7
650 xupdate-processor = 0.4
651 mr.developer = 1.21
652 qrcode = 2.4.1
653 requests = 0.13.2