[buildout]
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/pycurl/buildout.cfg
  ../../component/stunnel/buildout.cfg
  ../../component/varnish/buildout.cfg
  ../../component/wget/buildout.cfg

parts =
  slapos-cookbook
  dash
  dcron
  gcc-minimal
  stunnel
  varnish-3.0
# Create instance template
  template

[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 = 0ea12a4ad2d2e3d406476e35b8d3e3fb
mode = 640