[slap-parameters] recipe = slapos.cookbook:slapconfiguration computer = $${slap-connection:computer-id} partition = $${slap-connection:partition-id} url = $${slap-connection:server-url} key = $${slap-connection:key-file} cert = $${slap-connection:cert-file} [directory] home = $${buildout:directory} etc = $${:home}/etc bin = $${:home}/bin srv = $${:home}/srv var = $${:home}/var ca-dir = $${:srv}/ssl cron-entries = $${:etc}/cron.d crontabs = $${:etc}/crontabs cronstamps = $${:etc}/cronstamps log = $${:var}/log monitor = $${:etc}/monitor monitor-result = $${:var}/monitor promise = $${:etc}/promise run = $${:etc}/run service = $${:etc}/service/ tmp = $${:home}/tmp www = $${:var}/www [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:wrapper} binary = $${directory:service}/crond # Add log to cron [cron-simplelogger] recipe = slapos.cookbook:simplelogger wrapper = $${directory:bin}/cron_simplelogger log = $${directory:log}/cron.log [cron-entry-monitor] <= cron recipe = slapos.cookbook:cron.d name = launch-monitor frequency = * * * * * command = $${deploy-monitor-script:rendered} [cron-entry-rss] <= cron recipe = slapos.cookbook:cron.d name = build-rss frequency = * * * * * command = $${make-rss:output} [deploy-monitor-script] recipe = slapos.recipe.template:jinja2 template = ${monitor-bin:location}/${monitor-bin:filename} rendered = $${directory:bin}/monitor.py mode = 0744 context = section directory directory raw monitoring_file_json $${directory:monitor-result}/monitor.json raw monitoring_file_bool $${directory:monitor-result}/monitor.bool [deploy-rss-script] recipe = hexagonit.recipe.download url = ${rss-bin:destination}/${rss-bin:filename} destination = $${directory:bin} filename = ${rss-bin:filename} #md5sum = mode = 0744 download-only = true [make-rss] recipe = slapos.recipe.template url = ${make-rss-script:output} output = $${directory:bin}/make-rss.sh #md5sum = mode = 0744 [tempdirectory] recipe = slapos.cookbook:mkdirectory client_body_temp_path = $${directory:tmp}/client_body_temp_path proxy_temp_path = $${directory:tmp}/proxy_temp_path fastcgi_temp_path = $${directory:tmp}/fastcgi_temp_path uwsgi_temp_path = $${directory:tmp}/uwsgi_temp_path scgi_temp_path = $${directory:tmp}/scgi_temp_path [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/ [certificate-authority] recipe = slapos.cookbook:certificate_authority openssl-binary = ${openssl:location}/bin/openssl ca-dir = $${directory:ca-dir} requests-directory = $${cadirectory:requests} wrapper = $${directory:service}/certificate_authority ca-private = $${cadirectory:private} ca-certs = $${cadirectory:certs} ca-newcerts = $${cadirectory:newcerts} ca-crl = $${cadirectory:crl} [ca-nginx] <= certificate-authority recipe = slapos.cookbook:certificate_authority.request key-file = $${cadirectory:certs}/nginx_rss.key cert-file = $${cadirectory:certs}/nginx_rss.crt executable = $${nginx-parameters:bin_launcher} wrapper = $${directory:service}/nginx-rss # Put domain name name = example.com [nginx-parameters] nb_workers = 2 port = 9685 global-ip = $${slap-parameters:ipv6} # SSL ssl-certificate = $${ca-nginx:cert-file} ssl-key = $${ca-nginx:key-file} # Log path_pid = $${directory:run}/nginx.pid path_log = $${directory:log}/nginx.log path_access_log = $${directory:log}/nginx.access.log path_error_log = $${directory:log}/nginx.error.log path_tmp = $${directory:tmp} # Config files nginx_conf = $${nginx-conf:rendered} # Executables bin_nginx = ${nginx:location}/sbin/nginx bin_launcher = $${directory:bin}/nginx-launcher www = $${directory:www} [nginx-conf] recipe = slapos.recipe.template:jinja2 template = ${template-nginx-conf:location}/${template-nginx-conf:filename} rendered = $${directory:etc}/nginx_rss.conf context = section param_nginx nginx-parameters section param_tempdir tempdirectory [nginx-service] recipe = slapos.cookbook:wrapper wrapper-path = $${nginx-parameters:bin_launcher} command-line = $${nginx-parameters:bin_nginx} -c $${nginx-parameters:nginx_conf}