[buildout] extends = {{ logrotate_cfg }} parts += neo-admin-promise logrotate-admin [neo-admin] recipe = slapos.cookbook:neoppod.admin binary = {{bin_directory}}/neoadmin wrapper = ${directory:run}/neoadmin logfile = ${directory:log}/neoadmin.log ip = ${publish:ip} port = ${publish:port} cluster = {{ dumps(slapparameter_dict['cluster']) }} masters = {{ dumps(slapparameter_dict['masters']) }} [publish] recipe = slapos.cookbook:publish # TODO: make port a partition parameter ip = {{ (ipv4_set | list)[0] }} port = 10002 admin = ${:ip}:${:port} [directory] recipe = slapos.cookbook:mkdirectory promises = ${buildout:directory}/etc/promises run = ${buildout:directory}/etc/run log = ${buildout:directory}/var/log [neo-admin-promise] recipe = slapos.cookbook:check_port_listening hostname = ${neo-admin:ip} port = ${neo-admin:port} path = ${directory:promises}/neo-admin-promise [logrotate-admin] recipe = slapos.cookbook:logrotate.d logrotate-entries = ${logrotate:logrotate-entries} backup = ${logrotate:backup} name = neo-admin log = ${neo-admin:logfile} post = {{ bin_directory }}/slapos-kill -n neoadmin -s RTMIN+1 ${:log}