############################# # # Instanciate zeo # # zeo-id -- local id of the requested zeo (1,2,3,...) # # zeo-port -- ip port to use to run the process # # storage_list -- string with list of all resquested storage # Example: event_module person_module # ############################# [buildout] parts = logrotate cron cron-entry-logrotate certificate-authority tidstorage cron-entry-tidstorage-backup logrotate-entry-tidstorage binary-link erp5-update %(part_list)s eggs-directory = ${buildout:eggs-directory} develop-eggs-directory = ${buildout:develop-eggs-directory} offline = true [tidstorage] recipe = slapos.cookbook:tidstorage known-tid-storage-identifier-dict = %(known_tid_storage_identifier_dict)s base-url = http://$${%(haproxy_section)s:ip}:$${%(haproxy_section)s:port}/%%s/serialize configuration-path = $${rootdirectory:etc}/tidstorage.py ip = $${slap-network-information:local-ipv4} port = 6001 timestamp-file-path = $${directory:tidstorage}/repozo_tidstorage_timestamp.log logfile-name = $${basedirectory:log}/tidstorage.log pidfile-name = $${basedirectory:run}/tidstorage.pid status-file = $${directory:tidstorage}/tidstorage.tid tidstorage-repozo-binary = ${buildout:bin-directory}/tidstorage_repozo tidstoraged-binary = ${buildout:bin-directory}/tidstoraged repozo-binary = ${buildout:bin-directory}/repozo tidstorage-wrapper = $${basedirectory:services}/tidstoraged repozo-wrapper = $${buildout:bin-directory}/tidstorage-repozo [cron-entry-tidstorage-backup] <= cron recipe = slapos.cookbook:cron.d name = tidstorage frequency = 0 0 * * * command = $${tidstorage:repozo-wrapper} [logrotate-entry-tidstorage] <= logrotate recipe = slapos.cookbook:logrotate.d name = tidstorage log = $${tidstorage:logfile-name} post = ${buildout:bin-directory}/killpidfromfile $${tidstorage:pidfile-name} SIGHUP [directory] recipe = slapos.cookbook:mkdirectory cron-entries = $${rootdirectory:etc}/cron.d/ crontabs = $${rootdirectory:etc}/crontabs/ cronstamps = $${rootdirectory:etc}/cronstamps/ cronoutput = $${basedirectory:log}/cron/ logrotate-backup = $${basedirectory:backup}/logrotate/ logrotate-entries = $${rootdirectory:etc}/logrotate.d/ [cron] recipe = slapos.cookbook:cron dcrond-binary = ${dcron:location}/sbin/crond cron-entries = $${directory:cron-entries} crontabs = $${directory:crontabs} cronstamps = $${directory:cronstamps} catcher = $${cron-simplelogger:binary} binary = $${basedirectory:services}/crond [cron-simplelogger] recipe = slapos.cookbook:simplelogger binary = $${rootdirectory:bin}/cron_simplelogger output = $${directory:cronoutput} [cron-entry-logrotate] <= cron recipe = slapos.cookbook:cron.d name = logrotate frequency = 0 0 * * * command = $${logrotate:wrapper} # rest of parts are candidates for some generic stuff [logrotate] recipe = slapos.cookbook:logrotate # Binaries logrotate-binary = ${logrotate:location}/usr/sbin/logrotate gzip-binary = ${gzip:location}/bin/gzip gunzip-binary = ${gzip:location}/bin/gunzip # Directories wrapper = $${rootdirectory:bin}/logrotate conf = $${rootdirectory:etc}/logrotate.conf logrotate-entries = $${directory:logrotate-entries} backup = $${directory:logrotate-backup} state-file = $${rootdirectory:srv}/logrotate.status [zeo-instance-entry-common] recipe = slapos.cookbook:zeo ip = $${slap-network-information:local-ipv4} binary-path = ${buildout:bin-directory}/runzeo [certificate-authority] recipe = slapos.cookbook:certificate_authority openssl-binary = ${openssl:location}/bin/openssl ca-dir = $${directory:ca-dir} requests-directory = $${cadirectory:requests} wrapper = $${basedirectory:services}/ca ca-private = $${cadirectory:private} ca-certs = $${cadirectory:certs} ca-newcerts = $${cadirectory:newcerts} ca-crl = $${cadirectory:crl} [cadirectory] recipe = slapos.cookbook:mkdirectory requests = $${directory:ca-dir}/requests/ private = $${directory:ca-dir}/private/ certs = $${directory:ca-dir}/certs/ newcerts = $${directory:ca-dir}/newcerts/ crl = $${directory:ca-dir}/crl/ [rootdirectory] recipe = slapos.cookbook:mkdirectory etc = $${buildout:directory}/etc/ var = $${buildout:directory}/var/ srv = $${buildout:directory}/srv/ bin = $${buildout:directory}/bin/ tmp = $${buildout:directory}/tmp/ [basedirectory] recipe = slapos.cookbook:mkdirectory log = $${rootdirectory:var}/log/ services = $${rootdirectory:etc}/run/ run = $${rootdirectory:var}/run/ backup = $${rootdirectory:srv}/backup/ [directory] recipe = slapos.cookbook:mkdirectory tidstorage = $${rootdirectory:srv}/tidstorage/ zodb = $${rootdirectory:srv}/zodb/ zodb-backup = $${basedirectory:backup}/zodb instance = $${rootdirectory:srv}/erp5shared/ instance-etc = $${:instance}/etc apache-conf = $${rootdirectory:etc}/apache instance-etc-package-include = $${:instance}/etc/package-include # because of bug in slapos.recipe.template keys are lowercased instance-document = $${:instance}/Document instance-propertysheet = $${:instance}/PropertySheet instance-products = $${:instance}/Products instance-extensions = $${:instance}/Extensions instance-constraint = $${:instance}/Constraint instance-import = $${:instance}/import instance-lib = $${:instance}/lib instance-tests = $${:instance}/tests ca-dir = $${rootdirectory:srv}/ssl/ cron-entries = $${rootdirectory:etc}/cron.d/ crontabs = $${rootdirectory:etc}/crontabs/ cronstamps = $${rootdirectory:etc}/cronstamps/ cronoutput = $${basedirectory:log}/cron/ logrotate-backup = $${basedirectory:backup}/logrotate/ logrotate-entries = $${rootdirectory:etc}/logrotate.d/ [binary-link] recipe = slapos.cookbook:symbolic.link target-directory = $${rootdirectory:bin} link-binary = ${coreutils:location}/bin/basename ${coreutils:location}/bin/cat ${coreutils:location}/bin/cp ${coreutils:location}/bin/ls ${coreutils:location}/bin/tr ${coreutils:location}/bin/uname ${git:location}/bin/git ${graphviz:location}/bin/dot ${grep:location}/bin/grep ${imagemagick:location}/bin/convert ${imagemagick:location}/bin/identify ${mariadb:location}/bin/mysql ${mariadb:location}/bin/mysqldump ${pdftk:location}/bin/pdftk ${sed:location}/bin/sed ${tesseract:location}/bin/tesseract ${w3m:location}/bin/w3m ${poppler:location}/bin/pdfinfo ${poppler:location}/bin/pdftotext ${poppler:location}/bin/pdftohtml [erp5-update] recipe = slapos.cookbook:erp5.update url = http://$${%(zope_section)s:user}:$${%(zope_section)s:password}@$${%(haproxy_section)s:ip}:$${%(haproxy_section)s:port}/ mysql-url = %(mysql-url)s kumofs-url = %(kumofs-url)s memcached-url = %(memcached-url)s cloudooo-url = %(cloudooo-url)s site-id = %(site_id)s openssl-binary = ${openssl:location}/bin/openssl