Commit 8e142f1c authored by Rafael Monnerat's avatar Rafael Monnerat

Update Release Candidate

/reviewed-on nexedi/slapos!85
parents e9efe967 9c1384dc
Changes
=======
1.0.32 (unreleased)
-------------------
* Remove url-list parameter to download fonts from fontconfig instance
1.0.31 (2016-05-30)
-------------------
......
{# This file configures apache to redirect requests from ports to specific urls.
# It provides SSL support for server and optionaly for client.
#
# All parameters are given through the `parameter_dict` variable, see the
# list entries :
#
# parameter_dict = {
# # The path given to "PidFile"
# "pid-file": "<file_path>",
#
# # The number given to "TimeOut"
# "timeout": 300,
#
# # The path given to "SSLCertificateFile"
# "cert": "<file_path>",
#
# # The path given to "SSLCertificateKeyFile"
# "key": "<file_path>",
#
# # The value given to "SSLCipherSuite" (can be empty)
# "cipher": "",
#
# # The path given to "SSLSessionCache shmcb:<folder_path>(512000)"
# "ssl-session-cache": "<folder_path>",
#
# # The path given to "SSLCACertificateFile" (can be empty)
# # If this value is not empty, it enables client certificate check.
# # (Enabling "SSLVerifyClient require")
# "ca-cert": "<file_path>",
#
# # The path given to "SSLCARevocationFile" (used if ca-cert is not
# # empty)
# "crl": "<file_path>",
#
# # The path given to "ErrorLog"
# "error-log": "<file_path>",
#
# # The path given to "AccessLog"
# "access-log": "<file_path>",
#
# # The list of ip which apache will listen to.
# "ip-list": [
# "0.0.0.0",
# "[::1]",
# ],
#
# # The list of backends which apache should redirect to.
# "backend-list": [
# # (port, unused, internal_scheme)
# (8000, _, "http://10.0.0.10:8001"),
# (8002, _, "http://10.0.0.10:8003"),
# ],
# }
#
# This sample of `parameter_dict` will make apache listening to :
# - 0.0.0.0:8000 redirecting internaly to http://10.0.0.10:8001
# - [::1]:8000 redirecting internaly to http://10.0.0.10:8001
# - 0.0.0.0:8002 redirecting internaly to http://10.0.0.10:8003
# - [::1]:8002 redirecting internaly to http://10.0.0.10:8003
-#}
LoadModule unixd_module modules/mod_unixd.so
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule authz_core_module modules/mod_authz_core.so
......
......@@ -183,3 +183,9 @@ configure-options = -c mod_antiloris.c
make-binary = ${:configure-command}
make-options = -i -a -n antiloris mod_antiloris.la
make-targets =
[template-apache-backend-conf]
recipe = slapos.recipe.build:download
url = ${:_profile_base_location_}/apache-backend.conf.in
md5sum = e376fdbe8b19551ec08604e64e9a53b9
mode = 640
......@@ -17,8 +17,8 @@ parts =
[git]
recipe = slapos.recipe.cmmi
url = https://www.kernel.org/pub/software/scm/git/git-2.7.4.tar.xz
md5sum = b0219fcb6d73104361f4fbdba3741d00
url = https://www.kernel.org/pub/software/scm/git/git-2.9.0.tar.xz
md5sum = 118ef1e3108ef0b858cd13b74395a59c
configure-options =
--with-curl=${curl:location}
--with-openssl=${openssl:location}
......
......@@ -3,7 +3,7 @@
parts = golang
[golang]
<= golang15
<= golang16
[golang-common]
......@@ -26,9 +26,19 @@ environment-extra =
[golang15]
<= golang-common
url = https://storage.googleapis.com/golang/go1.5.3.src.tar.gz
md5sum = 80a0eac7ab750b01b3f7096a1d4667b8
url = https://storage.googleapis.com/golang/go1.5.4.src.tar.gz
md5sum = a04d570515c46e4935c63605cbd3a04e
# go1.5 needs go1.4 to bootstrap
environment-extra =
GOROOT_BOOTSTRAP=${golang14:location}
[golang16]
<= golang-common
url = https://storage.googleapis.com/golang/go1.6.2.src.tar.gz
md5sum = d1b50fa98d9a71eeee829051411e6207
# go1.6 needs go1.4 to bootstrap
environment-extra =
GOROOT_BOOTSTRAP=${golang14:location}
......@@ -12,8 +12,8 @@ parts = haproxy
[haproxy]
recipe = slapos.recipe.cmmi
url = http://www.haproxy.org/download/1.6/src/haproxy-1.6.5.tar.gz
md5sum = 5290f278c04e682e42ab71fed26fc082
url = http://www.haproxy.org/download/1.6/src/haproxy-1.6.6.tar.gz
md5sum = b418d83cf4f2da328f6eb8c255b8716b
configure-command = true
# If the system is running on Linux 2.6, we use "linux26" as the TARGET,
# otherwise use "generic".
......
......@@ -89,7 +89,7 @@ input = inline:
recipe = slapos.recipe.cmmi
path = ${helloweb-repository:location}/go/
go = ${golang15:location}/bin/go
go = ${golang16:location}/bin/go
configure-command = :
make-binary =
make-targets= cd ${:path} &&
......
......@@ -11,8 +11,8 @@ extends =
[openblas]
recipe = slapos.recipe.cmmi
url = http://github.com/xianyi/OpenBLAS/archive/v0.2.15.tar.gz
md5sum = b1190f3d3471685f17cfd1ec1d252ac9
url = http://github.com/xianyi/OpenBLAS/archive/v0.2.18.tar.gz
md5sum = 805e7f660877d588ea7e3792cda2ee65
patch-options = -p0
patches =
${:_profile_base_location_}/disable_openmp_if_single_core.patch#ee553ccaf9dd4bc37374588e49956f62
......
......@@ -13,19 +13,14 @@ recipe = slapos.recipe.build:gitclone
repository = https://gitlab.com/jerome-nexedi/pulp-or.git
branch = master
git-executable = ${git:location}/bin/git
develop = true
[pulp-build]
recipe = zc.recipe.egg:develop
setup = ${pulp-repository.git:location}
[pulp-env]
<= numpy-env
PATH=${glpk:location}/bin
[pulp]
dependencies = ${pulp-build:setup}
recipe = zc.recipe.egg:custom
recipe = zc.recipe.egg:develop
setup = ${pulp-repository.git:location}
egg = pulp
environment = pulp-env
setup-eggs = ${numpy:egg}
......
......@@ -28,9 +28,9 @@ python = python2.7
[python2.7]
recipe = slapos.recipe.cmmi
package_version = 2.7.11
package_version = 2.7.12
package_version_suffix =
md5sum = 1dbcc848b4cd8399a8199d000f9f823c
md5sum = 57dffcee9cee8bb2ab5f82af1d8e9a69
# This is actually the default setting for prefix, but we can't use it in
# other settings in this part if we don't set it explicitly here.
......@@ -44,7 +44,7 @@ patches =
${:_profile_base_location_}/pytracemalloc_pep445.patch#46662cf0ccc7cb7cfb8289bbfd68b21a
${:_profile_base_location_}/disabled_module_list.patch#71ad30d32bcdbc50c19cf48675b1246e
url =
http://python.org/ftp/python/${:package_version}/Python-${:package_version}${:package_version_suffix}.tar.xz
http://www.python.org/ftp/python/${:package_version}/Python-${:package_version}${:package_version_suffix}.tar.xz
configure-options =
--enable-ipv6
--enable-unicode=ucs4
......
......@@ -127,6 +127,6 @@ scripts = py
[versions]
setuptools = 19.6.2
slapos.rebootstrap = 3.3
zc.buildout = 2.5.0+slapos001
slapos.rebootstrap = 3.5
zc.buildout = 2.5.2+slapos002
zc.recipe.egg = 2.0.3+slapos001
......@@ -6,8 +6,8 @@ parts = tokyocabinet
[tokyocabinet]
recipe = slapos.recipe.cmmi
url = http://fallabs.com/tokyocabinet/tokyocabinet-1.4.46.tar.gz
md5sum = 341dadd1f3d68760e350f7e731111786
url = http://fallabs.com/tokyocabinet/tokyocabinet-1.4.48.tar.gz
md5sum = fd03df6965f8f56dd5b8518ca43b4f5e
configure-options =
--with-zlib=${zlib:location}
......
generic_cloudooo
================
The generic_cloudooo recipe helps you to deploy cloudooo services with their configuration files.
How to use?
-----------
Here is an example of a section to add in your software.cfg :
.. code-block::
[cloudooo-configuration]
recipe = slapos.cookbook:generic_cloudooo
configuration-file = ${directory:etc}/cloudooo.cfg
wrapper = ${directory:services}/cloudooo
data-directory = ${directory:srv}/cloudooo
ip = 0.0.0.0
port = 1234
ooo-paster = ${directory:bin}/cloudooo_paster
mimetype_entry_addition =
text/html application/pdf wkhtmltopdf
openoffice-port = 1235
ooo-binary-path = ${directory:libreoffice-bin}/program
environment =
FONTCONFIG_FILE = ${fontconfig-instance:conf-path}
PATH = ${binary-link:target-directory}
ooo-uno-path = ${directory:libreoffice-bin}/basis-link/program
Where :
- `configuration-file` is the path where the put the configuration file;
- `wrapper` is the path where the put the final executable file;
- `data-directory` is the folder where cloudooo would put it's temporary files;
- `ip` and `port` is where cloudooo will listen to;
- `ooo-paster` is the path of the program that will load cloudooo configuration
and start the application;
- `mimetype_entry_addition` is additional entries to give to the default
mimetype registry. (see section below.) The mimetype entry list is sorted in
order to make the global mimetype at the bottom of the list.
(i.e. `* * ooo` > `text/* * ooo`)
.. code-block::
mimetype_entry_addition =
<input_format> <output_format> <handler>
- `openoffice-port` is the port where the internal OpenOffice.org service will
listen to;
- `ooo-binary-path` is the path of the openoffice service executable file;
- `environment` are environment vars to use with the openoffice binary;
- `ooo-uno-path` is the path where UNO library is installed.
Default mimetype registry
-------------------------
.. code-block::
application/vnd.oasis.opendocument* * ooo
application/vnd.sun.xml* * ooo
application/pdf text/* pdf
application/pdf * ooo
video/* * ffmpeg
audio/* * ffmpeg
application/x-shockwave-flash * ffmpeg
application/ogg * ffmpeg
application/ogv * ffmpeg
image/png image/jpeg imagemagick
image/png * ooo
image/* image/* imagemagick
text/* * ooo
application/zip * ooo
application/msword * ooo
application/vnd* * ooo
application/x-vnd* * ooo
application/postscript * ooo
application/wmf * ooo
application/csv * ooo
application/x-openoffice-gdimetafile * ooo
application/x-emf * ooo
application/emf * ooo
application/octet* * ooo
* application/vnd.oasis.opendocument* ooo
......@@ -38,8 +38,6 @@ class Recipe(GenericBaseRecipe):
font-system-folder -- fonts installed by software release
font-folder -- location where to download fonts
url-list -- From where to download fonts
"""
def install(self):
......@@ -62,24 +60,4 @@ class Recipe(GenericBaseRecipe):
self.substituteTemplate(template_filename, config))
created_file_list.append(configuration_path)
# Instanciate onetimedownloads, one for each url
wrapper_template_location = pkg_resources.resource_filename(
__name__, os.path.join(
'template', 'onetimedownload_run.in'))
onetimedownload_config = {}
onetimedownload_config.update(self.options)
for index, url in enumerate(self.options['url-list'].split()):
if not url.strip():
continue
bin_path = os.path.join(service_folder, 'onetimedownload%s' % index)
file_path = os.path.join(font_folder, '%s' % index)
onetimedownload_config['url'] = url
onetimedownload_config['file_path'] = file_path
onetimedownload_runner_path = self.createExecutable(bin_path,
self.substituteTemplate(wrapper_template_location,
onetimedownload_config))
created_file_list.append(onetimedownload_runner_path)
return created_file_list
#!/bin/sh
# BEWARE: This file is operated by slapgrid
# BEWARE: It will be overwritten automatically
exec %(onetimedownload_path)s "%(url)s" "%(file_path)s"
......@@ -53,7 +53,7 @@ smmap = 0.9.0
# Required by:
# slapos.toolbox==0.55
GitPython = 2.0.5
GitPython = 2.0.6
# Required by:
# slapos.toolbox==0.55
......@@ -69,7 +69,7 @@ lockfile = 0.12.2
# Required by:
# slapos.toolbox==0.55
paramiko = 2.0.0
paramiko = 2.0.1
# Required by:
# slapos.toolbox==0.55
......
......@@ -16,7 +16,7 @@ smmap = 0.9.0
# Required by:
# slapos.toolbox==0.55
GitPython = 2.0.5
GitPython = 2.0.6
# Required by:
# slapos.toolbox==0.55
......@@ -32,7 +32,7 @@ lockfile = 0.12.2
# Required by:
# slapos.toolbox==0.55
paramiko = 2.0.0
paramiko = 2.0.1
# Required by:
# slapos.toolbox==0.55
......
......@@ -29,11 +29,11 @@ software-type = custom-personal
slave = true
{% if slapparameter_dict.get('port', '80') != '443' %}
config-url = http://[$${request-re6stnet-token-slave:connection-ipv6}1]:{{ slapparameter_dict.get('port', '80') }}/
config-url = http://[$${request-re6stnet-token-slave:connection-ipv6}1]:{{ slapparameter_dict.get('port', '80') }}
{% endif -%}
{% if slapparameter_dict.get('port', '80') == '443' %}
config-url = https://[$${request-re6stnet-token-slave:connection-ipv6}1]:{{ slapparameter_dict.get('port', '443') }}/
config-url = https://[$${request-re6stnet-token-slave:connection-ipv6}1]:{{ slapparameter_dict.get('port', '443') }}
{% endif -%}
{% if slapparameter_dict.get('frontend-custom_domain', '') %}
......
......@@ -21,7 +21,7 @@ mode = 0644
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/instance-cdn-request.cfg.jinja2
output = ${buildout:directory}/template-cdn-request.cfg.jinja2
md5sum = 11c1bb2dca674d2efe41f8cb0389ec4c
md5sum = a5ee428ec915a9e638b46ce3f4dd42f3
mode = 0644
[eggs]
......
......@@ -10,18 +10,39 @@
"default": 23000
}]
},
"font-url-list": {
"description": "List of URLs from which fonts are to be downloaded",
"default": [],
"items": {
"type": "string"
},
"type": "array"
},
"backend-count": {
"description": "Number of backend cloudooo instances",
"default": 1,
"type": "integer"
},
"ssl": {
"description": "Custom ssl certificate, key and optionaly client ca-cert and crl",
"properties": {
"cert": {
"description": "The content of the certificate file",
"type": "string"
},
"key": {
"description": "The content of the ssl key file",
"type": "string"
},
"ca-cert": {
"description": "The content of the ca-certificate file",
"type": "string"
},
"crl": {
"description": "The content of the revocation file",
"type": "string"
}
}
},
"timeout": {
"description": "Configure apache with this timeout",
"type": "integer"
},
"mimetype-entry-addition": {
"description": "The list of entry to add to the cloudooo mimetype registry. Each entry should on one line which format is: \"<source_mimetype> <destination_mimetype> <handler>\"",
"type": "string"
}
}
}
{% set ipv4 = (ipv4_set | list)[0] -%}
{% if ipv6_set %}{% set ipv6 = (ipv6_set | list)[0] %}{% endif -%}
{% set instance_parameter_dict = parameter_dict['instance-parameter-dict'] -%}
{% macro assert(x) %}{{ ("",)[not x] }}{% endmacro -%}
{% set publish_url_name = instance_parameter_dict.get('publish-url-name') or 'url' -%}
{% set next_port = instance_parameter_dict['port'] | int -%}
{% if instance_parameter_dict.get('port-parameter-name') -%}
{% set next_port = slapparameter_dict.get(instance_parameter_dict['port-parameter-name'], next_port) | int -%}
{% endif -%}
{% do assert(next_port > 0) -%}
{% set backend_count = instance_parameter_dict['backend-count'] | int -%}
{% if instance_parameter_dict.get('backend-count-parameter-name') -%}
{% set backend_count = slapparameter_dict.get(instance_parameter_dict['backend-count-parameter-name'], backend_count) | int -%}
{% endif -%}
{% do assert(backend_count > 0) -%}
{% set timeout = instance_parameter_dict['timeout'] | int -%}
{% if instance_parameter_dict.get('timeout-parameter-name') -%}
{% set timeout = slapparameter_dict.get(instance_parameter_dict['timeout-parameter-name'], timeout) | int -%}
{% endif -%}
{% do assert(timeout > 0) -%}
{% set ssl_parameter_dict = instance_parameter_dict.get('ssl', {}) %}
{% if instance_parameter_dict.get('ssl-dict-parameter-name') -%}
{% set ssl_parameter_dict = slapparameter_dict.get(instance_parameter_dict['ssl-dict-parameter-name'], ssl_parameter_dict) -%}
{% endif -%}
{% set mimetype_entry_addition = instance_parameter_dict.get('mimetype-entry-addition', '') -%}
{% if instance_parameter_dict.get('mimetype-entry-addition-parameter-name') -%}
{% set mimetype_entry_addition = mimetype_entry_addition ~ "\n" ~ slapparameter_dict.get(instance_parameter_dict['mimetype-entry-addition-parameter-name'], '') -%}
{% endif -%}
{% set apache_port = next_port -%}
{% set haproxy_port = next_port + 1 -%}
{% set next_port = next_port + 2 -%}
{% set apache_ip_list = [ipv4] -%}
{% if ipv6_set -%}
{% do apache_ip_list.append('[' ~ ipv6 ~ ']') -%}
{% endif -%}
{% set apache_dict = {} -%}
{% do apache_dict.__setitem__(publish_url_name, (apache_port, "https", 'http://' ~ ipv4 ~ ':' ~ haproxy_port)) -%}
{% set bin_directory = parameter_dict['buildout-bin-directory'] -%}
{% set section_list = [] -%}
{% macro section(name) %}{% do section_list.append(name) %}{{ name }}{% endmacro -%}
{% set cloudooo_section_list = [] -%}
{% macro cloudooo(name) %}{% do cloudooo_section_list.append(name) %}{{ name }}{% endmacro -%}
[simplefile]
recipe = slapos.recipe.template:jinja2
template = inline:{{ '{{ content }}' }}
{% macro simplefile(section_name, file_path, content, mode='') -%}
{% set content_section_name = section_name ~ '-content' -%}
[{{ content_section_name }}]
content = {{ dumps(content) }}
[{{ section_name }}]
< = simplefile
rendered = {{ file_path }}
context = key content {{ content_section_name }}:content
mode = {{ mode }}
{%- endmacro %}
[buildout]
extends =
{{ parameter_dict['template-logrotate-base'] }}
parts =
publish-cloudooo-connection-information
publish
apache
apache-conf
apache-promise
apache-logrotate
cloudooo-test-runner
haproxy
xvfb-instance
wkhtmltopdf-on-xvfb
......@@ -13,9 +83,87 @@ eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
[publish-cloudooo-connection-information]
[apache]
recipe = slapos.cookbook:wrapper
wrapper-path = ${directory:services}/apache
command-line = "{{ parameter_dict['apache'] }}/bin/httpd" -f "${apache-conf:rendered}" -DFOREGROUND
[apache-conf]
recipe = slapos.recipe.template:jinja2
template = {{ parameter_dict['template-apache-conf'] }}
rendered = ${directory:apache-conf}/apache.conf
context = section parameter_dict apache-conf-parameter-dict
[apache-conf-parameter-dict]
backend-list = {{ dumps(apache_dict.values()) }}
ip-list = {{ dumps(apache_ip_list) }}
pid-file = ${directory:run}/apache.pid
error-log = ${directory:log}/apache-error.log
access-log = ${directory:log}/apache-access.log
# Apache 2.4's default value (60 seconds) can be a bit too short
timeout = {{ timeout }}
# Basic SSL server configuration
cert = ${apache-ssl:cert}
key = ${apache-ssl:key}
cipher =
ssl-session-cache = ${directory:log}/apache-ssl-session-cache
# Client x509 auth
ca-cert = ${apache-ssl-client:cert}
crl = ${apache-ssl-client:crl}
[apache-promise]
# Check any apache port in ipv4, expect other ports and ipv6 to behave consistently
recipe = slapos.cookbook:check_port_listening
path = ${directory:promise}/apache
hostname = {{ ipv4 }}
port = {{ apache_dict.values()[0][0] }}
[apache-conf-ssl]
cert = ${directory:apache-conf}/apache.crt
key = ${directory:apache-conf}/apache.pem
ca-cert = ${directory:apache-conf}/ca.crt
crl = ${directory:apache-conf}/crl.pem
[apache-ssl]
{% if ssl_parameter_dict.get('key') -%}
key = ${apache-ssl-key:rendered}
cert = ${apache-ssl-cert:rendered}
{{ simplefile('apache-ssl-key', '${apache-conf-ssl:key}', ssl_parameter_dict['key']) }}
{{ simplefile('apache-ssl-cert', '${apache-conf-ssl:cert}', ssl_parameter_dict['cert']) }}
{% else %}
recipe = plone.recipe.command
command = "{{ parameter_dict['openssl'] }}/bin/openssl" req -newkey rsa -batch -new -x509 -days 3650 -nodes -keyout "${:key}" -out "${:cert}"
key = ${apache-conf-ssl:key}
cert = ${apache-conf-ssl:cert}
{%- endif %}
[apache-ssl-client]
{% if ssl_parameter_dict.get('ca-cert') -%}
cert = ${apache-ssl-ca:rendered}
crl = ${apache-ssl-crl:rendered}
{{ simplefile('apache-ssl-ca', '${apache-conf-ssl:ca-cert}', ssl_parameter_dict['ca-cert']) }}
{{ simplefile('apache-ssl-crl', '${apache-conf-ssl:crl}', ssl_parameter_dict['crl']) }}
{% else %}
cert =
crl =
{%- endif %}
[apache-logrotate]
recipe = slapos.cookbook:logrotate.d
logrotate-entries = ${logrotate:logrotate-entries}
backup = ${logrotate:backup}
name = apache
log = ${apache-conf-parameter-dict:error-log} ${apache-conf-parameter-dict:access-log}
post = {{ bin_directory }}/slapos-kill --pidfile ${apache-conf-parameter-dict:pid-file} -s USR1
[publish]
recipe = slapos.cookbook:publish.serialised
url = cloudooo://${haproxy:ip}:${haproxy:port}/
{% for family_name, (apache_port, scheme, _) in apache_dict.items() -%}
{{ family_name ~ '-v6' }} = {% if ipv6_set %}{{ scheme ~ '://[' ~ ipv6 ~ ']:' ~ apache_port }}{% endif %}
{{ family_name }} = {{ scheme ~ '://' ~ ipv4 ~ ':' ~ apache_port }}
{% endfor -%}
[cloudooo-base]
recipe = slapos.cookbook:generic.cloudooo
......@@ -25,26 +173,26 @@ environment =
FONTCONFIG_FILE = ${fontconfig-instance:conf-path}
PATH = ${binary-link:target-directory}
mimetype_entry_addition =
text/html application/pdf wkhtmltopdf
{% for entry in mimetype_entry_addition.splitlines() -%}
{{ " " ~ entry.strip() }}
{% endfor -%}
# Binary information
# cloudooo specific configuration
ooo-binary-path = {{ parameter_dict['libreoffice-bin'] }}/program
ooo-paster = {{ bin_directory }}/cloudooo_paster
ooo-uno-path = {{ parameter_dict['libreoffice-bin'] }}/basis-link/program
{% set cloudooo_port = slapparameter_dict.get('tcpv4_port', 23000) | int -%}
{% set backend_count = slapparameter_dict.get('backend-count', 1) | int -%}
{% for index in range(backend_count) -%}
{% set name = 'cloudooo-' ~ index -%}
[{{ section(name) }}]
[{{ cloudooo(name) }}]
< = cloudooo-base
port = {{ cloudooo_port }}
openoffice-port = {{ cloudooo_port + 1 }}
port = {{ next_port }}
openoffice-port = {{ next_port + 1 }}
configuration-file = ${directory:etc}/{{ name }}.cfg
data-directory = ${directory:srv}/{{ name }}
wrapper = ${directory:services}/{{ name }}
{% set cloudooo_port = cloudooo_port + 2 -%}
{% set next_port = next_port + 2 -%}
{% endfor -%}
[haproxy]
......@@ -53,13 +201,13 @@ name = cloudooo
conf-path = ${directory:etc}/haproxy.cfg
socket-path = ${directory:run}/haproxy.sock
ip = {{ ipv4 }}
port = 8001
port = {{ haproxy_port }}
maxconn = 1
wrapper-path = ${directory:services}/haproxy
binary-path = {{ parameter_dict['haproxy'] }}/sbin/haproxy
ctl-path = ${directory:bin}/haproxy-ctl
backend-list =
{%- for section_name in section_list %}
{%- for section_name in cloudooo_section_list %}
{{ "${" ~ section_name ~ ":ip}:${" ~ section_name ~ ":port}" }}
{%- endfor %}
......@@ -81,10 +229,8 @@ recipe = slapos.cookbook:fontconfig
conf-path = ${directory:etc}/font.conf
font-system-folder = {{ parameter_dict['fonts'] }}
font-folder = ${directory:font}
{# XXX: violates "instanciation happens offline" rule -#}
url-list = {{ slapparameter_dict.get('font-url-list', []) | join(' ') }}
service-folder = ${directory:services}
onetimedownload_path = {{ bin_directory }}/onetimedownload
[binary-link]
recipe = slapos.cookbook:symbolic.link
......@@ -108,9 +254,18 @@ link-binary =
# rest of parts are candidates for some generic stuff
[directory]
recipe = slapos.cookbook:mkdirectory
apache-conf = ${:etc}/apache
bin = ${buildout:directory}/bin
ca-dir = ${buildout:directory}/srv/ssl
certs = ${:ca-dir}/certs
crl = ${:ca-dir}/crl
etc = ${buildout:directory}/etc
font = ${:srv}/font
log = ${:var}/log
newcerts = ${:ca-dir}/newcerts
private = ${:ca-dir}/private
promise = ${directory:etc}/promise
requests = ${:ca-dir}/requests
run = ${:var}/run
services = ${:etc}/run
srv = ${buildout:directory}/srv
......
......@@ -19,60 +19,30 @@ recipe = slapos.recipe.template:jinja2
rendered = ${buildout:parts-directory}/${:_buildout_section_name_}/${:filename}
extra-context =
context =
key ipv6_set slap-parameters:ipv6
key eggs_directory buildout:eggs-directory
key develop_eggs_directory buildout:develop-eggs-directory
key slapparameter_dict slap-parameters:configuration
${:extra-context}
[dynamic-template-cloudooo-parameters]
buildout-bin-directory = {{ buildout_bin_directory }}
cairo = {{ cairo_location }}
coreutils = {{ coreutils_location }}
cups = {{ cups_location }}
dash = {{ dash_location }}
dbus = {{ dbus_location }}
dbus-glib = {{ dbus_glib_location }}
file = {{ file_location }}
fontconfig = {{ fontconfig_location }}
fonts = {{ fonts_location }}
freetype = {{ freetype_location }}
glib = {{ glib_location }}
glu = {{ glu_location }}
haproxy = {{ haproxy_location }}
imagemagick = {{ imagemagick_location }}
libICE = {{ libICE_location }}
libSM = {{ libSM_location }}
libX11 = {{ libX11_location }}
libXau = {{ libXau_location }}
libXdmcp = {{ libXdmcp_location }}
libXext = {{ libXext_location }}
libXrender = {{ libXrender_location }}
libexpat = {{ libexpat_location }}
libffi = {{ libffi_location }}
libpng12 = {{ libpng12_location }}
libreoffice-bin = {{ libreoffice_bin_location }}
libxcb = {{ libxcb_location }}
mesa = {{ mesa_location }}
poppler = {{ poppler_location }}
pixman = {{ pixman_location }}
wkhtmltopdf = {{ wkhtmltopdf_location }}
xdamage = {{ xdamage_location }}
xfixes = {{ xfixes_location }}
xserver = {{ xserver_location }}
zlib = {{ zlib_location }}
[cloudooo-dynamic-template-parameter-dict]
{% for key, value in dynamic_template_cloudooo_instance_parameter_dict.items() -%}
{{ key }} = {{ dumps(value) }}
{% endfor -%}
instance-parameter-dict = {{ dumps(cloudooo_parameter_dict) }}
[dynamic-template-cloudooo]
[cloudooo-dynamic-template]
< = jinja2-template-base
template = {{ template_cloudooo }}
filename = instance-cloudoo.cfg
template = {{ template_cloudooo_instance }}
filename = instance-cloudooo.cfg
extensions = jinja2.ext.do
extra-context =
section parameter_dict dynamic-template-cloudooo-parameters
section parameter_dict cloudooo-dynamic-template-parameter-dict
key ipv4_set slap-parameters:ipv4
[switch-softwaretype]
recipe = slapos.cookbook:softwaretype
default = ${dynamic-template-cloudooo:rendered}
default = ${cloudooo-dynamic-template:rendered}
[slap-connection]
# part to migrate to new - separated words
......
[buildout]
extends =
../../stack/cloudooo.cfg
../../stack/logrotate/buildout.cfg
[cloudooo-buildout]
parts =
# Local development
cloudooo-develop
slapos-cookbook-develop
slapos-cookbook
[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}
[template-cloudooo]
< = template-cloudooo-base
recipe = slapos.recipe.template:jinja2
# XXX: "template.cfg" is hardcoded in instanciation recipe
rendered = ${buildout:directory}/template.cfg
template = ${:_profile_base_location_}/instance.cfg.in
md5sum = 4543e62c41726ef074454252c4951ac8
mode = 640
[template-cloudooo-base]
context =
key develop_eggs_directory buildout:develop-eggs-directory
key eggs_directory buildout:eggs-directory
key template_cloudooo_instance template-cloudooo-instance:target
section dynamic_template_cloudooo_instance_parameter_dict dynamic-template-cloudooo-instance-parameter-dict
section cloudooo_parameter_dict cloudooo-software-parameter-dict
[dynamic-template-cloudooo-instance-parameter-dict]
apache = ${apache:location}
buildout-bin-directory = ${buildout:bin-directory}
cairo = ${cairo:location}
coreutils = ${coreutils:location}
cups = ${cups:location}
dash = ${dash:location}
dbus = ${dbus:location}
dbus-glib = ${dbus-glib:location}
file = ${file:location}
fontconfig = ${fontconfig:location}
fonts = ${fonts:location}
freetype = ${freetype:location}
glib = ${glib:location}
glu = ${glu:location}
haproxy = ${haproxy:location}
imagemagick = ${imagemagick:location}
libICE = ${libICE:location}
libSM = ${libSM:location}
libX11 = ${libX11:location}
libXau = ${libXau:location}
libXdmcp = ${libXdmcp:location}
libXext = ${libXext:location}
libXrender = ${libXrender:location}
libexpat = ${libexpat:location}
libffi = ${libffi:location}
libpng12 = ${libpng12:location}
libreoffice-bin = ${libreoffice-bin:location}
libxcb = ${libxcb:location}
mesa = ${mesa:location}
openssl = ${openssl:location}
poppler = ${poppler:location}
pixman = ${pixman:location}
wkhtmltopdf = ${wkhtmltopdf:location}
xdamage = ${xdamage:location}
xfixes = ${xfixes:location}
xserver = ${xserver:location}
zlib = ${zlib:location}
template-apache-conf = ${template-apache-backend-conf:target}
template-logrotate-base = ${template-logrotate-base:rendered}
[template-cloudooo-instance]
recipe = slapos.recipe.build:download
url = ${:_profile_base_location_}/instance-cloudooo.cfg.in
md5sum = 84b9da151545039f6755c969b1532ec2
mode = 640
[buildout]
extends =
../../stack/cloudooo.cfg
software-common.cfg
parts +=
# Local development
cloudooo-develop
slapos-cookbook-develop
slapos-cookbook
${cloudooo-buildout:parts}
template-cloudooo
# Create instance template
template
[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}
[template-jinja2-base]
recipe = slapos.recipe.template:jinja2
mode = 640
template = ${:_profile_base_location_}/${:filename}.in
rendered = ${buildout:directory}/${:filename}
# XXX: extra-context is needed because we cannot append to a key of an extended
# section.
extra-context =
context =
key bin_directory buildout:bin-directory
key develop_eggs_directory buildout:develop-eggs-directory
key eggs_directory buildout:eggs-directory
${:extra-context}
[template]
< = template-jinja2-base
# XXX: "template.cfg" is hardcoded in instanciation recipe
filename = template.cfg
template = ${:_profile_base_location_}/instance.cfg.in
md5sum = 6e215fc2969a5d3d653981371a3a952a
extra-context =
key buildout_bin_directory buildout:bin-directory
key coreutils_location coreutils:location
key cairo_location cairo:location
key cups_location cups:location
key dash_location dash:location
key dbus_glib_location dbus-glib:location
key dbus_location dbus:location
key dcron_location dcron:location
key file_location file:location
key fontconfig_location fontconfig:location
key fonts_location fonts:location
key freetype_location freetype:location
key git_location git:location
key glib_location glib:location
key glu_location glu:location
key haproxy_location haproxy:location
key imagemagick_location imagemagick:location
key libICE_location libICE:location
key libSM_location libSM:location
key libX11_location libX11:location
key libXau_location libXau:location
key libXdmcp_location libXdmcp:location
key libXext_location libXext:location
key libXrender_location libXrender:location
key libexpat_location libexpat:location
key libffi_location libffi:location
key libpng12_location libpng12:location
key libreoffice_bin_location libreoffice-bin:location
key libxcb_location libxcb:location
key mesa_location mesa:location
key openssl_location openssl:location
key pixman_location pixman:location
key poppler_location poppler:location
key template_cloudooo template-cloudooo:target
key wkhtmltopdf_location wkhtmltopdf:location
key xdamage_location xdamage:location
key xfixes_location xfixes:location
key xserver_location xserver:location
key zlib_location zlib:location
[template-cloudooo]
recipe = slapos.recipe.build:download
url = ${:_profile_base_location_}/instance-cloudoo.cfg.in
md5sum = 2763ad422f2afb2edecd58e1933b7ae6
mode = 640
[cloudooo-software-parameter-dict]
publish-url-name = cloudooo
port-parameter-name = tcpv4-port
port = 8000
backend-count-parameter-name = backend-count
backend-count = 1
timeout-parameter-name = timeout
# timeout in seconds
timeout = 600
ssl-dict-parameter-name = ssl
#ssl-dict =
mimetype-entry-addition-parameter-name = mimetype-entry-addition
mimetype-entry-addition =
text/html application/pdf wkhtmltopdf
......@@ -8,14 +8,6 @@
}, {
"description": "Start allocating ports at this value, going upward"
}]
},
"font-url-list": {
"description": "List of URLs from which fonts are to be downloaded",
"default": [],
"items": {
"type": "string"
},
"type": "array"
}
}
}
......@@ -79,7 +79,7 @@ plone.recipe.command = 1.1
# Required by:
# slapos.toolbox==0.40.2
GitPython = 2.0.5
GitPython = 2.0.6
# Required by:
# slapos.toolbox==0.40.2
......@@ -91,4 +91,4 @@ feedparser = 5.1.3
# Required by:
# slapos.toolbox==0.40.2
paramiko = 2.0.0
paramiko = 2.0.1
......@@ -17,6 +17,7 @@ parts =
; ipython notebook component
eggs +=
requests
astor
${scipy:egg}
${pandas:egg}
${scikit-learn:egg}
......@@ -52,7 +53,7 @@ md5sum = ab6e78ea20855e07d388b5b86d1770fe
[custom-js]
<= download-file-base
filename = custom.js.jinja
md5sum = 0e8262d04a6dafbc1b77d95aea2192bc
md5sum = a851a68667a4e676cfa86b34a86b4239
[instance-jupyter]
recipe = slapos.recipe.template:jinja2
......@@ -176,3 +177,5 @@ pickleshare = 0.5
# ipython==4.0.0
# notebook==4.0.6
traitlets = 4.1.0b1
astor = 0.5
......@@ -86,7 +86,7 @@ $([IPython.events]).on('notebook_loaded.Notebook', function(){
var display_text="<div class='output_subarea output_text output_result'>\
<pre>Follow these steps to customize your notebook with ERP5 kernel :-</br>\
1. Add <b>%erp5_url &lt;your_erp5_url&gt;/erp5/Base_executeJupyter</b>.</br>\
Make sure you have 'erp5_data_notebook' business template installed in your erp5</br>\
Make sure you have 'erp5_data_notebook' business template installed in your ERP5</br>\
2. <b>%notebook_set_reference &lt;your_notebook_refernce&gt;</b></br>\
It would be better to set the reference to match with erp5 reference pattern.</br>\
3. <b>%erp5_user &lt;your_erp5_username&gt;</b></br>\
......@@ -96,8 +96,26 @@ $([IPython.events]).on('notebook_loaded.Notebook', function(){
<b>%my_notebooks</b> -This is used to display all the notebooks created by the specific user.</br>\
NOTE: Do not dynamically alter imported module objects as they are not being saved in DB, </br>\
so changes to them would be disregarded and would throw an error.</br>\
<p><u>About classes, functions and global state on modules:</u></p>\
Your code is going to be executed by ERP5, which can have many nodes </br>\
and there is no guarantee that your code is always going to be executed by the same server.</br>\
This means that objects which cannot be stored in the ZODB, like functions, classes and modules </br>\
won't be available across nodes. To solve this issue, you need to use a special object </br>\
called 'environment' to store your global setup. This object was designed to hold global </br>\
state and restore it for each code cell. Example:</br></br>\
<b>def my_setup():</br>\
# import modules, define functions and classes</br>\
# and set global state on modules</br>\
# return dict of variables to be available in code cells</br>\
{'my_var': 1}</br>\
environment.define(my_setup, 'my custom setup')</b></br></br>\
After you execute this cell, the <b>my_setup</b> function will run before each of the</br>\
following cells and the <b>my_var</b> variable will be created and set to 1.</br></br>\
<b>WARNING:</b> it is not recommended to have too many setup functions in the environment, </br>\
because they will be executed in every code cell and can cause a substantial slow down.\
</pre></div>";
if (kernelname=="erp5"){
$('div#notebook-container').prepend(display_text);
}
});
\ No newline at end of file
});
\ No newline at end of file
......@@ -20,7 +20,7 @@ pycurl = 7.19.5.1
# Required by:
# slapos.toolbox==0.48
GitPython = 2.0.5
GitPython = 2.0.6
# Required by:
# slapos.toolbox==0.48
......@@ -44,7 +44,7 @@ numpy = 1.9.2
# Required by:
# slapos.toolbox==0.48
paramiko = 2.0.0
paramiko = 2.0.1
# Required by:
# slapos.toolbox==0.48
......
......@@ -7,9 +7,7 @@
[buildout]
extends =
../../stack/slapos.cfg
../../component/dcron/buildout.cfg
../../component/gzip/buildout.cfg
../../component/logrotate/buildout.cfg
../../stack/logrotate/buildout.cfg
#LXML
../../component/lxml-python/buildout.cfg
#END LXML
......@@ -31,9 +29,13 @@ recipe = slapos.recipe.build:gitclone
repository = https://lab.nexedi.com/nexedi/neoppod.git
git-executable = ${git:location}/bin/git
[neoppod-setup-env]
PATH = ${git:location}/bin:%(PATH)s
[neoppod-develop]
recipe = zc.recipe.egg:develop
setup = ${neoppod-repository:location}
environment = neoppod-setup-env
[neoppod]
recipe = zc.recipe.egg
......@@ -56,17 +58,6 @@ eggs =
scripts =
slapos-kill
[template-logrotate-base]
recipe = slapos.recipe.template:jinja2
template = ${:_profile_base_location_}/${:filename}.in
rendered = ${buildout:directory}/${:filename}
filename = instance-logrotate-base.cfg
md5sum = af19ff0c7817df85987c69738fb083f2
context =
key dcron_location dcron:location
key gzip_location gzip:location
key logrotate_location logrotate:location
[download-base-neo]
recipe = slapos.recipe.build:download
url = ${:_profile_base_location_}/${:_buildout_section_name_}.cfg.in
......@@ -121,10 +112,10 @@ apache-libcloud = 0.20.1
atomize = 0.2.0
ecdsa = 0.13
feedparser = 5.2.1
GitPython = 2.0.5
GitPython = 2.0.6
gitdb = 0.6.4
lockfile = 0.12.2
mysqlclient = 1.3.7
paramiko = 2.0.0
paramiko = 2.0.1
pycrypto = 2.6.1
smmap = 0.9.0
......@@ -117,7 +117,7 @@ smmap = 0.9.0
# Required by:
# slapos.toolbox==0.55
GitPython = 2.0.5
GitPython = 2.0.6
# Required by:
# slapos.toolbox==0.55
......@@ -141,7 +141,7 @@ miniupnpc = 1.9
# Required by:
# slapos.toolbox==0.55
paramiko = 2.0.0
paramiko = 2.0.1
# Required by:
# slapos.toolbox==0.55
......
......@@ -24,7 +24,7 @@ smmap = 0.9.0
# Required by:
# slapos.toolbox==0.55
GitPython = 2.0.5
GitPython = 2.0.6
# Required by:
# slapos.toolbox==0.55
......@@ -40,4 +40,4 @@ lockfile = 0.12.2
# Required by:
# slapos.toolbox==0.55
paramiko = 2.0.0
paramiko = 2.0.1
......@@ -19,6 +19,7 @@ initialization =
extra-paths +=
${wendelin:location}
eggs +=
astor
${scipy:egg}
${msgpack-python:egg}
${wendelin.core:egg}
......
......@@ -75,7 +75,7 @@ smmap = 0.8.2
# Required by:
# slapos.toolbox==0.40.2
GitPython = 2.0.5
GitPython = 2.0.6
# Required by:
# slapos.toolbox==0.40.2
......@@ -87,4 +87,4 @@ feedparser = 5.1.3
# Required by:
# slapos.toolbox==0.40.2
paramiko = 2.0.0
paramiko = 2.0.1
......@@ -6,6 +6,7 @@ exec-sitecustomize = false
extends =
../stack/slapos.cfg
../component/apache/buildout.cfg
../component/cloudooo/buildout.cfg
../component/coreutils/buildout.cfg
../component/cups/buildout.cfg
......@@ -23,6 +24,7 @@ extends =
../component/libffi/buildout.cfg
../component/libpng/buildout.cfg
../component/libreoffice-bin/buildout.cfg
../component/logrotate/buildout.cfg
../component/lxml-python/buildout.cfg
../component/mesa/buildout.cfg
../component/poppler/buildout.cfg
......@@ -37,6 +39,7 @@ parts =
libreoffice-bin
stunnel
dcron
install-plone-recipe-command
# basic Xorg
libXdmcp
......@@ -69,11 +72,17 @@ parts =
ffmpeg
rdiff-backup
apache
apache-antiloris
haproxy
cloudooo-develop
cloudooo
[install-plone-recipe-command]
recipe = plone.recipe.command
command = true
[versions]
Paste = 2.0.2
PasteScript = 2.0.2
......
......@@ -177,12 +177,12 @@ md5sum = 763db0c4a94649296e74fe1f53c03940
[template-cloudooo]
<= download-base
filename = instance-cloudoo.cfg.in
md5sum = 1b515056c5892a86d4ece252ad114a97
md5sum = 1eedc7ee93ac7c95e1c7d50a36ef2b01
[template-zope-conf]
<= download-base
filename = zope.conf.in
md5sum = c1cd0be406152c79e137dcf8c81f52f2
md5sum = 77ab4f229a92e02603028a0bd3772edd
[template-runzope-userhosts-preloaded]
<= download-base
......@@ -291,7 +291,7 @@ context =
key sixtunnel_location 6tunnel:location
key slapos_core_version versions:slapos.core
key stunnel_location stunnel:location
key template_apache_conf template-apache-conf:target
key template_apache_conf template-apache-backend-conf:target
key template_balancer template-balancer:target
key template_cloudooo template-cloudooo:target
key template_create_erp5_site template-create-erp5-site:target
......@@ -341,7 +341,7 @@ md5sum = b0cb0ee97cddc79112a718e065806037
[template-zope]
<= download-base
filename = instance-zope.cfg.in
md5sum = 144fb4567e12bac2c7ed61e7477d5418
md5sum = 83304f1940e0d7555bd678e2cea4c738
link-binary =
${aspell:location}/bin/aspell
${dmtx-utils:location}/bin/dmtxwrite
......@@ -367,11 +367,6 @@ link-binary =
filename = instance-balancer.cfg.in
md5sum = ec9321514674c084e509ca070763b4a1
[template-apache-conf]
<= download-base
filename = apache.conf.in
md5sum = cbe53c1879db9601a521e3ce1d546116
[template-haproxy-cfg]
<= download-base
filename = haproxy.cfg.in
......@@ -483,6 +478,7 @@ eggs =
${pycrypto-python:egg}
${scikit-learn:egg}
lock_file
astor
PyStemmer
PyXML
Pympler
......@@ -616,7 +612,6 @@ eggs +=
scripts +=
is-local-tcp-port-opened
is-process-older-than-dependency-set
onetimedownload
zodbpack
[versions]
......@@ -690,31 +685,30 @@ Zope2 = 2.13.24
astroid = 1.3.8
backports-abc = 0.4
chardet = 2.3.0
cns.recipe.symlink = 0.2.3
csp-eventlet = 0.7.0
erp5diff = 0.8.1.7
eventlet = 0.19.0
five.formlib = 1.0.4
five.localsitemanager = 2.0.5
greenlet = 0.4.9
greenlet = 0.4.10
http-parser = 0.8.3
httplib2 = 0.9.2
huBarcode = 1.0.0
interval = 1.0.0
ipdb = 0.10.0
ipdb = 0.10.1
ipykernel = 4.3.1
ipython = 4.2.0
ipython = 4.2.1
ipywidgets = 5.1.5
logilab-common = 1.2.1
logilab-common = 1.2.2
matplotlib = 1.5.1
mistune = 0.7.2
notebook = 4.2.0
numpy = 1.11.0
mistune = 0.7.3
notebook = 4.2.1
numpy = 1.11.1
objgraph = 3.0.0
pandas = 0.18.1
ply = 3.8
polib = 1.0.7
pprofile = 1.8.3
pprofile = 1.9.1
ptyprocess = 0.5.1
pycountry = 1.20
pyflakes = 1.2.3
......@@ -738,7 +732,7 @@ timerserver = 2.0.2
tornado = 4.3
urlnorm = 1.1.2
uuid = 1.30
validictory = 1.0.1
validictory = 1.0.2
widgetsnbextension = 1.2.3
xfw = 0.10
xupdate-processor = 0.4
......@@ -748,7 +742,7 @@ xupdate-processor = 0.4
Products.ZSQLMethods = 2.13.4
# Required by:
# ipython==4.2.0
# ipython==4.2.1
backports.shutil-get-terminal-size = 1.0.0
# Required by:
......@@ -759,18 +753,14 @@ backports.ssl-match-hostname = 3.5.0.1
# tornado==4.3
certifi = 2016.2.28
# Required by:
# qrcode==5.2.2
colorama = 0.3.7
# Required by:
# matplotlib==1.5.1
cycler = 0.10.0
# Required by:
# ipython==4.2.0
# traitlets==4.2.1
decorator = 4.0.9
# ipython==4.2.1
# traitlets==4.2.2
decorator = 4.0.10
# Required by:
# SOAPpy===0.12.0nxd001
......@@ -778,18 +768,18 @@ fpconst = 0.7.2
# Required by:
# nbformat==4.0.1
# notebook==4.2.0
# traitlets==4.2.1
# notebook==4.2.1
# traitlets==4.2.2
ipython-genutils = 0.1.0
# Required by:
# notebook==4.2.0
# notebook==4.2.1
# nbconvert 4.2.0 depends on entrypoints egg that is not available as tar/zip source.
nbconvert = 4.1.0
# Required by:
# nbconvert==4.1.0
# notebook==4.2.0
# notebook==4.2.1
nbformat = 4.0.1
# Required by:
......@@ -797,16 +787,16 @@ nbformat = 4.0.1
pathlib2 = 2.1.0
# Required by:
# ipython==4.2.0
pexpect = 4.0.1
# ipython==4.2.1
pexpect = 4.1.0
# Required by:
# ipython==4.2.0
# ipython==4.2.1
pickleshare = 0.7.2
# Required by:
# matplotlib==1.5.1
# pandas==0.18.0
# pandas==0.18.1
python-dateutil = 2.5.3
# Required by:
......@@ -814,9 +804,9 @@ python-dateutil = 2.5.3
singledispatch = 3.4.0.3
# Required by:
# ipython==4.2.0
# notebook==4.2.0
traitlets = 4.2.1
# ipython==4.2.1
# notebook==4.2.1
traitlets = 4.2.2
# Required by:
# zope.app.testing==3.8.1
......
......@@ -50,10 +50,7 @@ recipe = slapos.cookbook:fontconfig
conf-path = ${directory:etc}/font.conf
font-system-folder = {{ parameter_dict['fonts'] }}
font-folder = ${directory:font}
{# XXX: violates "instanciation happens offline" rule -#}
url-list = {{ dumps(slapparameter_dict.get('font-url-list', []) | join(' ')) }}
service-folder = ${directory:service}
onetimedownload_path = {{ bin_directory }}/onetimedownload
[resiliency-exclude-file]
# Generate rdiff exclude file in case of resiliency
......
......@@ -284,6 +284,7 @@ node-id = {{ dumps(node_id_base ~ '-' ~ index) }}
{% set log_list = [] -%}
{% set import_set = set() -%}
{% for db_name, zodb in zodb_dict.iteritems() -%}
{% do zodb.setdefault('pool-size', thread_amount) -%}
{% if zodb['type'] == 'neo' -%}
{% do import_set.add('neo.client') -%}
{% set log = name ~ '-neo-' ~ db_name ~ '.log' -%}
......
......@@ -88,6 +88,7 @@ products {{ parameter_dict['instance-products'] }}
level WARN
<logfile>
dateformat
format %(message)s
path {{ parameter_dict['z2-log'] }}
</logfile>
</logger>
......
......@@ -50,7 +50,7 @@ smmap = 0.8.2
# Required by:
# slapos.toolbox==0.40.2
GitPython = 2.0.5
GitPython = 2.0.6
# Required by:
# slapos.toolbox==0.40.2
......@@ -62,4 +62,4 @@ feedparser = 5.1.1
# Required by:
# slapos.toolbox==0.40.2
paramiko = 2.0.0
paramiko = 2.0.1
......@@ -194,7 +194,7 @@ smmap = 0.8.2
# Required by:
# slapos.toolbox==0.40.2
GitPython = 2.0.5
GitPython = 2.0.6
# Required by:
# slapos.toolbox==0.40.2
......@@ -206,4 +206,4 @@ feedparser = 5.1.3
# Required by:
# slapos.toolbox==0.40.2
paramiko = 2.0.0
paramiko = 2.0.1
......@@ -191,7 +191,7 @@ smmap = 0.8.2
# Required by:
# slapos.toolbox==0.40.2
GitPython = 2.0.5
GitPython = 2.0.6
# Required by:
# slapos.toolbox==0.40.2
......@@ -203,7 +203,7 @@ feedparser = 5.1.3
# Required by:
# slapos.toolbox==0.40.2
paramiko = 2.0.0
paramiko = 2.0.1
# Required by:
# slapos.recipe.maarch==0.4
......
[buildout]
extends =
../../component/dcron/buildout.cfg
../../component/gzip/buildout.cfg
../../component/logrotate/buildout.cfg
parts =
template-logrotate-base
[template-logrotate-base]
recipe = slapos.recipe.template:jinja2
template = ${:_profile_base_location_}/${:filename}.in
rendered = ${buildout:directory}/${:filename}
filename = instance-logrotate-base.cfg
md5sum = af19ff0c7817df85987c69738fb083f2
context =
key dcron_location dcron:location
key gzip_location gzip:location
key logrotate_location logrotate:location
......@@ -109,28 +109,28 @@ hexagonit.recipe.download = 1.7.post4
Jinja2 = 2.8
PyYAML = 3.11
Werkzeug = 0.11.9
Werkzeug = 0.11.10
buildout-versions = 1.7
cffi = 1.6.0
cffi = 1.7.0
click = 6.6
cliff = 2.0.0
cliff = 2.1.0
cmd2 = 0.6.8
collective.recipe.template = 1.13
cryptography = 1.3.4
decorator = 4.0.9
cryptography = 1.4
decorator = 4.0.10
idna = 2.1
inotifyx = 0.2.2
itsdangerous = 0.24
lxml = 3.6.0
meld3 = 1.0.2
netaddr = 0.7.18
pbr = 1.9.1
pbr = 1.10.0
plone.recipe.command = 1.1
prettytable = 0.7.2
psutil = 4.2.0
psutil = 4.3.0
pyOpenSSL = 16.0.0
pyasn1 = 0.1.9
pyparsing = 2.1.4
pyparsing = 2.1.5
pytz = 2016.4
requests = 2.10.0
setuptools = 19.6.2
......@@ -142,20 +142,20 @@ slapos.extension.strip = 0.1
slapos.libnetworkcache = 0.14.5
slapos.recipe.build = 0.23
slapos.recipe.cmmi = 0.2
stevedore = 1.13.0
stevedore = 1.15.0
unicodecsv = 0.14.1
xml-marshaller = 0.9.7
# Required by:
# slapos.core==1.3.15
Flask = 0.11
Flask = 0.11.1
# Required by:
# Jinja2==2.8
MarkupSafe = 0.23
# Required by:
# cryptography==1.3.4
# cryptography==1.4
enum34 = 1.1.6
# Required by:
......@@ -163,15 +163,15 @@ enum34 = 1.1.6
functools32 = 3.2.3.post2
# Required by:
# cryptography==1.3.4
# cryptography==1.4
ipaddress = 1.0.16
# Required by:
# slapos.cookbook==1.0.25
# slapos.cookbook==1.0.31
jsonschema = 2.5.1
# Required by:
# slapos.cookbook==1.0.25
# slapos.cookbook==1.0.31
lock-file = 2.0
# Required by:
......@@ -179,7 +179,7 @@ lock-file = 2.0
netifaces = 0.10.4
# Required by:
# cffi==1.6.0
# cffi==1.7.0
pycparser = 2.14
# Required by:
......@@ -192,7 +192,7 @@ uritemplate = 0.6
# Required by:
# slapos.core==1.3.15
zope.interface = 4.1.3
zope.interface = 4.2.0
[networkcache]
download-cache-url = http://www.shacache.org/shacache
......
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