Commit a61a1add authored by Alain Takoudjou's avatar Alain Takoudjou

Update Release Candidate

parents a7c16f8c 1f2c7f5e
...@@ -290,8 +290,6 @@ Request slave frontend instance so that https://[1:2:3:4:5:6:7:8]:1234 will be ...@@ -290,8 +290,6 @@ Request slave frontend instance so that https://[1:2:3:4:5:6:7:8]:1234 will be
ProxyPreserveHost On ProxyPreserveHost On
ProxyTimeout 600 ProxyTimeout 600
RewriteEngine On RewriteEngine On
# Remove "Secure" from cookies, as backend may be https
Header edit Set-Cookie "(?i)^(.+);secure$" "$1"
# Not using HTTPS? Ask that guy over there. # Not using HTTPS? Ask that guy over there.
# Dummy redirection to https. Note: will work only if https listens # Dummy redirection to https. Note: will work only if https listens
# on standard port (443). # on standard port (443).
...@@ -340,9 +338,6 @@ Request slave frontend instance so that https://[1:2:3:4:5:6:7:8]:1234 will be ...@@ -340,9 +338,6 @@ Request slave frontend instance so that https://[1:2:3:4:5:6:7:8]:1234 will be
ProxyTimeout 600 ProxyTimeout 600
RewriteEngine On RewriteEngine On
# Remove "Secure" from cookies, as backend may be https
Header edit Set-Cookie "(?i)^(.+);secure$" "$1"
# Not using HTTPS? Ask that guy over there. # Not using HTTPS? Ask that guy over there.
# Dummy redirection to https. Note: will work only if https listens # Dummy redirection to https. Note: will work only if https listens
# on standard port (443). # on standard port (443).
...@@ -416,8 +411,6 @@ the proxy:: ...@@ -416,8 +411,6 @@ the proxy::
LogLevel info LogLevel info
LogFormat "%%h %%l %%{REMOTE_USER}i %%t \"%%r\" %%>s %%b \"%%{Referer}i\" \"%%{User-Agent}i\" %%D" combined LogFormat "%%h %%l %%{REMOTE_USER}i %%t \"%%r\" %%>s %%b \"%%{Referer}i\" \"%%{User-Agent}i\" %%D" combined
CustomLog "%(access_log)s" combined CustomLog "%(access_log)s" combined
# Remove "Secure" from cookies, as backend may be https
Header edit Set-Cookie "(?i)^(.+);secure$" "$1"
# Not using HTTPS? Ask that guy over there. # Not using HTTPS? Ask that guy over there.
# Dummy redirection to https. Note: will work only if https listens # Dummy redirection to https. Note: will work only if https listens
# on standard port (443). # on standard port (443).
......
...@@ -18,7 +18,7 @@ md5sum = f686f765e55d1dce2e55a400f0714b3e ...@@ -18,7 +18,7 @@ md5sum = f686f765e55d1dce2e55a400f0714b3e
[template-apache-frontend] [template-apache-frontend]
filename = instance-apache-frontend.cfg filename = instance-apache-frontend.cfg
md5sum = b6a2c860ea1cd4bc9d185c7108c52d0a md5sum = d6570c7a7e3c48efa7305677fe7c7ceb
[template-apache-replicate] [template-apache-replicate]
filename = instance-apache-replicate.cfg.in filename = instance-apache-replicate.cfg.in
...@@ -54,7 +54,7 @@ md5sum = d98a01182f38868612948c87d5231428 ...@@ -54,7 +54,7 @@ md5sum = d98a01182f38868612948c87d5231428
[template-default-slave-virtualhost] [template-default-slave-virtualhost]
filename = templates/default-virtualhost.conf.in filename = templates/default-virtualhost.conf.in
md5sum = 4a2db0b69d2941cdf08ebf55575d8ad8 md5sum = 7890469ecc5e7f46be5b2c3074a09b52
[template-cached-slave-virtualhost] [template-cached-slave-virtualhost]
filename = templates/cached-virtualhost.conf.in filename = templates/cached-virtualhost.conf.in
...@@ -82,7 +82,7 @@ md5sum = 117238225b3fc3c5b5be381815f44c67 ...@@ -82,7 +82,7 @@ md5sum = 117238225b3fc3c5b5be381815f44c67
[template-nginx-configuration] [template-nginx-configuration]
filename = templates/nginx.cfg.in filename = templates/nginx.cfg.in
md5sum = 18633ce55e53340efa1ba7693aac4152 md5sum = f334ef32234771aee69c06f843da1980
[template-nginx-eventsource-slave-virtualhost] [template-nginx-eventsource-slave-virtualhost]
filename = templates/nginx-eventsource-slave.conf.in filename = templates/nginx-eventsource-slave.conf.in
......
...@@ -676,14 +676,31 @@ curl_path = ${curl:location}/bin/curl ...@@ -676,14 +676,31 @@ curl_path = ${curl:location}/bin/curl
# #
[nginx-frontend] [nginx-frontend]
recipe = slapos.cookbook:wrapper recipe = slapos.cookbook:wrapper
command-line = ${nginx-push-stream:location}/sbin/nginx -c $${nginx-configuration:output} command-line = ${nginx-push-stream:location}/sbin/nginx -c $${dynamic-nginx-frontend-template:rendered}
wrapper-path = $${directory:service}/frontend_nginx wrapper-path = $${directory:service}/frontend_nginx
[nginx-configuration] [dynamic-nginx-frontend-template]
recipe = slapos.recipe.template < = jinja2-template-base
url = ${template-nginx-configuration:output} template = ${template-nginx-configuration:output}
output = $${directory:etc}/nginx.cfg rendered = $${directory:etc}/nginx.cfg
mode = 0600 mode = 0600
extra-context =
key ip nginx-configuration:ip
key local_ip nginx-configuration:local_ip
key port nginx-configuration:port
key plain_port nginx-configuration:plain_port
key worker_processes nginx-configuration:worker_processes
key pidfile nginx-configuration:pid-file
key worker_connections nginx-configuration:worker_connections
key error_log nginx-configuration:error_log
key access_log nginx-configuration:access_log
key ssl_certificate ca-frontend:cert-file
key ssl_key ca-frontend:key-file
key varnginx directory:varnginx
key slave_configuration_directory nginx-configuration:slave-configuration-directory
key document_root apache-directory:document-root
[nginx-configuration]
access_log = $${directory:log}/nginx-access.log access_log = $${directory:log}/nginx-access.log
error_log = $${directory:log}/nginx-error.log error_log = $${directory:log}/nginx-error.log
ip = $${slap-network-information:global-ipv6} ip = $${slap-network-information:global-ipv6}
...@@ -695,7 +712,7 @@ worker_connections = 1024 ...@@ -695,7 +712,7 @@ worker_connections = 1024
slave-configuration-directory = $${apache-directory:nginx-slave-configuration} slave-configuration-directory = $${apache-directory:nginx-slave-configuration}
pid-file = $${directory:run}/nginx.pid pid-file = $${directory:run}/nginx.pid
nginx-graceful-command = $${:nginx-configuration-verification}; if [ $? -eq 0 ]; then kill -HUP $(cat $${:pid-file}); fi nginx-graceful-command = $${:nginx-configuration-verification}; if [ $? -eq 0 ]; then kill -HUP $(cat $${:pid-file}); fi
nginx-configuration-verification = ${nginx-push-stream:location}/sbin/nginx -t -c $${nginx-configuration:output} nginx-configuration-verification = ${nginx-push-stream:location}/sbin/nginx -t -c $${dynamic-nginx-frontend-template:rendered}
[frontend-nginx-graceful] [frontend-nginx-graceful]
< = jinja2-template-base < = jinja2-template-base
......
...@@ -123,9 +123,6 @@ ...@@ -123,9 +123,6 @@
LogFormat "%h %l %{REMOTE_USER}i %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %D" combined LogFormat "%h %l %{REMOTE_USER}i %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %D" combined
CustomLog "{{ slave_parameter.get('access_log') }}" combined CustomLog "{{ slave_parameter.get('access_log') }}" combined
# Remove "Secure" from cookies, as backend may be https
Header edit Set-Cookie "(?i)^(.+);secure$" "$1"
{% if enable_h2 %} {% if enable_h2 %}
Protocols h2 http/1.1 Protocols h2 http/1.1
{% endif -%} {% endif -%}
......
daemon off; # run in the foreground so supervisord can look after it daemon off; # run in the foreground so supervisord can look after it
worker_processes $${nginx-configuration:worker_processes}; worker_processes {{ worker_processes }};
pid $${nginx-configuration:pid-file}; pid {{ pidfile }};
events { events {
worker_connections $${nginx-configuration:worker_connections}; worker_connections {{ worker_connections }};
# multi_accept on; # multi_accept on;
} }
error_log $${nginx-configuration:error_log}; error_log {{ error_log }};
http { http {
...@@ -23,17 +23,17 @@ http { ...@@ -23,17 +23,17 @@ http {
types_hash_max_size 2048; types_hash_max_size 2048;
server_tokens off; server_tokens off;
error_log $${nginx-configuration:error_log}; error_log {{ error_log }};
log_format custom '$remote_addr - $remote_user $time_local $status $body_bytes_sent "$http_referer" "$http_user_agent" $request_time'; log_format custom '$remote_addr - $remote_user $time_local $status $body_bytes_sent "$http_referer" "$http_user_agent" $request_time';
access_log $${nginx-configuration:access_log} custom; access_log {{ access_log }} custom;
# server_names_hash_bucket_size 64; # server_names_hash_bucket_size 64;
# server_name_in_redirect off; # server_name_in_redirect off;
default_type application/octet-stream; default_type application/octet-stream;
ssl_certificate $${ca-frontend:cert-file}; ssl_certificate {{ ssl_certificate }};
ssl_certificate_key $${ca-frontend:key-file}; ssl_certificate_key {{ ssl_key }};
## ##
# Gzip Settings # Gzip Settings
...@@ -53,18 +53,18 @@ http { ...@@ -53,18 +53,18 @@ http {
## ##
push_stream_shared_memory_size 32m; push_stream_shared_memory_size 32m;
fastcgi_temp_path $${directory:varnginx} 1 2; fastcgi_temp_path {{ varnginx }} 1 2;
uwsgi_temp_path $${directory:varnginx} 1 2; uwsgi_temp_path {{ varnginx }} 1 2;
scgi_temp_path $${directory:varnginx} 1 2; scgi_temp_path {{ varnginx }} 1 2;
client_body_temp_path $${directory:varnginx} 1 2; client_body_temp_path {{ varnginx }} 1 2;
proxy_temp_path $${directory:varnginx} 1 2; proxy_temp_path {{ varnginx }} 1 2;
include $${nginx-configuration:slave-configuration-directory}/*.conf; include {{ slave_configuration_directory }}/*.conf;
server { server {
listen [$${nginx-configuration:ip}]:$${nginx-configuration:plain_port}; listen [{{ ip }}]:{{ plain_port }};
listen $${nginx-configuration:local_ip}:$${nginx-configuration:plain_port}; listen {{ local_ip }}:{{ plain_port }};
## Serve an error 204 (No Content) for favicon.ico ## Serve an error 204 (No Content) for favicon.ico
...@@ -73,14 +73,14 @@ http { ...@@ -73,14 +73,14 @@ http {
} }
location / { location / {
root $${apache-directory:document-root}; root {{ document_root }};
index notfound.html; index notfound.html;
} }
} }
server { server {
listen [$${nginx-configuration:ip}]:$${nginx-configuration:port} ssl; listen [{{ ip }}]:{{ port }} ssl;
listen $${nginx-configuration:local_ip}:$${nginx-configuration:port} ssl; listen {{ local_ip }}:{{ port }} ssl;
ssl on; ssl on;
...@@ -96,7 +96,7 @@ http { ...@@ -96,7 +96,7 @@ http {
} }
location / { location / {
root $${apache-directory:document-root}; root {{ document_root }};
index notfound.html; index notfound.html;
} }
} }
......
...@@ -22,7 +22,7 @@ md5sum = 04e31ac503753f89510dd412b4680c56 ...@@ -22,7 +22,7 @@ md5sum = 04e31ac503753f89510dd412b4680c56
[template-runner-import-script] [template-runner-import-script]
filename = template/runner-import.sh.jinja2 filename = template/runner-import.sh.jinja2
md5sum = 1edd9c7a20e208b6cb647886bfb6d1bb md5sum = ab5f0ae6febc0d5c247ec5542b5f0519
[instance-runner-import] [instance-runner-import]
filename = instance-runner-import.cfg.in filename = instance-runner-import.cfg.in
......
...@@ -162,6 +162,22 @@ log_message "Building newest Software Release..." ...@@ -162,6 +162,22 @@ log_message "Building newest Software Release..."
"$SLAPOS" node software --cfg "$SLAPOSCFG" --all --master-url="$MASTERURL" --logfile "$SLAPGRIDSRLOG" >/dev/null 2>&1 || "$SLAPOS" node software --cfg "$SLAPOSCFG" --all --master-url="$MASTERURL" --logfile "$SLAPGRIDSRLOG" >/dev/null 2>&1 ||
"$SLAPOS" node software --cfg "$SLAPOSCFG" --all --master-url="$MASTERURL" --logfile "$SLAPGRIDSRLOG" >/dev/null 2>&1 || "$SLAPOS" node software --cfg "$SLAPOSCFG" --all --master-url="$MASTERURL" --logfile "$SLAPGRIDSRLOG" >/dev/null 2>&1 ||
(tail -n 200 "$SLAPGRIDSRLOG" && false) (tail -n 200 "$SLAPGRIDSRLOG" && false)
contain_instance=0
for folder in $srv_directory/runner/instance/slappart*/; do
if [ -f "$folder/buildout.cfg" ]; then
contain_instance=1
fi
done
# If instance do not contains template.cfg it means the user contains no instance.
# so it is safer to assume that he is using slaprunner for develop buildout rather them slapos.
if [ $contain_instance -eq 0 ]; then
log_message "None Instance were deployed with this software release, so skip to continue..."
echo 0 > $RESTORE_EXIT_CODE_FILE
exit 0
fi
# Remove defined scripts to force buildout to recreate them to have updated paths # Remove defined scripts to force buildout to recreate them to have updated paths
rm "$srv_directory"/runner/instance/slappart*/srv/runner-import-restore || true rm "$srv_directory"/runner/instance/slappart*/srv/runner-import-restore || true
log_message "Fixing Instances as needed after import..." log_message "Fixing Instances as needed after import..."
......
...@@ -551,6 +551,12 @@ eggs = ${neoppod:eggs} ...@@ -551,6 +551,12 @@ eggs = ${neoppod:eggs}
# Used by ERP5 Jupyter backend # Used by ERP5 Jupyter backend
ipykernel ipykernel
# Used by DiffTool
xmltodict
deepdiff
unidiff
jsonpickle
# parameterizing the version of the generated python interpreter name by the # parameterizing the version of the generated python interpreter name by the
# python section version causes dependency between this egg section and the # python section version causes dependency between this egg section and the
# installation of python, which we don't want on an instance # installation of python, which we don't want on an instance
...@@ -768,3 +774,11 @@ sympy = 1.1.1 ...@@ -768,3 +774,11 @@ sympy = 1.1.1
# Required by: # Required by:
# openpyxl==2.4.8 # openpyxl==2.4.8
jdcal = 1.3 jdcal = 1.3
xmltodict = 0.11.0
deepdiff = 3.3.0
unidiff = 0.5.5
# Required by:
# deepdiff = 3.3.0
jsonpickle = 0.9.6
...@@ -66,7 +66,7 @@ md5sum = 0969fbb25b05c02ef3c2d437b2f4e1a0 ...@@ -66,7 +66,7 @@ md5sum = 0969fbb25b05c02ef3c2d437b2f4e1a0
[template] [template]
filename = instance.cfg.in filename = instance.cfg.in
md5sum = 995b5dd89253b79a9511e8b46e91480c md5sum = 330b72acf0752cce5da70b1fcdfac487
[monitor-template-dummy] [monitor-template-dummy]
filename = dummy.cfg filename = dummy.cfg
......
...@@ -148,6 +148,20 @@ filename = instance-mariadb.cfg ...@@ -148,6 +148,20 @@ filename = instance-mariadb.cfg
extra-context = extra-context =
section parameter_dict dynamic-template-mariadb-parameters section parameter_dict dynamic-template-mariadb-parameters
# Keep cloudooo section for backward compatibility
# Once the section is removed, ghost instances will keep failing until
# garbage collection be implemented.
[dynamic-template-cloudooo-legacy]
recipe = collective.recipe.template
input = inline:[buildout]
eggs-directory = ${buildout:eggs-directory}
develop-eggs-directory = ${buildout:develop-eggs-directory}
offline = true
parts =
output = ${directory:directory/instance-cloudoo-legacy.cfg
mode = 644
# we need this value to be present in a section, # we need this value to be present in a section,
# for slapos.cookbook:switch-softwaretype to work # for slapos.cookbook:switch-softwaretype to work
[dynamic-template-jupyter] [dynamic-template-jupyter]
...@@ -171,3 +185,6 @@ zodb-zeo = dynamic-template-zeo:rendered ...@@ -171,3 +185,6 @@ zodb-zeo = dynamic-template-zeo:rendered
zodb-neo = neo-storage-mysql:rendered zodb-neo = neo-storage-mysql:rendered
zope = dynamic-template-zope:rendered zope = dynamic-template-zope:rendered
jupyter = dynamic-template-jupyter:rendered jupyter = dynamic-template-jupyter:rendered
# Keep cloudooo backward compatibility
cloudooo = dynamic-template-cloudooo-legacy:output
...@@ -133,7 +133,7 @@ pytz = 2016.10 ...@@ -133,7 +133,7 @@ pytz = 2016.10
requests = 2.13.0 requests = 2.13.0
six = 1.10.0 six = 1.10.0
slapos.cookbook = 1.0.66 slapos.cookbook = 1.0.66
slapos.core = 1.4.7 slapos.core = 1.4.8
slapos.extension.strip = 0.4 slapos.extension.strip = 0.4
slapos.libnetworkcache = 0.15 slapos.libnetworkcache = 0.15
slapos.rebootstrap = 4.1 slapos.rebootstrap = 4.1
...@@ -145,7 +145,7 @@ xml-marshaller = 0.9.7 ...@@ -145,7 +145,7 @@ xml-marshaller = 0.9.7
paramiko = 2.1.3 paramiko = 2.1.3
# Required by: # Required by:
# slapos.core==1.4.7 # slapos.core==1.4.8
Flask = 0.12 Flask = 0.12
# Required by: # Required by:
...@@ -165,7 +165,7 @@ ipaddress = 1.0.18 ...@@ -165,7 +165,7 @@ ipaddress = 1.0.18
jsonschema = 2.6.0 jsonschema = 2.6.0
# Required by: # Required by:
# slapos.core==1.4.7 # slapos.core==1.4.8
# XXX 'slapos node format' raises an exception with netifaces 0.10.5. # XXX 'slapos node format' raises an exception with netifaces 0.10.5.
netifaces = 0.10.4 netifaces = 0.10.4
...@@ -178,15 +178,15 @@ packaging = 16.8 ...@@ -178,15 +178,15 @@ packaging = 16.8
pycparser = 2.17 pycparser = 2.17
# Required by: # Required by:
# slapos.core==1.4.7 # slapos.core==1.4.8
supervisor = 3.3.3 supervisor = 3.3.3
# Required by: # Required by:
# slapos.core==1.4.7 # slapos.core==1.4.8
uritemplate = 3.0.0 uritemplate = 3.0.0
# Required by: # Required by:
# slapos.core==1.4.7 # slapos.core==1.4.8
zope.interface = 4.3.3 zope.interface = 4.3.3
[networkcache] [networkcache]
......
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