software.cfg 1.91 KB
# Note on LXML/END LXML: they delimit areas where lxml magic is needed. lxml is
# a slapos.cookbook dependency, so it should be fetched automatically. But when
# automatically fetched, it gets built against system headers/libs, which is
# forbidden in slapos. So we need to fetch lxml explicitly so it is properly
# built.

[buildout]
extends =
    ../../stack/slapos.cfg
#LXML
    ../../component/lxml-python/buildout.cfg
#END LXML
    ../../component/python-2.7/buildout.cfg
    ../../component/mariadb/buildout.cfg
    ../../component/mysql-python/buildout.cfg

parts =
    slapos-deps-eggs
    slapos-cookbook
# NEO & dependencies
    python2.7
    mariadb
    mysql-python
    neoppod
# NEO instanciation
    template

[slapos-deps-eggs]
recipe = zc.recipe.egg
eggs =
#LXML
    ${lxml-python:egg}
#END LXML

[cluster]
recipe = slapos.recipe.build:download
url = ${:_profile_base_location_}/${:_buildout_section_name_}.cfg.in
md5sum = 84cba584198a26289daacb3e6d199e2b

[instance-neo-admin]
< = cluster
md5sum = d9213500262acd61f0bb8e840b9af18b

[instance-neo-master]
< = cluster
md5sum = 00e2a270d6d4e15b77e2e651ee5e7fa9

[instance-neo-storage-mysql]
< = cluster
md5sum = c9dcaf0f4d45dd9422c39ce6ae87dfb3

[template]
recipe = slapos.recipe.template:jinja2
template = ${:_profile_base_location_}/instance.cfg.in
md5sum = 1d427e8aca550efda1635b4ee112f8ac
# XXX: "template.cfg" is hardcoded in instanciation recipe
rendered = ${buildout:directory}/template.cfg
context =
    key eggs_directory buildout:eggs-directory
    key develop_eggs_directory buildout:develop-eggs-directory
    key bin_directory buildout:bin-directory
    key cluster cluster:target
    key neo_admin instance-neo-admin:target
    key neo_master instance-neo-master:target
    key neo_storage_mysql instance-neo-storage-mysql:target
    key mariadb_location mariadb:location

[neoppod]
recipe = zc.recipe.egg
eggs = neoppod[admin, ctl, master, storage-importer, storage-mysqldb]