Commit 2aa3f5dd authored by Thomas Gambier's avatar Thomas Gambier 🚴🏼

software/caddy-frontend: Use stack/logrotate instead of redoing it.

parent 55dce2a8
...@@ -22,7 +22,7 @@ md5sum = c801b7f9f11f0965677c22e6bbe9281b ...@@ -22,7 +22,7 @@ md5sum = c801b7f9f11f0965677c22e6bbe9281b
[template-apache-frontend] [template-apache-frontend]
filename = instance-apache-frontend.cfg.in filename = instance-apache-frontend.cfg.in
md5sum = e5fa926695de04c5bff54cd8128227a3 md5sum = abbbc8f24cdef389b9b2859b0ef8dd0e
[template-apache-replicate] [template-apache-replicate]
filename = instance-apache-replicate.cfg.in filename = instance-apache-replicate.cfg.in
...@@ -30,7 +30,7 @@ md5sum = 81ad603fe0a1e29948bd81b457e8d7a4 ...@@ -30,7 +30,7 @@ md5sum = 81ad603fe0a1e29948bd81b457e8d7a4
[template-slave-list] [template-slave-list]
filename = templates/apache-custom-slave-list.cfg.in filename = templates/apache-custom-slave-list.cfg.in
md5sum = 8bed2dcba7904a765c29cf8349b7d5cc md5sum = dfbe4378610aa42f2cbc2a55d386324e
[template-slave-configuration] [template-slave-configuration]
filename = templates/custom-virtualhost.conf.in filename = templates/custom-virtualhost.conf.in
...@@ -122,4 +122,4 @@ md5sum = 38792c2dceae38ab411592ec36fff6a8 ...@@ -122,4 +122,4 @@ md5sum = 38792c2dceae38ab411592ec36fff6a8
[template-kedifa] [template-kedifa]
filename = instance-kedifa.cfg.in filename = instance-kedifa.cfg.in
md5sum = 66de9edcd66447271424be3d92c2cb90 md5sum = c20f95caf587bf4a65298bbd29ebabbd
...@@ -5,7 +5,6 @@ extends = ...@@ -5,7 +5,6 @@ extends =
../../component/dash/buildout.cfg ../../component/dash/buildout.cfg
../../component/caddy/buildout.cfg ../../component/caddy/buildout.cfg
../../component/gzip/buildout.cfg ../../component/gzip/buildout.cfg
../../component/dcron/buildout.cfg
../../component/logrotate/buildout.cfg ../../component/logrotate/buildout.cfg
../../component/rdiff-backup/buildout.cfg ../../component/rdiff-backup/buildout.cfg
../../component/trafficserver/buildout.cfg ../../component/trafficserver/buildout.cfg
...@@ -22,7 +21,6 @@ parts += ...@@ -22,7 +21,6 @@ parts +=
template-caddy-replicate template-caddy-replicate
caddy caddy
dcron
logrotate logrotate
rdiff-backup rdiff-backup
npm-modules npm-modules
...@@ -97,6 +95,7 @@ context = ...@@ -97,6 +95,7 @@ context =
[template-frontend-parameter-section] [template-frontend-parameter-section]
common_profile = ${template-common:rendered} common_profile = ${template-common:rendered}
logrotate_base_instance = ${template-logrotate-base:rendered}
bin_directory = ${buildout:bin-directory} bin_directory = ${buildout:bin-directory}
...@@ -105,7 +104,6 @@ caddy = ${caddy:output} ...@@ -105,7 +104,6 @@ caddy = ${caddy:output}
caddy_location = ${caddy:location} caddy_location = ${caddy:location}
curl = ${curl:location} curl = ${curl:location}
dash = ${dash:location} dash = ${dash:location}
dcron = ${dcron:location}
gzip = ${gzip:location} gzip = ${gzip:location}
logrotate = ${logrotate:location} logrotate = ${logrotate:location}
openssl = ${openssl:location}/bin/openssl openssl = ${openssl:location}/bin/openssl
......
...@@ -5,13 +5,11 @@ ...@@ -5,13 +5,11 @@
extends = extends =
{{ parameter_dict['common_profile'] }} {{ parameter_dict['common_profile'] }}
{{ parameter_dict['monitor_template'] }} {{ parameter_dict['monitor_template'] }}
{{ parameter_dict['logrotate_base_instance'] }}
parts = parts =
directory directory
configtest configtest
logrotate
cron
cron-entry-logrotate
logrotate-entry-caddy logrotate-entry-caddy
logrotate-entry-nginx logrotate-entry-nginx
caddy-frontend caddy-frontend
...@@ -78,12 +76,6 @@ etc-run = ${:etc}/run ...@@ -78,12 +76,6 @@ etc-run = ${:etc}/run
promise = ${:etc}/promise promise = ${:etc}/promise
plugin = ${:etc}/plugin plugin = ${:etc}/plugin
logrotate-backup = ${:backup}/logrotate
logrotate-entries = ${:etc}/logrotate.d
cron-entries = ${:etc}/cron.d
crontabs = ${:etc}/crontabs
cronstamps = ${:etc}/cronstamps
ca-dir = ${:srv}/ssl ca-dir = ${:srv}/ssl
# BBB: SlapOS Master non-zero knowledge BEGIN # BBB: SlapOS Master non-zero knowledge BEGIN
bbb-ssl-dir = ${:srv}/bbb-ssl bbb-ssl-dir = ${:srv}/bbb-ssl
...@@ -148,6 +140,7 @@ context = ...@@ -148,6 +140,7 @@ context =
import json_module json import json_module json
import os_module os import os_module os
raw common_profile {{ parameter_dict['common_profile'] }} raw common_profile {{ parameter_dict['common_profile'] }}
raw logrotate_base_instance {{ parameter_dict['logrotate_base_instance'] }}
key slap_software_type :slap_software_type key slap_software_type :slap_software_type
key slapparameter_dict :slapparameter_dict key slapparameter_dict :slapparameter_dict
section directory directory section directory directory
...@@ -266,7 +259,6 @@ extra-context = ...@@ -266,7 +259,6 @@ extra-context =
key template_notebook_slave_configuration software-release-path:template-nginx-notebook-slave-virtualhost key template_notebook_slave_configuration software-release-path:template-nginx-notebook-slave-virtualhost
key software_type :software_type key software_type :software_type
key frontend_lazy_graceful_reload frontend-caddy-lazy-graceful:rendered key frontend_lazy_graceful_reload frontend-caddy-lazy-graceful:rendered
section logrotate_dict logrotate
section frontend_configuration frontend-configuration section frontend_configuration frontend-configuration
section caddy_configuration caddy-configuration section caddy_configuration caddy-configuration
section nginx_configuration nginx-configuration section nginx_configuration nginx-configuration
...@@ -418,64 +410,19 @@ extra-context = ...@@ -418,64 +410,19 @@ extra-context =
key content :content key content :content
# BBB: SlapOS Master non-zero knowledge END # BBB: SlapOS Master non-zero knowledge END
[cron]
recipe = slapos.cookbook:cron
dcrond-binary = {{ parameter_dict['dcron'] }}/sbin/crond
cron-entries = ${directory:cron-entries}
crontabs = ${directory:crontabs}
cronstamps = ${directory:cronstamps}
catcher = ${cron-simplelogger:wrapper}
binary = ${directory:service}/crond
[cron-simplelogger]
recipe = slapos.cookbook:simplelogger
wrapper = ${directory:bin}/cron_simplelogger
log = ${directory:log}/cron.log
[cron-entry-logrotate]
<= cron
recipe = slapos.cookbook:cron.d
name = logrotate
frequency = 0 0 * * *
command = ${logrotate:wrapper}
# Deploy Logrotate
[logrotate]
recipe = slapos.cookbook:logrotate
# Binaries
logrotate-binary = {{ parameter_dict['logrotate'] }}/sbin/logrotate
gzip-binary = {{ parameter_dict['gzip'] }}/bin/gzip
gunzip-binary = {{ parameter_dict['gzip'] }}/bin/gunzip
# Directories
wrapper = ${directory:bin}/logrotate
conf = ${directory:etc}/logrotate.conf
logrotate-entries = ${directory:logrotate-entries}
backup = ${directory:logrotate-backup}
state-file = ${directory:srv}/logrotate.status
[logrotate-entry-caddy] [logrotate-entry-caddy]
<= logrotate <= logrotate-entry-base
recipe = slapos.cookbook:logrotate.d
name = caddy name = caddy
log = ${caddy-configuration:error-log} ${caddy-configuration:access-log} log = ${caddy-configuration:error-log} ${caddy-configuration:access-log}
frequency = daily rotate-num = 30
rotatep-num = 30
post = ${frontend-caddy-lazy-graceful:rendered} & post = ${frontend-caddy-lazy-graceful:rendered} &
sharedscripts = true
notifempty = true
create = true
[logrotate-entry-nginx] [logrotate-entry-nginx]
<= logrotate <= logrotate-entry-base
recipe = slapos.cookbook:logrotate.d
name = caddy-nginx name = caddy-nginx
log = ${nginx-configuration:error_log} ${nginx-configuration:access_log} log = ${nginx-configuration:error_log} ${nginx-configuration:access_log}
frequency = daily rotate-num = 30
rotatep-num = 30
post = ${nginx-configuration:nginx-graceful-command} post = ${nginx-configuration:nginx-graceful-command}
sharedscripts = true
notifempty = true
create = true
################# #################
# Trafficserver # Trafficserver
...@@ -740,7 +687,7 @@ monitor-httpd-port = {{ monitor_httpd_port | int }} ...@@ -740,7 +687,7 @@ monitor-httpd-port = {{ monitor_httpd_port | int }}
[monitor-conf-parameters] [monitor-conf-parameters]
private-path-list += private-path-list +=
${directory:logrotate-backup} ${logrotate-directory:logrotate-backup}
[monitor-traffic-summary-last-stats-wrapper] [monitor-traffic-summary-last-stats-wrapper]
......
...@@ -51,9 +51,6 @@ service = ${:etc}/service ...@@ -51,9 +51,6 @@ service = ${:etc}/service
etc-run = ${:etc}/run etc-run = ${:etc}/run
promise = ${:etc}/promise promise = ${:etc}/promise
logrotate-backup = ${:backup}/logrotate
logrotate-entries = ${:etc}/logrotate.d
cron-entries = ${:etc}/cron.d cron-entries = ${:etc}/cron.d
crontabs = ${:etc}/crontabs crontabs = ${:etc}/crontabs
cronstamps = ${:etc}/cronstamps cronstamps = ${:etc}/cronstamps
......
...@@ -24,12 +24,6 @@ context = ...@@ -24,12 +24,6 @@ context =
raw common_profile {{ common_profile }} raw common_profile {{ common_profile }}
${:extra-context} ${:extra-context}
{% do logrotate_dict.pop('recipe') %}
[logrotate]
{% for key, value in logrotate_dict.iteritems() %}
{{ key }} = {{ value }}
{% endfor %}
post = {{ frontend_lazy_graceful_reload }} & post = {{ frontend_lazy_graceful_reload }} &
frequency = daily frequency = daily
rotatep-num = 30 rotatep-num = 30
...@@ -82,7 +76,7 @@ output = {{ plugin_directory }}/${:name} ...@@ -82,7 +76,7 @@ output = {{ plugin_directory }}/${:name}
{% do part_list.extend([slave_ln_section]) %} {% do part_list.extend([slave_ln_section]) %}
{% do part_list.extend([slave_logrotate_section, slave_section_title]) %} {% do part_list.extend([slave_logrotate_section, slave_section_title]) %}
{% set slave_log_folder = logrotate_dict.get('backup') + '/' + slave_reference + "-logs" %} {% set slave_log_folder = '${logrotate-directory:logrotate-backup}/' + slave_reference + "-logs" %}
{# Pass HTTP2 switch #} {# Pass HTTP2 switch #}
{% do slave_instance.__setitem__('enable_http2_by_default', enable_http2_by_default) %} {% do slave_instance.__setitem__('enable_http2_by_default', enable_http2_by_default) %}
...@@ -161,8 +155,7 @@ extra-context = ...@@ -161,8 +155,7 @@ extra-context =
{# Set slave logrotate entry #} {# Set slave logrotate entry #}
[{{slave_logrotate_section}}] [{{slave_logrotate_section}}]
<= logrotate <= logrotate-entry-base
recipe = slapos.cookbook:logrotate.d
name = ${:_buildout_section_name_} name = ${:_buildout_section_name_}
log = {{slave_parameter_dict.get('access_log')}} {{slave_parameter_dict.get('error_log')}} log = {{slave_parameter_dict.get('access_log')}} {{slave_parameter_dict.get('error_log')}}
backup = {{ slave_log_folder }} backup = {{ slave_log_folder }}
...@@ -501,7 +494,10 @@ csr_id-url = https://[${expose-csr_id-configuration:ip}]:${expose-csr_id-configu ...@@ -501,7 +494,10 @@ csr_id-url = https://[${expose-csr_id-configuration:ip}]:${expose-csr_id-configu
csr_id-certificate = ${get-csr_id-certificate:certificate} csr_id-certificate = ${get-csr_id-certificate:certificate}
[buildout] [buildout]
extends = {{ common_profile }} extends =
{{ common_profile }}
{{ logrotate_base_instance }}
parts += parts +=
{% for part in part_list %} {% for part in part_list %}
{{ ' %s' % part }} {{ ' %s' % part }}
......
...@@ -22,4 +22,4 @@ md5sum = 117e46af6d9d31c09eeb86089d11407e ...@@ -22,4 +22,4 @@ md5sum = 117e46af6d9d31c09eeb86089d11407e
[template-logrotate-base] [template-logrotate-base]
filename = instance-logrotate-base.cfg.in filename = instance-logrotate-base.cfg.in
md5sum = f56b86a0742afff931a5e972114566e4 md5sum = 2ea59319080a4bec7568dcfec15b701e
...@@ -46,11 +46,12 @@ context = ...@@ -46,11 +46,12 @@ context =
# User may override keys: # User may override keys:
# - "post" with commands to execute after rotation # - "post" with commands to execute after rotation
# - "pre" with commands to execute before rotation # - "pre" with commands to execute before rotation
# - "backup" with directory where to store logs
recipe = slapos.recipe.template:jinja2 recipe = slapos.recipe.template:jinja2
template = {{ logrotate_entry_template }} template = {{ logrotate_entry_template }}
rendered = ${logrotate-conf-parameter:logrotate-entries}/${:name} rendered = ${logrotate-conf-parameter:logrotate-entries}/${:name}
context = context =
key backup logrotate-directory:logrotate-backup key backup :backup
key log :log key log :log
key post :post key post :post
key pre :pre key pre :pre
...@@ -61,6 +62,7 @@ post = ...@@ -61,6 +62,7 @@ post =
pre = pre =
frequency = daily frequency = daily
rotate-num = 3650 rotate-num = 3650
backup = ${logrotate-directory:logrotate-backup}
nocompress = nocompress =
[logrotate] [logrotate]
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment