neoppod: Required recipe is published
[slapos.git] / software / neoppod / software.cfg
1 # Note on LXML/END LXML: they delimit areas where lxml magic is needed. lxml is
2 # a slapos.cookbook dependency, so it should be fetched automatically. But when
3 # automatically fetched, it gets built against system headers/libs, which is
4 # forbidden in slapos. So we need to fetch lxml explicitly so it is properly
5 # built.
6
7 [buildout]
8 extends =
9     ../../stack/slapos.cfg
10 #LXML
11     ../../component/lxml-python/buildout.cfg
12 #END LXML
13     ../../component/python-2.7/buildout.cfg
14     ../../component/mariadb/buildout.cfg
15     ../../component/mysql-python/buildout.cfg
16
17 parts =
18     slapos-deps-eggs
19     slapos-cookbook
20 # NEO & dependencies
21     python2.7
22     mariadb
23     mysql-python
24     neoppod
25 # NEO instanciation
26     template-instance
27
28 [slapos-deps-eggs]
29 recipe = zc.recipe.egg
30 eggs =
31 #LXML
32     ${lxml-python:egg}
33 #END LXML
34
35 #LXML
36 [lxml-python]
37 python = python2.7
38 #END LXML
39
40 [base-template]
41 recipe = slapos.recipe.template:jinja2
42 template = ${:_profile_base_location_}/${:filename}.in
43 rendered = ${buildout:directory}/${:filename}
44 extensions = jinja2.ext.do
45 extra-context =
46 context =
47     key eggs_directory buildout:eggs-directory
48     key develop_eggs_directory buildout:develop-eggs-directory
49     key bin_directory buildout:bin-directory
50     ${:extra-context}
51
52 [template-neo-master]
53 < = base-template
54 filename = instance-neo-master.cfg
55 md5sum = f43aaf52c4eb3665c8e8d22c447138e7
56
57 [template-neo-storage-mysql]
58 < = base-template
59 filename = instance-neo-storage-mysql.cfg
60 md5sum = e767c66e7de58232de30bdf26188efe1
61 extra-context =
62     key mariadb_location mariadb:location
63     key master_cfg template-neo-master:rendered
64
65 [template-neo-admin]
66 < = base-template
67 filename = instance-neo-admin.cfg
68 md5sum = fcf1a5c937a609a934c8ccd7c1326726
69
70 [template-cluster]
71 recipe = slapos.recipe.build:download
72 url = ${:_profile_base_location_}/cluster.cfg.in
73 md5sum = fe37b2ff36fee65b44945393f63e51c3
74
75 [template-instance]
76 < = base-template
77 template = ${:_profile_base_location_}/instance.cfg.in
78 # XXX: "template.cfg" is hardcoded in instanciation recipe
79 filename = template.cfg
80 md5sum = 17e761b371487b55b39da1c39ebb1bb6
81 extra-context =
82     key neo_master template-neo-master:rendered
83     key neo_storage_mysql template-neo-storage-mysql:rendered
84     key neo_admin template-neo-admin:rendered
85     key cluster template-cluster:target
86
87 [neoppod]
88 recipe = zc.recipe.egg
89 eggs = neoppod[admin, master, storage-mysqldb]