[buildout]
parts =
  condor
  app-submit
  publish-connection-informations

eggs-directory = ${buildout:eggs-directory}
develop-eggs-directory = ${buildout:develop-eggs-directory}
#Enable download
newest = false
offline = false

# Create all needed directories
[rootdirectory]
recipe = slapos.cookbook:mkdirectory
etc = $${buildout:directory}/etc/
var = $${buildout:directory}/var/
condor = $${buildout:directory}/condor/
job = $${buildout:directory}/jobs/
bin = $${buildout:directory}/bin/
sbin = $${buildout:directory}/sbin/
srv = $${buildout:directory}/srv/

[basedirectory]
recipe = slapos.cookbook:mkdirectory
log = $${rootdirectory:var}/log/
scripts = $${rootdirectory:etc}/run/
run = $${rootdirectory:var}/run/
backup = $${rootdirectory:srv}/backup/
promises = $${rootdirectory:etc}/promise/

[wrapperdirectory]
recipe = slapos.cookbook:mkdirectory
wrapper = $${basedirectory:run}/condor

[condor]
recipe = slapos.cookbook:condor
wrapper-dir = $${basedirectory:scripts}
ip = $${slap-network-information:global-ipv6}
package = ${condor:location}
rootdirectory = $${buildout:directory}
local-dir = $${rootdirectory:condor}
job-dir = $${rootdirectory:job}
java-bin = ${java:location}/bin
bin = $${wrapperdirectory:wrapper}/bin/
sbin = $${wrapperdirectory:wrapper}/sbin/
dash = ${dash:location}/bin/dash

environment = 
  LD_LIBRARY_PATH=${libexpat:location}/lib:${kerberos:location}/lib:${openldap:location}/lib:${zlib:location}/lib
  PATH=${perl:location}/bin:${java:location}/bin:${kerberos:location}/bin:${openldap:location}/bin:%(PATH)s
  HOME=$${rootdirectory:condor}
  HOSTNAME=$${slap-parameter:condor-host}

#Condor user parameter
condor_host = $${slap-parameter:condor-host}
collector_name = $${slap-parameter:condor-collector-name}
#Condor machine role: worker=submit,execute manager=manager,submit
machine-role = $${slap-parameter:condor-role}
disk-space = $${slap-parameter:condor-diskspace}
allowed-write = $${slap-parameter:condor-allowed-write}
admin-email = $${slap-parameter:condor-admin-email}

[app-submit]
<= condor
recipe = slapos.cookbook:condor.submit
condor-app-list = $${slap-parameter:condor-app-list}

# Publish all instance parameters (url of instance)
[publish-connection-informations]
recipe = slapos.cookbook:publish
condor_ipv6_address = $${condor:ip}
condor_instance_type = $${condor:machine-role}
condor_host = $${condor:condor_host}

[slap-parameter]
# Default values if not specified
condor-host = [$${slap-network-information:global-ipv6}]
condor-collector-name = SLAPOS-CONDOR-POOL
condor-role = manager
condor-diskspace = 5
condor-admin-email = 
condor-allowed-write = $${:condor-host}
#submit application, using Json application list
condor-app-list = ${condor-application:list}