[buildout]
# Local development
develop =
  ${:parts-directory}/slapos.cookbook-repository

extends =
  ../../stack/slapos.cfg
  ../../component/dash/buildout.cfg
  ../../component/dcron/buildout.cfg
  ../../component/gcc/buildout.cfg
  ../../component/git/buildout.cfg
  ../../component/gzip/buildout.cfg
  ../../component/logrotate/buildout.cfg
  ../../component/python-2.7/buildout.cfg
  ../../component/stunnel/buildout.cfg
  ../../component/varnish/buildout.cfg
  ../../component/wget/buildout.cfg

parts =
  dash
  dcron
  gcc-minimal
  slapos-toolbox
  stunnel
  varnish-3.0
  wget
# Local development
  slapos.cookbook-repository
  check-recipe
# Create instance template
  template

# Local development
[slapos.cookbook-repository]
recipe = slapos.recipe.build:gitclone
repository = https://lab.nexedi.com/nexedi/slapos.git
branch = master
git-executable = ${git:location}/bin/git

[check-recipe]
recipe = plone.recipe.command
stop-on-error = true
update-command = ${:command}
command = grep parts ${buildout:develop-eggs-directory}/slapos.cookbook.egg-link

[template-jinja2-base]
recipe = slapos.recipe.template:jinja2
mode = 640
template = ${:_profile_base_location_}/${:filename}.in
rendered = ${buildout:directory}/${:filename}
# XXX: extra-context is needed because we cannot append to a key of an extended
# section.
extra-context =
context =
    key bin_directory buildout:bin-directory
    key develop_eggs_directory buildout:develop-eggs-directory
    key eggs_directory buildout:eggs-directory
    ${:extra-context}

[template]
< = template-jinja2-base
# XXX: "template.cfg" is hardcoded in instanciation recipe
filename = template.cfg
template = ${:_profile_base_location_}/instance.cfg.in
md5sum = 8e906d749e19ee13fe5b7f4d9bfcf896
extra-context =
    key buildout_bin_directory buildout:bin-directory
    key dash_location dash:location
    key dcron_location dcron:location
    key gcc_location gcc-minimal:location
    key gzip_location gzip:location
    key logrotate_location logrotate:location
    key stunnel_location stunnel:location
    key template_varnish template-varnish:target
    key varnish_location varnish-3.0:location
    key wget_location wget:location

[template-varnish]
recipe = slapos.recipe.build:download
url = ${:_profile_base_location_}/instance-varnish.cfg.in
md5sum = 4334d900f212d170fd0ca35865879bdf
mode = 640

[eggs]
recipe = zc.recipe.egg
eggs =
  ${lxml-python:egg}
  erp5.util
  pytz
  lock_file
  inotifyx
scripts =
  web_checker_utility = erp5.util.webchecker:web_checker_utility

[slapos-toolbox]
recipe = zc.recipe.egg
eggs =
  ${lxml-python:egg}
  slapos.toolbox
scripts =
  killpidfromfile

[versions]
erp5.util = 0.4.41
slapos.toolbox = 0.40.4
