From deb192054f331e0026d2ae1c4a22cb44d746b4b7 Mon Sep 17 00:00:00 2001 From: Gabriel Monnerat <gabriel@tiolive.com> Date: Mon, 26 Mar 2012 13:22:16 -0300 Subject: [PATCH] Revert "merge erp5 branch into master" This reverts commit 1ea46ea8492ecb20a88f1eb131f19111d8f68ec4. Don't use squash because in this way we will lost the history. --- MANIFEST.in | 2 +- component/apache-php/buildout.cfg | 10 +- component/apache/buildout.cfg | 39 +----- .../apache/mod_antiloris-apache-2.4.patch | 127 ------------------ component/aspell/buildout.cfg | 11 -- component/automake/buildout.cfg | 4 +- component/file/buildout.cfg | 4 +- component/fontconfig/buildout.cfg | 5 +- component/freetype/buildout.cfg | 9 +- component/ghostscript/buildout.cfg | 15 +-- component/git/buildout.cfg | 4 +- component/graphviz/buildout.cfg | 5 +- component/groonga/buildout.cfg | 5 +- component/haproxy/buildout.cfg | 2 +- component/imagemagick/buildout.cfg | 6 +- component/java/buildout.cfg | 6 +- component/libjpeg/buildout.cfg | 4 +- component/libpng/buildout.cfg | 10 +- component/libreoffice-bin/buildout.cfg | 14 +- component/libtiff/buildout.cfg | 7 +- component/mariadb/buildout.cfg | 71 +--------- component/openssl/buildout.cfg | 18 +-- component/openssl/openssl-exlibs.patch | 19 --- component/percona-toolkit/buildout.cfg | 4 +- component/poppler/buildout.cfg | 9 +- component/python-2.6/buildout.cfg | 8 +- component/python-2.7/buildout.cfg | 28 ++-- component/readline/buildout.cfg | 12 ++ component/sphinx/buildout.cfg | 4 +- component/tesseract/buildout.cfg | 2 - component/tomcat/buildout.cfg | 22 --- component/wget/buildout.cfg | 25 ---- component/xorg/buildout.cfg | 33 +---- component/zlib/buildout.cfg | 4 +- setup.py | 4 - slapos/recipe/apache_zope_backend/__init__.py | 36 +---- .../template/apache.zope.conf.in | 21 ++- .../template/snippet.ssl.ca.in | 4 - .../template/snippet.ssl.in | 12 -- .../recipe/certificate_authority/__init__.py | 15 +-- .../recipe/davstorage/template/httpd.conf.in | 5 +- .../recipe/erp5/template/apache.zope.conf.in | 5 +- .../template/mysql-init-function.sql.in | 2 +- slapos/recipe/erp5_bootstrap/__init__.py | 66 --------- .../erp5_bootstrap/template/erp5_bootstrap.in | 35 ----- slapos/recipe/erp5_promise/__init__.py | 52 ------- .../fontconfig/template/fontconfig.cfg.in | 1 - slapos/recipe/generate_erp5_tidstorage.py | 56 +------- slapos/recipe/generic_kumofs/__init__.py | 3 +- .../generic_kumofs/template/kumo_gateway.in | 2 +- .../generic_kumofs/template/kumo_manager.in | 2 +- .../generic_kumofs/template/kumo_server.in | 2 +- slapos/recipe/generic_memcached/__init__.py | 1 - .../generic_memcached/template/memcached.in | 2 +- slapos/recipe/generic_mysql/__init__.py | 6 - .../recipe/generic_mysql/template/my.cnf.in | 6 +- slapos/recipe/generic_varnish/__init__.py | 77 ----------- .../generic_varnish/template/default.vcl.in | 124 ----------------- .../generic_varnish/template/varnishd.in | 15 --- .../generic_varnish/template/varnishlog.in | 6 - .../generic_varnish/template/varnishlogd.in | 22 --- slapos/recipe/generic_zope/__init__.py | 7 - .../recipe/generic_zope/template/zope.conf.in | 5 - .../template/zope.conf.promise.in | 5 - .../generic_zope_zeo_client/__init__.py | 14 +- .../template/zope.conf.in | 5 - .../template/zope.conf.promise.in | 5 - .../template/zope.conf.tidstorage.in | 6 - .../template/zope.conf.timeserver.in | 2 +- slapos/recipe/lamp/template/apache.in | 4 +- slapos/recipe/lamp/template/my.cnf.in | 2 +- slapos/recipe/logrotate.py | 20 +-- slapos/recipe/mkdirectory.py | 15 ++- slapos/recipe/mysql/template/my.cnf.in | 2 +- slapos/recipe/pulse2/template/apache.in.in | 4 +- slapos/recipe/request.py | 2 +- slapos/recipe/symbolic_link.py | 2 - slapos/recipe/web_checker/__init__.py | 53 -------- .../web_checker/template/web_checker.cfg.in | 36 ----- slapos/recipe/xwiki/template/my.cnf.in | 2 +- software/cloudooo/instance.cfg | 2 +- software/cloudooo/software.cfg | 2 +- software/erp5/instance-cloudooo.cfg | 2 +- software/erp5/instance-erp5-development.cfg | 20 +-- software/erp5/instance-erp5-production.cfg | 27 +--- software/erp5/instance-kumofs.cfg | 8 +- software/erp5/instance-mariadb.cfg | 7 +- software/erp5/instance-memcached.cfg | 1 - software/erp5/instance-varnish.cfg | 118 ---------------- software/erp5/instance-zope.cfg | 25 ++-- software/erp5/instance.cfg | 1 - software/erp5/snippet-backend.cfg | 31 +---- software/erp5/snippet-master.cfg | 121 ++++++++++------- software/erp5/snippet-zope.cfg | 5 - software/erp5/software.cfg | 74 ++-------- software/erp5testnode/software.cfg | 7 +- software/vifib/software.cfg | 4 - stack/cloudooo.cfg | 8 +- stack/erp5.cfg | 36 ++--- stack/tomcat.cfg | 7 +- 100 files changed, 322 insertions(+), 1505 deletions(-) delete mode 100644 component/apache/mod_antiloris-apache-2.4.patch delete mode 100644 component/aspell/buildout.cfg delete mode 100644 component/openssl/openssl-exlibs.patch delete mode 100644 component/tomcat/buildout.cfg delete mode 100644 component/wget/buildout.cfg delete mode 100644 slapos/recipe/apache_zope_backend/template/snippet.ssl.ca.in delete mode 100644 slapos/recipe/apache_zope_backend/template/snippet.ssl.in rename slapos/recipe/{generic_mysql => erp5}/template/mysql-init-function.sql.in (73%) delete mode 100644 slapos/recipe/erp5_bootstrap/__init__.py delete mode 100644 slapos/recipe/erp5_bootstrap/template/erp5_bootstrap.in delete mode 100644 slapos/recipe/erp5_promise/__init__.py delete mode 100644 slapos/recipe/generic_varnish/__init__.py delete mode 100644 slapos/recipe/generic_varnish/template/default.vcl.in delete mode 100644 slapos/recipe/generic_varnish/template/varnishd.in delete mode 100644 slapos/recipe/generic_varnish/template/varnishlog.in delete mode 100644 slapos/recipe/generic_varnish/template/varnishlogd.in delete mode 100644 slapos/recipe/generic_zope/template/zope.conf.promise.in delete mode 100644 slapos/recipe/generic_zope_zeo_client/template/zope.conf.promise.in delete mode 100644 slapos/recipe/generic_zope_zeo_client/template/zope.conf.tidstorage.in delete mode 100644 slapos/recipe/web_checker/__init__.py delete mode 100644 slapos/recipe/web_checker/template/web_checker.cfg.in delete mode 100644 software/erp5/instance-varnish.cfg diff --git a/MANIFEST.in b/MANIFEST.in index 432de3b1a..9d14f29ad 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -4,4 +4,4 @@ include slapos/recipe/apache_frontend/template/notfound.html recursive-include slapos/recipe *.in recursive-include slapos/recipe *.bin recursive-include slapos/recipe README.*.txt -recursive-include slapos/recipe *.js +recursive-include slapos/recipe *.js \ No newline at end of file diff --git a/component/apache-php/buildout.cfg b/component/apache-php/buildout.cfg index 7dcc0f5a7..71ea1daa3 100644 --- a/component/apache-php/buildout.cfg +++ b/component/apache-php/buildout.cfg @@ -1,10 +1,10 @@ [buildout] parts = apache-php -extends = +extends = ../apache/buildout.cfg ../cclient/buildout.cfg - ../curl/buildout.cfg + ../curl/buildout.cfg ../freetype/buildout.cfg ../gettext/buildout.cfg ../libiconv/buildout.cfg @@ -19,8 +19,8 @@ extends = [apache-php] # Note: Shall react on each build of apache and reinstall itself recipe = hexagonit.recipe.cmmi -url = http://fr2.php.net/distributions/php-5.3.10.tar.gz -md5sum = 816259e5ca7d0a7e943e56a3bb32b17f +url = http://fr2.php.net/distributions/php-5.3.8.tar.gz +md5sum = f4ce40d5d156ca66a996dbb8a0e7666a configure-options = --with-apxs2=${apache:location}/bin/apxs --with-libxml-dir=${libxml2:location} @@ -37,7 +37,7 @@ configure-options = --with-mysqli=mysqlnd --with-curl=${curl:location} --with-zip-dir=${zip:location} - --with-imap=${cclient:location} + --with-imap=${cclient:location} --with-iconv-dir=${libiconv:location} --with-gettext=${gettext:location} --with-ldap=${openldap:location} diff --git a/component/apache/buildout.cfg b/component/apache/buildout.cfg index dcf21258e..3c7cad1c1 100644 --- a/component/apache/buildout.cfg +++ b/component/apache/buildout.cfg @@ -13,30 +13,14 @@ extends = ../sqlite3/buildout.cfg ../zlib/buildout.cfg -[apr] -recipe = hexagonit.recipe.download -version = 1.4.6 -url = http://mir2.ovh.net/ftp.apache.org/dist/apr/apr-${:version}.tar.bz2 -md5sum = ffee70a111fd07372982b0550bbb14b7 - -[apr-util] -recipe = hexagonit.recipe.download -version = 1.4.1 -url = http://mir2.ovh.net/ftp.apache.org/dist/apr/apr-util-${:version}.tar.bz2 -md5sum = 52b31b33fb1aa16e65ddaefc76e41151 - [apache] # inspired on http://old.aclark.net/team/aclark/blog/a-lamp-buildout-for-wordpress-and-other-php-apps/ recipe = hexagonit.recipe.cmmi depends = ${gdbm:version} -version = 2.4.1 -revision = 1 -url = http://mir2.ovh.net/ftp.apache.org/dist/httpd/httpd-${:version}.tar.bz2 -md5sum = 7d3001c7a26b985d17caa367a868f11c -configure-command = cp -ar ${apr:location}/apr-${apr:version} srclib/apr/; cp -ar ${apr-util:location}/apr-util-${apr-util:version} srclib/apr-util; ./configure -configure-options = --prefix=${buildout:parts-directory}/${:_buildout_section_name_} - --disable-static +url = http://mir2.ovh.net/ftp.apache.org/dist//httpd/httpd-2.2.22.tar.bz2 +md5sum = 9fe3093194c8a57f085ff7c3fc43715f +configure-options = --disable-static --enable-authn-alias --enable-bucketeer --enable-cache @@ -63,7 +47,6 @@ configure-options = --prefix=${buildout:parts-directory}/${:_buildout_section_na --enable-dav-fs --enable-so --enable-ssl - --disable-lua --with-included-apr --with-ssl=${openssl:location} --with-z=${zlib:location} @@ -89,27 +72,11 @@ environment = CPPFLAGS =-I${libuuid:location}/include LDFLAGS =-Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${openssl:location}/lib -L${libuuid:location}/lib -Wl,-rpath=${libuuid:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${pcre:location}/lib -Wl,-rpath=${sqlite3:location}/lib -Wl,-rpath=${gdbm:location}/lib -[mod_antiloris-apache-2.4.patch] -# http://www.apachelounge.com/viewtopic.php?p=19139 -# http://www.apachelounge.com/viewtopic.php?p=20551 -recipe = hexagonit.recipe.download -url =${:_profile_base_location_}/${:filename} -filename = mod_antiloris-apache-2.4.patch -download-only = true -md5sum = 4f074f035d3b37f3f3e71cd9616440f3 - [apache-antiloris] # Note: Shall react on each build of apache and reinstall itself recipe = hexagonit.recipe.cmmi url = http://sourceforge.net/projects/mod-antiloris/files/mod_antiloris-0.4.tar.bz2/download md5sum = 66862bf10e9be3a023e475604a28a0b4 -patch-options = -p0 -patches = - ${mod_antiloris-apache-2.4.patch:location}/${mod_antiloris-apache-2.4.patch:filename} -depends = - ${apache:version} - ${apache:revision} - ${mod_antiloris-apache-2.4.patch:md5sum} configure-command = ${apache:location}/bin/apxs configure-options = -c mod_antiloris.c make-binary = ${:configure-command} diff --git a/component/apache/mod_antiloris-apache-2.4.patch b/component/apache/mod_antiloris-apache-2.4.patch deleted file mode 100644 index a5150b37f..000000000 --- a/component/apache/mod_antiloris-apache-2.4.patch +++ /dev/null @@ -1,127 +0,0 @@ ---- mod_antiloris.c.orig 2009-07-28 15:27:42.000000000 +0200 -+++ mod_antiloris.c 2012-03-06 11:05:50.167576066 +0100 -@@ -1,5 +1,5 @@ - /* -- mod_antiloris 0.2 -+ mod_antiloris 0.5 - Copyright (C) 2008 Monshouwer Internet Diensten - - Author: Kees Monshouwer -@@ -22,11 +22,16 @@ - #include "http_connection.h" - #include "http_log.h" - #include "ap_mpm.h" -+#include "ap_release.h" - #include "apr_strings.h" - #include "scoreboard.h" - - #define MODULE_NAME "mod_antiloris" --#define MODULE_VERSION "0.4" -+#define MODULE_VERSION "0.5.1" -+ -+#ifdef APLOG_USE_MODULE -+APLOG_USE_MODULE(antiloris); -+#endif - - module AP_MODULE_DECLARE_DATA antiloris_module; - -@@ -58,6 +63,8 @@ - /* Parse the IPReadLimit directive */ - static const char *ipreadlimit_config_cmd(cmd_parms *parms, void *mconfig, const char *arg) - { -+ signed long int limit; -+ - antiloris_config *conf = ap_get_module_config(parms->server->module_config, &antiloris_module); - const char *err = ap_check_cmd_context (parms, GLOBAL_ONLY); - -@@ -65,7 +72,7 @@ - return err; - } - -- signed long int limit = strtol(arg, (char **) NULL, 10); -+ limit = strtol(arg, (char **) NULL, 10); - - /* No reasonable person would want more than 2^16. Better would be - to use LONG_MAX but that causes portability problems on win32 */ -@@ -80,7 +87,7 @@ - - /* Array describing structure of configuration directives */ - static command_rec antiloris_cmds[] = { -- AP_INIT_TAKE1("IPReadLimit", ipreadlimit_config_cmd, NULL, RSRC_CONF, "Maximum simultaneous connections in READ state per IP address"), -+ AP_INIT_TAKE1("IPReadLimit", ipreadlimit_config_cmd, NULL, RSRC_CONF, "Maximum simultaneous connections per IP address"), - {NULL} - }; - -@@ -103,12 +110,15 @@ - ap_log_error(APLOG_MARK, APLOG_NOTICE, 0, NULL, MODULE_NAME " " MODULE_VERSION " started"); - ap_mpm_query(AP_MPMQ_HARD_LIMIT_THREADS, &thread_limit); - ap_mpm_query(AP_MPMQ_HARD_LIMIT_DAEMONS, &server_limit); -+ ap_add_version_component(p, MODULE_NAME "/" MODULE_VERSION); - return OK; - } - - - static int pre_connection(conn_rec *c) - { -+ char *client_ip; -+ - antiloris_config *conf = ap_get_module_config (c->base_server->module_config, &antiloris_module); - sb_handle *sbh = c->sbh; - -@@ -123,16 +133,26 @@ - worker_score *ws_record; - - ws_record = &ap_scoreboard_image->servers[sbh->child_num][sbh->thread_num]; -- apr_cpystrn(ws_record->client, c->remote_ip, sizeof(ws_record->client)); -+ apr_cpystrn(ws_record->client, c->client_ip, sizeof(ws_record->client)); - -- char *client_ip = ws_record->client; -+ client_ip = ws_record->client; - - /* Count up the number of connections we are handling right now from this IP address */ - for (i = 0; i < server_limit; ++i) { - for (j = 0; j < thread_limit; ++j) { -- ws_record = ap_get_scoreboard_worker(i, j); -+#if AP_SERVER_MAJORVERSION_NUMBER == 2 && AP_SERVER_MINORVERSION_NUMBER > 2 -+ ws_record = ap_get_scoreboard_worker_from_indexes(i, j); -+#else -+ ws_record = ap_get_scoreboard_worker(i, j); -+#endif - switch (ws_record->status) { - case SERVER_BUSY_READ: -+ case SERVER_BUSY_WRITE: -+ case SERVER_BUSY_KEEPALIVE: -+ case SERVER_BUSY_DNS: -+ case SERVER_BUSY_LOG: -+ case SERVER_CLOSING: -+ case SERVER_GRACEFUL: - if (strcmp(client_ip, ws_record->client) == 0) - ip_count++; - break; -@@ -143,7 +163,7 @@ - } - - if (ip_count > conf->limit) { -- ap_log_error(APLOG_MARK, APLOG_WARNING, 0, NULL, "Rejected, too many connections in READ state from %s", c->remote_ip); -+ ap_log_error(APLOG_MARK, APLOG_WARNING, 0, NULL, "[client %s] Antiloris rejected, too many connections", c->client_ip); - return OK; - } else { - return DECLINED; -@@ -151,17 +171,10 @@ - } - - --static void child_init (apr_pool_t *p, server_rec *s) --{ -- ap_add_version_component(p, MODULE_NAME "/" MODULE_VERSION); --} -- -- - static void register_hooks(apr_pool_t *p) - { - ap_hook_post_config(post_config, NULL, NULL, APR_HOOK_MIDDLE); - ap_hook_process_connection(pre_connection, NULL, NULL, APR_HOOK_FIRST); -- ap_hook_child_init(child_init, NULL, NULL, APR_HOOK_MIDDLE); - } - - module AP_MODULE_DECLARE_DATA antiloris_module = { diff --git a/component/aspell/buildout.cfg b/component/aspell/buildout.cfg deleted file mode 100644 index 365126682..000000000 --- a/component/aspell/buildout.cfg +++ /dev/null @@ -1,11 +0,0 @@ -[buildout] -parts = - aspell - -extends = - ../ncurses/buildout.cfg - -[aspell] -recipe = hexagonit.recipe.cmmi -url = http://ftp.gnu.org/gnu/aspell/aspell-0.60.6.1.tar.gz -md5sum = e66a9c9af6a60dc46134fdacf6ce97d7 diff --git a/component/automake/buildout.cfg b/component/automake/buildout.cfg index fbd7082c9..3d552ff02 100644 --- a/component/automake/buildout.cfg +++ b/component/automake/buildout.cfg @@ -7,7 +7,7 @@ parts = [automake-1.11] recipe = hexagonit.recipe.cmmi -md5sum = 93ecb319f0365cb801990b00f658d026 -url = http://ftp.gnu.org/gnu/automake/automake-1.11.3.tar.gz +md5sum = c2972c4d9b3e29c03d5f2af86249876f +url = http://ftp.gnu.org/gnu/automake/automake-1.11.1.tar.bz2 environment = PATH =${autoconf:location}/bin:${perl:location}/bin:%(PATH)s diff --git a/component/file/buildout.cfg b/component/file/buildout.cfg index 5c171cd90..a5cfc0924 100644 --- a/component/file/buildout.cfg +++ b/component/file/buildout.cfg @@ -8,8 +8,8 @@ extends = [file] recipe = hexagonit.recipe.cmmi -url = ftp://ftp.astron.com/pub/file/file-5.11.tar.gz -md5sum = 16a407bd66d6c7a832f3a5c0d609c27b +url = ftp://ftp.astron.com/pub/file/file-5.10.tar.gz +md5sum = 4cea34b087b060772511e066e2038196 configure-options = --disable-static environment = diff --git a/component/fontconfig/buildout.cfg b/component/fontconfig/buildout.cfg index 58643399d..1198708d9 100644 --- a/component/fontconfig/buildout.cfg +++ b/component/fontconfig/buildout.cfg @@ -4,7 +4,6 @@ extends = ../freetype/buildout.cfg ../libxml2/buildout.cfg ../pkgconfig/buildout.cfg - ../bzip2/buildout.cfg ../zlib/buildout.cfg parts = @@ -24,5 +23,5 @@ configure-options = environment = PATH=${pkgconfig:location}/bin:%(PATH)s PKG_CONFIG_PATH=${libxml2:location}/lib/pkgconfig - CPPFLAGS=-I${zlib:location}/include -I${bzip2:location}/include - LDFLAGS=-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib + CPPFLAGS=-I${zlib:location}/include + LDFLAGS=-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib diff --git a/component/freetype/buildout.cfg b/component/freetype/buildout.cfg index c4c818a16..c358b3e99 100644 --- a/component/freetype/buildout.cfg +++ b/component/freetype/buildout.cfg @@ -3,7 +3,6 @@ [buildout] extends = - ../bzip2/buildout.cfg ../zlib/buildout.cfg parts = @@ -11,10 +10,10 @@ parts = [freetype] recipe = hexagonit.recipe.cmmi -url = http://download.savannah.gnu.org/releases/freetype/freetype-2.4.9.tar.bz2 -md5sum = 77a893dae81fd5b896632715ca041179 +url = http://download.savannah.gnu.org/releases/freetype/freetype-2.4.8.tar.bz2 +md5sum = dbf2caca1d3afd410a29217a9809d397 configure-options = --disable-static environment = - CPPFLAGS=-I${bzip2:location}/include -I${zlib:location}/include - LDFLAGS=-L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib + CPPFLAGS=-I${zlib:location}/include + LDFLAGS=-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib diff --git a/component/ghostscript/buildout.cfg b/component/ghostscript/buildout.cfg index 3a38e298e..85ff41306 100644 --- a/component/ghostscript/buildout.cfg +++ b/component/ghostscript/buildout.cfg @@ -9,25 +9,24 @@ parts = ghostscript [ghostscript-common] recipe = hexagonit.recipe.cmmi -depends = - ${libtiff:version} configure-options = --disable-cups - --with-system-libtiff + --disable-cairo --without-x --with-drivers=FILES # it seems that parallel build sometimes fails for ghostscript. make-options = -j1 environment = PATH=${pkgconfig:location}/bin:%(PATH)s - PKG_CONFIG_PATH=${fontconfig:location}/lib/pkgconfig:${libtiff:location}/lib/pkgconfig - LDFLAGS=-Wl,-rpath=${fontconfig:location}/lib -L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -Wl,-rpath=${libtiff:location}/lib - LD_LIBRARY_PATH=${fontconfig:location}/lib:${libtiff:location}/lib + PKG_CONFIG_PATH=${fontconfig:location}/lib/pkgconfig + CPPFLAGS=-I${libtiff:location}/include + LDFLAGS=-Wl,-rpath=${fontconfig:location}/lib -L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -L${libtiff:location}/lib -Wl,-rpath=${libtiff:location}/lib + LD_LIBRARY_PATH=${fontconfig:location}/lib [ghostscript] <= ghostscript-9 [ghostscript-9] <= ghostscript-common -url = http://downloads.ghostscript.com/public/ghostscript-9.05.tar.bz2 -md5sum = 8bcef1f33ddf8a4d12b2cf8da385c191 +url = http://downloads.ghostscript.com/public/ghostscript-9.04.tar.bz2 +md5sum = 9f6899e821ab6d78ab2c856f10fa3023 diff --git a/component/git/buildout.cfg b/component/git/buildout.cfg index e88ef464e..a848e34be 100644 --- a/component/git/buildout.cfg +++ b/component/git/buildout.cfg @@ -13,8 +13,8 @@ parts = [git] recipe = hexagonit.recipe.cmmi -url = http://git-core.googlecode.com/files/git-1.7.8.4.tar.gz -md5sum = e6c3319d76d52a830af395046fc56143 +url = http://git-core.googlecode.com/files/git-1.7.8.3.tar.gz +md5sum = 7a4bc5160166537d4da5eb48a7670dff configure-options = --with-curl=${curl:location} --with-openssl=${openssl:location} diff --git a/component/graphviz/buildout.cfg b/component/graphviz/buildout.cfg index 9658c1ad0..85f97fb14 100644 --- a/component/graphviz/buildout.cfg +++ b/component/graphviz/buildout.cfg @@ -5,7 +5,6 @@ parts = graphviz extends = - ../bzip2/buildout.cfg ../fontconfig/buildout.cfg ../freetype/buildout.cfg ../libpng/buildout.cfg @@ -51,5 +50,5 @@ configure-options = environment = PATH=${pkgconfig:location}/bin:%(PATH)s PKG_CONFIG_PATH=${fontconfig:location}/lib/pkgconfig:${freetype:location}/lib/pkgconfig - CPPFLAGS=-I${bzip2:location}/include -I${zlib:location}/include - LDFLAGS=-L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib + CPPFLAGS=-I${zlib:location}/include + LDFLAGS=-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib diff --git a/component/groonga/buildout.cfg b/component/groonga/buildout.cfg index b5394501d..4c863643c 100644 --- a/component/groonga/buildout.cfg +++ b/component/groonga/buildout.cfg @@ -7,11 +7,10 @@ parts = [groonga] recipe = hexagonit.recipe.cmmi -url = http://packages.groonga.org/source/groonga/groonga-2.0.0.tar.gz -md5sum = 09e6a34db15cf42b6a3aff07e0f841ff +url = http://packages.groonga.org/source/groonga/groonga-1.2.9.tar.gz +md5sum = 47117baa401a3db08362e00f94fced12 configure-options = --disable-static --disable-glibtest --disable-benchmark - --disable-document --without-mecab diff --git a/component/haproxy/buildout.cfg b/component/haproxy/buildout.cfg index 08ba79f33..1d2465842 100644 --- a/component/haproxy/buildout.cfg +++ b/component/haproxy/buildout.cfg @@ -10,6 +10,6 @@ configure-command = true # otherwise use "generic". # For ARCH value, x86_64 and i[3456]86 are supported. make-options = - TARGET="$(uname -sr 2>/dev/null|grep -Eq '^Linux (2\.6|3)' && echo linux26 || echo generic)" + TARGET="$(uname -sr 2>/dev/null|grep -q '^Linux 2\.6' && echo linux26 || echo generic)" ARCH="$(uname -m 2>/dev/null|grep -E '^(x86_64|i[3456]86)$')" PREFIX=${buildout:parts-directory}/${:_buildout_section_name_} diff --git a/component/imagemagick/buildout.cfg b/component/imagemagick/buildout.cfg index 283af483b..062a81e90 100644 --- a/component/imagemagick/buildout.cfg +++ b/component/imagemagick/buildout.cfg @@ -27,10 +27,8 @@ filename = imagemagick-6.6.6-1-no-gsx-gsc-probe.patch [imagemagick] recipe = hexagonit.recipe.cmmi -url = ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-6.7.5-10.tar.bz2 -md5sum = 99bc7ec1e756fa75f1af6150df3d1383 -depends = - ${libtiff:version} +url = ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-6.7.3-10.tar.bz2 +md5sum = 3c1d1a04b1ed2998217e16001b58069f configure-options = --disable-static --without-x diff --git a/component/java/buildout.cfg b/component/java/buildout.cfg index 657b140eb..fdfd350db 100644 --- a/component/java/buildout.cfg +++ b/component/java/buildout.cfg @@ -29,8 +29,8 @@ slapos_promisee = directory:javaws file:lib/rt.jar file:bin/java -x86 = http://download.oracle.com/otn-pub/java/jdk/6u30-b12/jre-6u30-linux-i586.bin 3e80243483bc825c34ae01a4373cce5f -x86-64 = http://download.oracle.com/otn-pub/java/jdk/6u30-b12/jre-6u30-linux-x64.bin a4d28c49251d6b9c2d300b3d61f1ce95 +x86 = http://javadl.sun.com/webapps/download/AutoDL?BundleId=52240 0bd27d325c5ce11ce863d982ad052f7f +x86-64 = http://javadl.sun.com/webapps/download/AutoDL?BundleId=52242 a4d929bc4d6511290c07c3745477b77b script = if not self.options.get('url'): self.options['url'], self.options['md5sum'] = self.options[guessPlatform()].split(' ') download_file = self.download(self.options['url'], self.options.get('md5sum')) @@ -43,7 +43,7 @@ script = subprocess.call([auto_extract_bin]) self.cleanup_dir_list.append(extract_dir) workdir = guessworkdir(extract_dir) - self.copyTree(os.path.join(workdir, "jre1.6.0_30"), "%(location)s") + self.copyTree(os.path.join(workdir, "jre1.6.0_27"), "%(location)s") [java-sdk-1.6.0] recipe = slapos.recipe.build diff --git a/component/libjpeg/buildout.cfg b/component/libjpeg/buildout.cfg index 74e4461d2..a43400876 100644 --- a/component/libjpeg/buildout.cfg +++ b/component/libjpeg/buildout.cfg @@ -4,7 +4,7 @@ parts = [libjpeg] recipe = hexagonit.recipe.cmmi -url = http://www.ijg.org/files/jpegsrc.v8d.tar.gz -md5sum = 52654eb3b2e60c35731ea8fc87f1bd29 +url = http://www.ijg.org/files/jpegsrc.v8b.tar.gz +md5sum = e022acbc5b36cd2cb70785f5b575661e configure-options = --disable-static diff --git a/component/libpng/buildout.cfg b/component/libpng/buildout.cfg index 70229b0eb..a78e8143e 100644 --- a/component/libpng/buildout.cfg +++ b/component/libpng/buildout.cfg @@ -3,7 +3,6 @@ extends = ../zlib/buildout.cfg parts = - libpng12 libpng [libpng-common] @@ -14,12 +13,7 @@ environment = CPPFLAGS =-I${zlib:location}/include LDFLAGS =-L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -[libpng12] -<= libpng-common -url = http://download.sourceforge.net/libpng/libpng-1.2.47.tar.bz2 -md5sum = 4389dab9fcd2f9d57ac14701b9115f59 - [libpng] <= libpng-common -url = http://download.sourceforge.net/libpng/libpng-1.5.9.tar.bz2 -md5sum = 684ba5f05da436a99c6303a83c7856d6 +url = http://download.sourceforge.net/libpng/libpng-1.5.5.tar.bz2 +md5sum = 3270bf2990c3174ae939388398de751e diff --git a/component/libreoffice-bin/buildout.cfg b/component/libreoffice-bin/buildout.cfg index c788822e8..b5604c2e0 100644 --- a/component/libreoffice-bin/buildout.cfg +++ b/component/libreoffice-bin/buildout.cfg @@ -12,15 +12,15 @@ find-links = [libreoffice-bin] recipe = slapos.recipe.build # here, two %s are used, first one is for directory name (eg. x86_64), and second one is for filename (eg. x86-64). -version = 3.5.1 +version = 3.4.5 url = http://download.documentfoundation.org/libreoffice/stable/${:version}/rpm/%s/LibO_${:version}_Linux_%s_install-rpm_en-US.tar.gz # supported architectures md5sums -md5sum_x86 = ee46fdafb8361b8e131994508c2723b3 -md5sum_x86-64 = ddda58719358e5c97ca5d1c118646574 +md5sum_x86 = 34786e6aa570782abac551ab092f3fb3 +md5sum_x86-64 = 2159a50daab707c02b669a83f635ff0c # where office code can be found? -officedir = libreoffice3.5 +officedir = libreoffice3.4 # script to install script = @@ -38,11 +38,7 @@ script = rpmsdir = os.path.join(workdir, [q for q in os.listdir(workdir) if q == 'RPMS'][0]) rpmlist = [os.path.join(rpmsdir, q) for q in os.listdir(rpmsdir) if q.endswith('.rpm') and 'javafilter' not in q and 'xsltfilter' not in q] [self.pipeCommand([[sys.executable, '${:rpm2cpio}', rpm], ['${:cpio}', '-idum']], cwd=storagedir) for rpm in rpmlist] - self.copyTree(os.path.join(storagedir, 'opt', '${:officedir}'), location, ['ure-link']) - os.symlink('ure', os.path.join(location, 'ure-link')) - # backward compatibility for cloudooo configuration - os.mkdir(os.path.join(location, 'basis-link')) - os.symlink(os.path.join('..', 'program'), os.path.join(location, 'basis-link', 'program')) + self.copyTree(os.path.join(storagedir, 'opt', '${:officedir}'), location, ['basis3.4', 'ure']) # helper binaries cpio = ${cpio:location}/bin/cpio diff --git a/component/libtiff/buildout.cfg b/component/libtiff/buildout.cfg index ddf2db3d0..0d7814db8 100644 --- a/component/libtiff/buildout.cfg +++ b/component/libtiff/buildout.cfg @@ -9,11 +9,10 @@ parts = [libtiff] recipe = hexagonit.recipe.cmmi -version = 4.0.1 -#url = http://download.osgeo.org/libtiff/tiff-${:version}.tar.gz +#url = http://download.osgeo.org/libtiff/tiff-3.9.5.tar.gz # server is down - circumvent -url = http://www.imagemagick.org/download/delegates/tiff-${:version}.tar.gz -md5sum = fae149cc9da35c598d8be897826dfc63 +url = http://www.imagemagick.org/download/delegates/tiff-3.9.5.tar.gz +md5sum = 8fc7ce3b4e1d0cc8a319336967815084 configure-options = --disable-static --without-x diff --git a/component/mariadb/buildout.cfg b/component/mariadb/buildout.cfg index 3fa8cf611..d98313f30 100644 --- a/component/mariadb/buildout.cfg +++ b/component/mariadb/buildout.cfg @@ -3,13 +3,10 @@ [buildout] extends = - ../cmake/buildout.cfg ../zlib/buildout.cfg ../groonga/buildout.cfg - ../libaio/buildout.cfg ../libevent/buildout.cfg ../ncurses/buildout.cfg - ../openssl/buildout.cfg ../pkgconfig/buildout.cfg ../readline/buildout.cfg @@ -25,9 +22,9 @@ download-only = true [mariadb] recipe = hexagonit.recipe.cmmi -version = 5.3.5-ga +version = 5.3.3-rc url = http://downloads.askmonty.org/f/mariadb-${:version}/kvm-tarbake-jaunty-x86/mariadb-${:version}.tar.gz/from/http:/ftp.osuosl.org/pub/mariadb -md5sum = 98ce0441b37c8d681855150495fdc03b +md5sum = 715c61bb101acc7d37e893f6a9de9267 # compile directory is required to build mysql plugins. keep-compile-dir = true # configure: how to avoid searching for my.cnf? @@ -45,9 +42,10 @@ configure-options = --with-extra-charsets=complex --with-collation=utf8_unicode_ci --with-big-tables - --without-embedded-server + --with-embedded-server --with-plugins=max-no-ndb --with-aria-tmp-tables + --without-plugin-innodb_plugin --without-plugin-oqgraph --without-readline --with-ssl @@ -63,68 +61,11 @@ environment = [mroonga-mariadb] recipe = hexagonit.recipe.cmmi -url = https://github.com/downloads/mroonga/mroonga/mroonga-2.00.tar.gz -md5sum = 49dab92863b5c3fa1d49344c73357ca2 +url = https://github.com/downloads/mroonga/mroonga/mroonga-1.11.tar.gz +md5sum = 69e56246226e0b9969ee7f99e08aa7da configure-options = --with-mysql-source=${mariadb:location}__compile__/mariadb-${mariadb:version} --with-mysql-config=${mariadb:location}/bin/mysql_config -depends = - ${mariadb:version} -environment = - PATH=${groonga:location}/bin:${pkgconfig:location}/bin:%(PATH)s - CPPFLAGS=-I${groonga:location}/include/groonga - LDFLAGS=-L${groonga:location}/lib - PKG_CONFIG_PATH=${groonga:location}/lib/pkgconfig - -[mariadb-5.5-no_test-patch] -recipe = hexagonit.recipe.download -url = ${:_profile_base_location_}/${:filename} -md5sum = 14e6d713c16298a10f40d29f2b799aca -filename = mariadb_5.5_create_system_tables__no_test.patch -download-only = true - -[mariadb-5.5] -recipe = hexagonit.recipe.cmmi -version = 5.5.20 -url = http://downloads.askmonty.org/f/mariadb-${:version}/kvm-tarbake-jaunty-x86/mariadb-${:version}.tar.gz/from/http://ftp.osuosl.org/pub/mariadb -md5sum = e618343b5039fa468c0e1e6098785e3c -# compile directory is required to build mysql plugins. -keep-compile-dir = true -patch-options = -p0 -patches = - ${mariadb-5.5-no_test-patch:location}/${mariadb-5.5-no_test-patch:filename} -configure-command = ${cmake:location}/bin/cmake -configure-options = - -DCMAKE_INSTALL_PREFIX=${buildout:parts-directory}/${:_buildout_section_name_} - -DBUILD_CONFIG=mysql_release - -DDEFAULT_CHARSET=utf8 - -DDEFAULT_COLLATION=utf8_unicode_ci - -DWITH_SSL=system - -DWITH_ZLIB=system - -DWITH_READLINE=0 - -DWITH_PIC=1 - -DWITH_EXTRA_CHARSETS=complex - -DWITH_EMBEDDED_SERVER=0 - -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 - -DWITHOUT_DAEMON_EXAMPLE=1 - -DWITH_SPHINX_STORAGE_ENGINE=1 - -DCMAKE_C_FLAGS="-I${libaio:location}/include -I${ncurses:location}/include -I${openssl:location}/include -I${readline5:location}/include -I${zlib:location}/include" - -DCMAKE_INSTALL_RPATH=${libaio:location}/lib:${ncurses:location}/lib:${openssl:location}/lib:${readline5:location}/lib:${zlib:location}/lib -environment = - CMAKE_PROGRAM_PATH=${cmake:location}/bin - CMAKE_INCLUDE_PATH=${libaio:location}/include:${ncurses:location}/include:${openssl:location}/include:${readline5:location}/include:${zlib:location}/include - CMAKE_LIBRARY_PATH=${libaio:location}/lib:${ncurses:location}/lib:${openssl:location}/lib:${readline5:location}/lib:${zlib:location}/lib - LDFLAGS=-L${libaio:location}/lib - -[mroonga-mariadb-5.5] -recipe = hexagonit.recipe.cmmi -url = https://github.com/downloads/mroonga/mroonga/mroonga-2.00.tar.gz -md5sum = 49dab92863b5c3fa1d49344c73357ca2 -configure-options = - --with-mysql-source=${mariadb-5.5:location}__compile__/mariadb-${mariadb-5.5:version} - --with-mysql-config=${mariadb-5.5:location}/bin/mysql_config -depends = - ${mariadb-5.5:version} environment = PATH=${groonga:location}/bin:${pkgconfig:location}/bin:%(PATH)s CPPFLAGS=-I${groonga:location}/include/groonga diff --git a/component/openssl/buildout.cfg b/component/openssl/buildout.cfg index ba87ebacb..22398442b 100644 --- a/component/openssl/buildout.cfg +++ b/component/openssl/buildout.cfg @@ -19,20 +19,12 @@ url = ${:_profile_base_location_}/${:filename} filename = ${:_buildout_section_name_} download-only = true -[openssl-exlibs.patch] -recipe = hexagonit.recipe.download -md5sum = dfb8979460d6d75f2d23d1ea83bbb40a -url = ${:_profile_base_location_}/${:filename} -filename = ${:_buildout_section_name_} -download-only = true - [openssl] recipe = hexagonit.recipe.cmmi -url = https://www.openssl.org/source/openssl-1.0.1.tar.gz -md5sum = 134f168bc2a8333f19f81d684841710b +url = https://www.openssl.org/source/openssl-1.0.0g.tar.gz +md5sum = 07ecbe4324f140d157478637d6beccf1 patches = ${openssl-nodoc.patch:location}/${openssl-nodoc.patch:filename} - ${openssl-exlibs.patch:location}/${openssl-exlibs.patch:filename} patch-options = -p0 configure-command = ./config configure-options = @@ -41,11 +33,13 @@ configure-options = --openssldir=${buildout:parts-directory}/${:_buildout_section_name_}/etc/ssl --prefix=${buildout:parts-directory}/${:_buildout_section_name_} --libdir=lib - shared no-idea no-mdc2 no-rc5 zlib - -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${buildout:parts-directory}/${:_buildout_section_name_}/lib + shared + no-zlib # it seems that parallel build sometimes fails for openssl. make-options = -j1 make-targets = install && rm -f ${buildout:parts-directory}/${:_buildout_section_name_}/etc/ssl/certs/* && for i in ${ca-certificates:location}/certs/*/*.crt; do ln -sv $i ${buildout:parts-directory}/${:_buildout_section_name_}/etc/ssl/certs/`${buildout:parts-directory}/${:_buildout_section_name_}/bin/openssl x509 -hash -noout -in $i`.0; done; true + LDFLAGS="-Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${buildout:parts-directory}/${:_buildout_section_name_}/lib" + SHARED_LDFLAGS="-Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${buildout:parts-directory}/${:_buildout_section_name_}/lib" diff --git a/component/openssl/openssl-exlibs.patch b/component/openssl/openssl-exlibs.patch deleted file mode 100644 index 63b4d1160..000000000 --- a/component/openssl/openssl-exlibs.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- engines/ccgost/Makefile~ 2010-08-24 23:46:34.000000000 +0200 -+++ engines/ccgost/Makefile 2012-03-14 10:11:46.826419864 +0100 -@@ -7,6 +7,7 @@ - AR= ar r - CFLAGS= $(INCLUDES) $(CFLAG) - LIB=$(TOP)/libcrypto.a -+EX_LIBS= - - LIBSRC= gost2001.c gost2001_keyx.c gost89.c gost94_keyx.c gost_ameth.c gost_asn1.c gost_crypt.c gost_ctl.c gost_eng.c gosthash.c gost_keywrap.c gost_md.c gost_params.c gost_pmeth.c gost_sign.c - -@@ -32,7 +33,7 @@ - $(MAKE) -f $(TOP)/Makefile.shared -e \ - LIBNAME=$(LIBNAME) \ - LIBEXTRAS='$(LIBOBJ)' \ -- LIBDEPS='-L$(TOP) -lcrypto' \ -+ LIBDEPS='-L$(TOP) -lcrypto $(EX_LIBS)' \ - link_o.$(SHLIB_TARGET); \ - else \ - $(AR) $(LIB) $(LIBOBJ); \ diff --git a/component/percona-toolkit/buildout.cfg b/component/percona-toolkit/buildout.cfg index d24c05358..5b2047a8d 100644 --- a/component/percona-toolkit/buildout.cfg +++ b/component/percona-toolkit/buildout.cfg @@ -10,7 +10,7 @@ parts = recipe = hexagonit.recipe.cmmi depends = ${perl:version} -url = http://www.percona.com/redir/downloads/percona-toolkit/2.0.4/percona-toolkit-2.0.4.tar.gz -md5sum = df7dffcccb48d50f143849629228d4b4 +url = http://www.percona.com/redir/downloads/percona-toolkit/percona-toolkit-2.0.1.tar.gz +md5sum = 3a78c78672cb7c634bda35dfb2f817bf configure-command = ${perl:location}/bin/perl Makefile.PL diff --git a/component/poppler/buildout.cfg b/component/poppler/buildout.cfg index ed0583a75..938aa32a7 100644 --- a/component/poppler/buildout.cfg +++ b/component/poppler/buildout.cfg @@ -1,7 +1,6 @@ [buildout] parts = poppler extends = - ../bzip2/buildout.cfg ../fontconfig/buildout.cfg ../freetype/buildout.cfg ../jbigkit/buildout.cfg @@ -18,12 +17,10 @@ extends = recipe = hexagonit.recipe.cmmi md5sum = b566d1fbaa29b9257bf0ecc130e7b2ca url = http://poppler.freedesktop.org/poppler-0.17.2.tar.gz -depends = - ${libtiff:version} configure-options = --disable-cairo-output --disable-cms - --disable-libcurl + --disable-curl --disable-gtk-doc-html --disable-gtk-test --disable-poppler-cpp @@ -34,5 +31,5 @@ configure-options = environment = PATH=${pkgconfig:location}/bin:%(PATH)s PKG_CONFIG_PATH=${fontconfig:location}/lib/pkgconfig:${freetype:location}/lib/pkgconfig:${libpng:location}/lib/pkgconfig - CPPFLAGS=-I${bzip2:location}/include -I${libjpeg:location}/include -I${libpng:location}/include -I${libtiff:location}/include -I${zlib:location}/include - LDFLAGS=-L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${jbigkit:location}/lib -Wl,-rpath=${jbigkit:location}/lib -L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -L${libtiff:location}/lib -Wl,-rpath=${libtiff:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib + CPPFLAGS=-I${libjpeg:location}/include -I${libpng:location}/include -I${libtiff:location}/include -I${zlib:location}/include + LDFLAGS=-L${jbigkit:location}/lib -Wl,-rpath=${jbigkit:location}/lib -L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -L${libtiff:location}/lib -Wl,-rpath=${libtiff:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib diff --git a/component/python-2.6/buildout.cfg b/component/python-2.6/buildout.cfg index cb46c70fd..cf1f16347 100644 --- a/component/python-2.6/buildout.cfg +++ b/component/python-2.6/buildout.cfg @@ -30,18 +30,16 @@ depends = # other settings in this part if we don't set it explicitly here. prefix = ${buildout:parts-directory}/${:_buildout_section_name_} version = 2.6 -package_version = ${:version}.8 -package_version_suffix = rc1 +package_version = ${:version}.7 executable = ${:prefix}/bin/python${:version} url = - http://python.org/ftp/python/${:package_version}/Python-${:package_version}${:package_version_suffix}.tar.bz2 -md5sum = df6ccdac7da3b7c7c79124b92110277e + http://python.org/ftp/python/${:package_version}/Python-${:package_version}.tar.bz2 +md5sum = d40ef58ed88438a870bbeb0ac5d4217b patch-options = -p1 patches = ${python-2.6.6-no_system_inc_dirs.patch:location}/${python-2.6.6-no_system_inc_dirs.patch:filename} configure-options = - --enable-ipv6 --enable-unicode=ucs4 --with-threads diff --git a/component/python-2.7/buildout.cfg b/component/python-2.7/buildout.cfg index fb5fc7ad3..e4a5f5cbc 100644 --- a/component/python-2.7/buildout.cfg +++ b/component/python-2.7/buildout.cfg @@ -3,7 +3,6 @@ extends = ../bzip2/buildout.cfg ../gdbm/buildout.cfg ../gettext/buildout.cfg - ../libexpat/buildout.cfg ../ncurses/buildout.cfg ../openssl/buildout.cfg ../readline/buildout.cfg @@ -13,6 +12,21 @@ extends = parts = python2.7 +[python2.7] +<= python2.7.2 + +[python2.7.1] +<= python2.7common +package_version = 2.7.1 +md5sum = aa27bc25725137ba155910bd8e5ddc4f +package_version_suffix = + +[python2.7.2] +<= python2.7common +package_version = 2.7.2 +md5sum = ba7b2f11ffdbf195ee0d111b9455a5bd +package_version_suffix = + [bootstrap2.7] recipe = zc.recipe.egg eggs = zc.buildout @@ -22,12 +36,8 @@ scripts = arguments = sys.argv[1:] + ["bootstrap"] python = python2.7 -[python2.7] +[python2.7common] recipe = hexagonit.recipe.cmmi -package_version = 2.7.3 -package_version_suffix = rc1 -md5sum = 72aaa940dfa2777de161d7cb27c91df7 - depends = ${gdbm:version} # This is actually the default setting for prefix, but we can't use it in @@ -39,11 +49,9 @@ executable = ${:prefix}/bin/python${:version} url = http://python.org/ftp/python/${:package_version}/Python-${:package_version}${:package_version_suffix}.tar.bz2 configure-options = - --enable-ipv6 --enable-unicode=ucs4 - --with-system-expat --with-threads environment = - CPPFLAGS=-I${zlib:location}/include -I${readline:location}/include -I${libexpat:location}/include -I${ncurses:location}/include -I${ncurses:location}/include/ncursesw -I${bzip2:location}/include -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include - LDFLAGS=-L${zlib:location}/lib -L${readline:location}/lib -L${libexpat:location}/lib -L${ncurses:location}/lib -L${bzip2:location}/lib -L${gdbm:location}/lib -L${openssl:location}/lib -L${sqlite3:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${readline:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${ncurses:location}/lib -Wl,-rpath=${bzip2:location}/lib -Wl,-rpath=${gdbm:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${sqlite3:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib + CPPFLAGS=-I${zlib:location}/include -I${readline:location}/include -I${ncurses:location}/include/ -I${ncurses:location}/include/ncursesw/ -I${bzip2:location}/include -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include + LDFLAGS=-L${zlib:location}/lib -L${readline:location}/lib -L${ncurses:location}/lib -L${bzip2:location}/lib -L${gdbm:location}/lib -L${openssl:location}/lib -L${sqlite3:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${readline:location}/lib -Wl,-rpath=${ncurses:location}/lib -Wl,-rpath=${bzip2:location}/lib -Wl,-rpath=${gdbm:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${sqlite3:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib diff --git a/component/readline/buildout.cfg b/component/readline/buildout.cfg index 4210e38ad..273cbffb9 100644 --- a/component/readline/buildout.cfg +++ b/component/readline/buildout.cfg @@ -12,6 +12,18 @@ configure-options = --enable-multibyte --disable-static +# readline-5.x is still used for GPL2 only softwares. +[readline5] +recipe = hexagonit.recipe.cmmi +url = http://ftp.gnu.org/gnu/readline/readline-5.2.tar.gz +md5sum = e39331f32ad14009b9ff49cc10c5e751 +configure-options = + --enable-multibyte + --disable-static + --with-ncurses=${ncurses:location} +environment = + LDFLAGS =-Wl,-rpath=${ncurses:location}/lib + [readline] recipe = hexagonit.recipe.cmmi url = http://ftp.gnu.org/gnu/readline/readline-6.2.tar.gz diff --git a/component/sphinx/buildout.cfg b/component/sphinx/buildout.cfg index b6ae4bf2f..bb8b0aa7c 100644 --- a/component/sphinx/buildout.cfg +++ b/component/sphinx/buildout.cfg @@ -21,7 +21,9 @@ recipe = hexagonit.recipe.cmmi url = http://sphinxsearch.com/files/sphinx-2.0.2-beta.tar.gz md5sum = fafe0f1a71d0ded32404c067eba7d0b3 configure-options = - --with-mysql=${mariadb:location} + --with-mysql + --with-mysql-includes=${mariadb:location}/include/mysql + --with-mysql-libs=${mariadb:location}/lib/mysql --with-libstemmer --with-iconv --without-pgsql diff --git a/component/tesseract/buildout.cfg b/component/tesseract/buildout.cfg index 221bdd7ea..eb738c8c3 100644 --- a/component/tesseract/buildout.cfg +++ b/component/tesseract/buildout.cfg @@ -23,8 +23,6 @@ stop-on-error = yes recipe = hexagonit.recipe.cmmi url = http://tesseract-ocr.googlecode.com/files/tesseract-3.00.tar.gz md5sum = cc812a261088ea0c3d2da735be35d09f -depends = - ${libtiff:version} configure-options = --disable-static --datarootdir=${tesseract-share:location} diff --git a/component/tomcat/buildout.cfg b/component/tomcat/buildout.cfg deleted file mode 100644 index 8ce1c3dec..000000000 --- a/component/tomcat/buildout.cfg +++ /dev/null @@ -1,22 +0,0 @@ -# Apache Tomcat - an open source software implementation of the Java Servlet and JavaServer Pages technologies. -# http://tomcat.apache.org/ - -[buildout] - -parts = - tomcat - -[tomcat] -<= tomcat6 - -[tomcat6] -recipe = hexagonit.recipe.download -strip-top-level-dir = true -url = http://apache.multidist.com/tomcat/tomcat-6/v6.0.35/bin/apache-tomcat-6.0.35.tar.gz -md5sum = 171d255cd60894b29a41684ce0ff93a8 - -[tomcat7] -recipe = hexagonit.recipe.download -strip-top-level-dir = true -url = http://apache.multidist.com/tomcat/tomcat-7/v7.0.25/bin/apache-tomcat-7.0.25.tar.gz -md5sum = 2aa59d23555d641b20efad4aed86b693 diff --git a/component/wget/buildout.cfg b/component/wget/buildout.cfg deleted file mode 100644 index 08195cc8d..000000000 --- a/component/wget/buildout.cfg +++ /dev/null @@ -1,25 +0,0 @@ -[buildout] -extends = - ../openssl/buildout.cfg - ../pkgconfig/buildout.cfg - ../zlib/buildout.cfg -parts = - wget - -[wget] -recipe = hexagonit.recipe.cmmi -url = http://ftp.gnu.org/gnu/wget/wget-1.13.4.tar.bz2 -md5sum = 12115c3750a4d92f9c6ac62bac372e85 -configure-options = - --enable-ipv6 - --enable-opie - --disable-iri - --with-ssl=openssl - --with-libssl-prefix=${openssl:location} - --with-zlib-lib=${zlib:location} - -environment = - PATH=${pkgconfig:location}/bin:%(PATH)s - PKG_CONFIG_PATH=${openssl:location}/lib/pkgconfig - LDFLAGS=-L${zlib:location}/lib -L${openssl:location}/lib - CPPFLAGS=-I${zlib:location}/include -I${openssl:location}/include diff --git a/component/xorg/buildout.cfg b/component/xorg/buildout.cfg index edc919ff9..9258a76ce 100644 --- a/component/xorg/buildout.cfg +++ b/component/xorg/buildout.cfg @@ -13,8 +13,8 @@ parts = libXdmcp libXext libXau + libXinerama libSM - libXrender [xorg-aclocal] ACLOCAL=${xorg-util-macros:location}/share/aclocal @@ -33,7 +33,6 @@ configure-options = --without-xmlto --without-fop environment = - PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig PATH=${libxml2:location}/bin:${pkgconfig:location}/bin:%(PATH)s [xextproto] @@ -44,9 +43,6 @@ configure-options = --disable-specs --without-xmlto --without-fop -environment = - PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig - PATH=${pkgconfig:location}/bin:%(PATH)s [xtrans] recipe = hexagonit.recipe.cmmi @@ -57,7 +53,6 @@ configure-options = --without-xmlto --without-fop environment = - PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig PATH=${pkgconfig:location}/bin:%(PATH)s [libXau] @@ -67,7 +62,7 @@ md5sum = 4a2cbd83727682f9ee1c1e719bac6adb configure-options = --disable-static environment = - PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${xproto:location}/lib/pkgconfig + PKG_CONFIG_PATH=${xproto:location}/lib/pkgconfig PATH=${pkgconfig:location}/bin:%(PATH)s [xcbproto] @@ -104,7 +99,7 @@ recipe = hexagonit.recipe.cmmi url = http://www.x.org/releases/X11R7.6/src/lib/libXext-1.2.0.tar.bz2 md5sum = 9bb236ff0193e9fc1c1fb504dd840331 environment = - PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${xcbproto:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libxcb:location}/lib/pkgconfig + PKG_CONFIG_PATH=${xcbproto:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libxcb:location}/lib/pkgconfig CPPFLAGS=-I${xcbproto:location}/include -I${libXau:location}/include -I${xproto:location}/include -I${xorg-libpthread-stubs:location}/include -I${xextproto:location}/include -I${libX11:location}/include -I${libxcb:location}/include LD_LIBRARY_PATH=${xcbproto:location}/lib:${libXau:location}/lib:${xorg-libpthread-stubs:location}/lib:${xextproto:location}/lib:${libX11:location}/lib:${libxcb:location}/lib LD_RUN_PATH=${xcbproto:location}/lib:${libXau:location}/lib:${xorg-libpthread-stubs:location}/lib:${xextproto:location}/lib:${libX11:location}/lib:${libxcb:location}/lib @@ -153,7 +148,7 @@ configure-options = --without-xmlto --without-fop environment = - PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${xproto:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig:${libxcb:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${inputproto:location}/lib/pkgconfig:${kbproto:location}/lib/pkgconfig + PKG_CONFIG_PATH=${xproto:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig:${libxcb:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${inputproto:location}/lib/pkgconfig:${kbproto:location}/lib/pkgconfig LD_LIBRARY_PATH=${xproto:location}/lib:${xextproto:location}/lib:${libxcb:location}/lib LD_RUN_PATH=${xproto:location}/lib:${xextproto:location}/lib:${libxcb:location}/lib PATH=${pkgconfig:location}/bin:%(PATH)s @@ -334,7 +329,7 @@ configure-options = --without-xmlto --without-fop environment = - PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${xproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig + PKG_CONFIG_PATH=${xproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig PATH=${pkgconfig:location}/bin:%(PATH)s [libSM] @@ -346,26 +341,10 @@ configure-options = --without-xmlto --without-fop environment = - PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${libICE:location}/lib/pkgconfig:${libuuid:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig + PKG_CONFIG_PATH=${libICE:location}/lib/pkgconfig:${libuuid:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${xtrans:location}/share/pkgconfig PATH=${pkgconfig:location}/bin:%(PATH)s LIBUUID_CFLAGS=-I${libuuid:location}/include -[renderproto] -recipe = hexagonit.recipe.cmmi -url = http://www.x.org/releases/X11R7.6/src/proto/renderproto-0.11.1.tar.bz2 -md5sum = a914ccc1de66ddeb4b611c6b0686e274 - -[libXrender] -recipe = hexagonit.recipe.cmmi -url = http://www.x.org/releases/X11R7.6/src/lib/libXrender-0.9.6.tar.bz2 -md5sum = 3b3b7d076c2384b6c600c0b5f4ba971f -configure-options = - --disable-static -environment = - PKG_CONFIG_PATH=${libX11:location}/lib/pkgconfig:${renderproto:location}/lib/pkgconfig:${xorg-util-macros:location}/share/pkgconfig - PATH=${pkgconfig:location}/bin:%(PATH)s - CPPFLAGS=-I${libX11:location}/include -I${renderproto:location}/include -I${xproto:location}/include - [libXt] recipe = hexagonit.recipe.cmmi url = http://www.x.org/releases/X11R7.6/src/lib/libXt-1.0.9.tar.bz2 diff --git a/component/zlib/buildout.cfg b/component/zlib/buildout.cfg index 830d92c8e..3afcf1f80 100644 --- a/component/zlib/buildout.cfg +++ b/component/zlib/buildout.cfg @@ -4,5 +4,5 @@ parts = [zlib] recipe = hexagonit.recipe.cmmi -url = http://prdownloads.sourceforge.net/libpng/zlib-1.2.6.tar.bz2?download -md5sum = dc2cfa0d2313ca77224b4d932b2911e9 +url = http://prdownloads.sourceforge.net/libpng/zlib-1.2.5.tar.gz?download +md5sum = c735eab2d659a96e5a594c9e8541ad63 diff --git a/setup.py b/setup.py index 825bc5f1c..0d0a20e6f 100644 --- a/setup.py +++ b/setup.py @@ -120,12 +120,8 @@ setup(name=name, 'generate.cloudooo = slapos.recipe.generate_cloudooo:Recipe', 'zeo = slapos.recipe.zeo:Recipe', 'tidstorage = slapos.recipe.tidstorage:Recipe', - 'erp5.bootstrap = slapos.recipe.erp5_bootstrap:Recipe', - 'erp5.promise = slapos.recipe.erp5_promise:Recipe', 'erp5.update = slapos.recipe.erp5_update:Recipe', 'erp5.test = slapos.recipe.erp5_test:Recipe', - 'generic.varnish = slapos.recipe.generic_varnish:Recipe', - 'webchecker = slapos.recipe.web_checker:Recipe', ], 'slapos.recipe.nosqltestbed.plugin': [ 'kumo = slapos.recipe.nosqltestbed.kumo:KumoTestBed', diff --git a/slapos/recipe/apache_zope_backend/__init__.py b/slapos/recipe/apache_zope_backend/__init__.py index 8da96f658..e4b23482e 100644 --- a/slapos/recipe/apache_zope_backend/__init__.py +++ b/slapos/recipe/apache_zope_backend/__init__.py @@ -33,33 +33,10 @@ class Recipe(GenericBaseRecipe): ip = self.options['ip'] port = self.options['port'] backend = self.options['backend'] - - apache_conf = dict() - - scheme = self.options['scheme'] - if scheme == 'http': - required_path_list = [] - apache_conf['ssl_snippet'] = '' - elif scheme == 'https': - key = self.options['key-file'] - certificate = self.options['cert-file'] - required_path_list = [key, certificate] - apache_conf['key'] = key - apache_conf['certificate'] = certificate - apache_conf['ssl_session_cache'] = self.options['ssl-session-cache'] - apache_conf['ssl_snippet'] = pkg_resources.resource_string(__name__, - 'template/snippet.ssl.in') % apache_conf - if 'ssl-authentication' in self.options and self.optionIsTrue( - 'ssl-authentication'): - apache_conf['ssl_snippet'] += pkg_resources.resource_string(__name__, - 'template/snippet.ssl.ca.in') % dict( - ca_certificate=self.options['ssl-authentication-certificate'], - ca_crl=self.options['ssl-authentication-crl'] - ) - else: - raise ValueError, "Unsupported scheme %s" % scheme - + key = self.options['key-file'] + certificate = self.options['cert-file'] access_control_string = self.options['access-control-string'] + apache_conf = dict() apache_conf['pid_file'] = self.options['pid-file'] apache_conf['lock_file'] = self.options['lock-file'] apache_conf['ip'] = ip @@ -68,10 +45,11 @@ class Recipe(GenericBaseRecipe): apache_conf['error_log'] = self.options['error-log'] apache_conf['access_log'] = self.options['access-log'] apache_conf['server_name'] = '%s' % apache_conf['ip'] + apache_conf['certificate'] = certificate + apache_conf['key'] = key apache_conf['path'] = '/' apache_conf['access_control_string'] = access_control_string - apache_conf['rewrite_rule'] = "RewriteRule (.*) %s%s [L,P]" % (backend, - self.options.get('backend-path', '/')) + apache_conf['rewrite_rule'] = "RewriteRule (.*) %s$1 [L,P]" % backend apache_conf_string = pkg_resources.resource_string(__name__, 'template/apache.zope.conf.in') % apache_conf apache_config_file = self.createFile(self.options['configuration-file'], @@ -80,7 +58,7 @@ class Recipe(GenericBaseRecipe): wrapper = self.createPythonScript(self.options['wrapper'], __name__ + '.apache.runApache', [ dict( - required_path_list=required_path_list, + required_path_list=[key, certificate], binary=self.options['apache-binary'], config=apache_config_file ) diff --git a/slapos/recipe/apache_zope_backend/template/apache.zope.conf.in b/slapos/recipe/apache_zope_backend/template/apache.zope.conf.in index f39107b2f..ac689e15f 100644 --- a/slapos/recipe/apache_zope_backend/template/apache.zope.conf.in +++ b/slapos/recipe/apache_zope_backend/template/apache.zope.conf.in @@ -2,16 +2,12 @@ # Automatically generated # List of modules -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 LoadModule authz_host_module modules/mod_authz_host.so LoadModule log_config_module modules/mod_log_config.so LoadModule setenvif_module modules/mod_setenvif.so LoadModule version_module modules/mod_version.so LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so -LoadModule socache_shmcb_module modules/mod_socache_shmcb.so LoadModule ssl_module modules/mod_ssl.so LoadModule mime_module modules/mod_mime.so LoadModule dav_module modules/mod_dav.so @@ -22,23 +18,24 @@ LoadModule headers_module modules/mod_headers.so # Basic server configuration PidFile "%(pid_file)s" +LockFile "%(lock_file)s" Listen %(ip)s:%(port)s ServerAdmin %(server_admin)s TypesConfig conf/mime.types AddType application/x-compress .Z AddType application/x-gzip .gz .tgz -ServerTokens Prod -ServerSignature Off -TraceEnable Off - -# Apache 2.4's default value (60 seconds) can be a bit too short -TimeOut 300 - # As backend is trusting REMOTE_USER header unset it always RequestHeader unset REMOTE_USER -%(ssl_snippet)s +# SSL Configuration +SSLEngine on +SSLCertificateFile %(certificate)s +SSLCertificateKeyFile %(key)s +SSLRandomSeed startup builtin +SSLRandomSeed connect builtin + +SSLProxyEngine On # Log configuration ErrorLog "%(error_log)s" diff --git a/slapos/recipe/apache_zope_backend/template/snippet.ssl.ca.in b/slapos/recipe/apache_zope_backend/template/snippet.ssl.ca.in deleted file mode 100644 index 58a774f75..000000000 --- a/slapos/recipe/apache_zope_backend/template/snippet.ssl.ca.in +++ /dev/null @@ -1,4 +0,0 @@ -SSLVerifyClient require -RequestHeader set REMOTE_USER %%{SSL_CLIENT_S_DN_CN}s -SSLCACertificateFile %(ca_certificate)s -SSLCARevocationPath %(ca_crl)s diff --git a/slapos/recipe/apache_zope_backend/template/snippet.ssl.in b/slapos/recipe/apache_zope_backend/template/snippet.ssl.in deleted file mode 100644 index 0b9f8b357..000000000 --- a/slapos/recipe/apache_zope_backend/template/snippet.ssl.in +++ /dev/null @@ -1,12 +0,0 @@ - -# SSL Configuration -SSLEngine on -SSLCertificateFile %(certificate)s -SSLCertificateKeyFile %(key)s -SSLRandomSeed startup builtin -SSLRandomSeed connect builtin -SSLProtocol -ALL +SSLv3 +TLSv1 -SSLHonorCipherOrder On -SSLCipherSuite RC4-SHA:HIGH:!ADH -SSLSessionCache shmcb:%(ssl_session_cache)s(512000) -SSLProxyEngine On diff --git a/slapos/recipe/certificate_authority/__init__.py b/slapos/recipe/certificate_authority/__init__.py index 297182915..8cbbd7d08 100644 --- a/slapos/recipe/certificate_authority/__init__.py +++ b/slapos/recipe/certificate_authority/__init__.py @@ -45,14 +45,13 @@ class Recipe(GenericBaseRecipe): def install(self): path_list = [] - ca_country_code = self.options.get('country-code', 'XX') - ca_email = self.options.get('email', 'xx@example.com') - # XXX-BBB: State by mistake has been configured as string "('State',)" - # string, so keep this for backward compatibility of existing - # automatically setup CAs - ca_state = self.options.get('state', "('State',)") - ca_city = self.options.get('city', 'City') - ca_company = self.options.get('company', 'Company') + # XXX: We gotta find better a way to get these options + ca_country_code = 'XX' + ca_email = 'xx@example.com' + ca_state = 'State', + ca_city = 'City' + ca_company = 'Company' + # XXX: end self.setPath() diff --git a/slapos/recipe/davstorage/template/httpd.conf.in b/slapos/recipe/davstorage/template/httpd.conf.in index 9fdea7ade..515593e8c 100644 --- a/slapos/recipe/davstorage/template/httpd.conf.in +++ b/slapos/recipe/davstorage/template/httpd.conf.in @@ -3,9 +3,6 @@ ServerRoot "%(server_root)s" Listen [%(ip)s]:%(port)s # Needed modules -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 LoadModule authn_file_module "%(modules_dir)s/mod_authn_file.so" LoadModule authz_host_module "%(modules_dir)s/mod_authz_host.so" LoadModule authz_user_module "%(modules_dir)s/mod_authz_user.so" @@ -14,7 +11,6 @@ LoadModule auth_digest_module "%(modules_dir)s/mod_auth_digest.so" LoadModule log_config_module "%(modules_dir)s/mod_log_config.so" LoadModule headers_module "%(modules_dir)s/mod_headers.so" LoadModule setenvif_module "%(modules_dir)s/mod_setenvif.so" -LoadModule socache_shmcb_module modules/mod_socache_shmcb.so LoadModule ssl_module "%(modules_dir)s/mod_ssl.so" LoadModule mime_module "%(modules_dir)s/mod_mime.so" LoadModule dav_module "%(modules_dir)s/mod_dav.so" @@ -29,6 +25,7 @@ ServerTokens ProductOnly DocumentRoot "%(document_root)s" PidFile "%(pid_file)s" +LockFile "%(lock_file)s" DavLockDB "%(davlock_db)s" <Directory /> diff --git a/slapos/recipe/erp5/template/apache.zope.conf.in b/slapos/recipe/erp5/template/apache.zope.conf.in index 973cd992f..a63d29299 100644 --- a/slapos/recipe/erp5/template/apache.zope.conf.in +++ b/slapos/recipe/erp5/template/apache.zope.conf.in @@ -2,16 +2,12 @@ # Automatically generated # List of modules -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 LoadModule authz_host_module modules/mod_authz_host.so LoadModule log_config_module modules/mod_log_config.so LoadModule setenvif_module modules/mod_setenvif.so LoadModule version_module modules/mod_version.so LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so -LoadModule socache_shmcb_module modules/mod_socache_shmcb.so LoadModule ssl_module modules/mod_ssl.so LoadModule mime_module modules/mod_mime.so LoadModule dav_module modules/mod_dav.so @@ -23,6 +19,7 @@ LoadModule antiloris_module modules/mod_antiloris.so # Basic server configuration PidFile "%(pid_file)s" +LockFile "%(lock_file)s" Listen %(ip)s:%(port)s ServerAdmin %(server_admin)s TypesConfig conf/mime.types diff --git a/slapos/recipe/generic_mysql/template/mysql-init-function.sql.in b/slapos/recipe/erp5/template/mysql-init-function.sql.in similarity index 73% rename from slapos/recipe/generic_mysql/template/mysql-init-function.sql.in rename to slapos/recipe/erp5/template/mysql-init-function.sql.in index 6105ac73f..c4d0cbde4 100644 --- a/slapos/recipe/generic_mysql/template/mysql-init-function.sql.in +++ b/slapos/recipe/erp5/template/mysql-init-function.sql.in @@ -1,5 +1,5 @@ USE mysql; DROP FUNCTION IF EXISTS last_insert_grn_id; -CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.so'; +CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_groonga.so'; DROP FUNCTION IF EXISTS sphinx_snippets; CREATE FUNCTION sphinx_snippets RETURNS STRING SONAME 'sphinx.so'; diff --git a/slapos/recipe/erp5_bootstrap/__init__.py b/slapos/recipe/erp5_bootstrap/__init__.py deleted file mode 100644 index f6f1a99dc..000000000 --- a/slapos/recipe/erp5_bootstrap/__init__.py +++ /dev/null @@ -1,66 +0,0 @@ -############################################################################## -# -# Copyright (c) 2012 Vifib SARL and Contributors. All Rights Reserved. -# -# WARNING: This program as such is intended to be used by professional -# programmers who take the whole responsibility of assessing all potential -# consequences resulting from its eventual inadequacies and bugs -# End users who are looking for a ready-to-use solution with commercial -# guarantees and support are strongly adviced to contract a Free Software -# Service Company -# -# This program is Free Software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 3 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -############################################################################## - -from slapos.recipe.librecipe import GenericBaseRecipe -import os -import sys -import urlparse - -class Recipe(GenericBaseRecipe): - """ - Instanciate ERP5 in Zope - """ - - def install(self): - parsed = urlparse.urlparse(self.options['mysql-url']) - mysql_connection_string = "%(database)s@%(hostname)s:%(port)s "\ - "%(username)s %(password)s" % dict( - database=parsed.path.split('/')[1], - hostname=parsed.hostname, - port=parsed.port, - username=parsed.username, - password=parsed.password - ) - - zope_parsed = urlparse.urlparse(self.options['zope-url']) - - config = dict( - python_path=sys.executable, - user=zope_parsed.username, - password=zope_parsed.password, - site_id=zope_parsed.path.split('/')[1], - host="%s:%s" % (zope_parsed.hostname, zope_parsed.port), - sql_connection_string=mysql_connection_string, - ) - - # Runners - runner_path = self.createExecutable( - self.options['runner-path'], - self.substituteTemplate(self.getTemplateFilename('erp5_bootstrap.in'), - config)) - - return [runner_path] diff --git a/slapos/recipe/erp5_bootstrap/template/erp5_bootstrap.in b/slapos/recipe/erp5_bootstrap/template/erp5_bootstrap.in deleted file mode 100644 index c3087f8dc..000000000 --- a/slapos/recipe/erp5_bootstrap/template/erp5_bootstrap.in +++ /dev/null @@ -1,35 +0,0 @@ -#!%(python_path)s - -import httplib -import urllib -import base64 - -user = "%(user)s" -password = "%(password)s" -host = "%(host)s" -site_id = "%(site_id)s" -erp5_catalog_storage = 'erp5_mysql_innodb_catalog' -mysql_url = "%(sql_connection_string)s" - -header_dict = {'Authorization': 'Basic %%s' %% \ - base64.encodestring('%%s:%%s' %% (user, password)).strip()} -zope_connection = httplib.HTTPConnection(host) - -# Check if an ERP5 site is already created, as ERP5 does support having -# 2 instances in the same zope, and this script should not destroy user data -zope_connection.request('GET', '/isERP5SitePresent', headers=header_dict) -result = zope_connection.getresponse() - -if result.status == 204: # and (result.read() == "False"): - - # Create the expected ERP5 instance - zope_connection.request( - 'POST', '/manage_addProduct/ERP5/manage_addERP5Site', - urllib.urlencode({ - 'id': site_id, - 'erp5_catalog_storage': erp5_catalog_storage, - 'erp5_sql_connection_string': mysql_url, - 'cmf_activity_sql_connection_string': mysql_url, - }), - headers=header_dict) - diff --git a/slapos/recipe/erp5_promise/__init__.py b/slapos/recipe/erp5_promise/__init__.py deleted file mode 100644 index dec8b1cb5..000000000 --- a/slapos/recipe/erp5_promise/__init__.py +++ /dev/null @@ -1,52 +0,0 @@ -############################################################################## -# -# Copyright (c) 2012 Vifib SARL and Contributors. All Rights Reserved. -# -# WARNING: This program as such is intended to be used by professional -# programmers who take the whole responsibility of assessing all potential -# consequences resulting from its eventual inadequacies and bugs -# End users who are looking for a ready-to-use solution with commercial -# guarantees and support are strongly adviced to contract a Free Software -# Service Company -# -# This program is Free Software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 3 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -############################################################################## - -from slapos.recipe.librecipe import GenericBaseRecipe -import ConfigParser - -class Recipe(GenericBaseRecipe): - """ - Generate ERP5 promise configuration file - """ - - def install(self): - - promise_parser = ConfigParser.RawConfigParser() - - promise_parser.add_section('portal_templates') - promise_parser.set('portal_templates', 'repository', self.options['bt5-repository-url']) - promise_parser.set('portal_templates', 'expected_bt5', self.options['bt5']) - - promise_parser.add_section('external_service') - promise_parser.set('external_service', 'cloudooo_url', self.options['cloudooo-url']) - promise_parser.set('external_service', 'memcached_url', self.options['memcached-url']) - promise_parser.set('external_service', 'kumofs_url', self.options['kumofs-url']) - promise_parser.set('external_service', 'smtp_url', self.options['smtp-url']) - - promise_parser.write(open(self.options['promise-path'], 'w')) - - return [self.options['promise-path']] diff --git a/slapos/recipe/fontconfig/template/fontconfig.cfg.in b/slapos/recipe/fontconfig/template/fontconfig.cfg.in index 9167e6c7c..c6799d21d 100644 --- a/slapos/recipe/fontconfig/template/fontconfig.cfg.in +++ b/slapos/recipe/fontconfig/template/fontconfig.cfg.in @@ -1,6 +1,5 @@ <?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> -<cachedir>~/.fontconfig</cachedir> %(font_folder_path_snippet)s </fontconfig> \ No newline at end of file diff --git a/slapos/recipe/generate_erp5_tidstorage.py b/slapos/recipe/generate_erp5_tidstorage.py index 8ab68ed8d..cfc03e664 100644 --- a/slapos/recipe/generate_erp5_tidstorage.py +++ b/slapos/recipe/generate_erp5_tidstorage.py @@ -57,9 +57,6 @@ class Recipe(GenericSlapRecipe): known_tid_storage_identifier_dict = {} snippet_zeo = open(self.options['snippet-zeo']).read() for zeo_id, zeo_configuration_list in json_data['zeo'].iteritems(): - if not type(zeo_configuration_list) in (type([]), type(set()), type(())): - raise ValueError('%s passed in json is not a list, json: %s.' % ( - zeo_configuration_list, json_data)) storage_list = [] a = storage_list.append for zeo_slave in zeo_configuration_list: @@ -95,8 +92,7 @@ class Recipe(GenericSlapRecipe): zeo_connection_string = '\n'.join(zeo_connection_list) zope_dict.update( timezone=json_data['timezone'], - zeo_connection_string=zeo_connection_string, - site_id=site_id, + zeo_connection_string=zeo_connection_string ) # always one distribution node current_zope_port += 1 @@ -155,72 +151,32 @@ class Recipe(GenericSlapRecipe): longrequest_logger_interval=longrequest_logger_interval, **zope_dict) haproxy_backend_list.append('${%(part_name)s:ip}:${%(part_name)s:port}' % dict(part_name=part_name)) - - scheme = backend_configuration.get('scheme', ['https']) - # now generate backend access current_apache_port += 1 current_haproxy_port += 1 + part_list.append('apache-%(backend_name)s ca-apache-%(backend_name)s logrotate-entry-apache-%(backend_name)s haproxy-%(backend_name)s' % dict(backend_name=backend_name)) backend_dict = dict( backend_name=backend_name, apache_port=current_apache_port, - apache_public_port=current_apache_port+1, haproxy_port=current_haproxy_port, access_control_string=backend_configuration['access-control-string'], maxconn=backend_configuration['maxconn'], server_check_path='/%s/getId' % site_id, - haproxy_backend_list=' '.join(haproxy_backend_list), - ssl_authentication=backend_configuration.get('ssl-authentication', - False), - backend_path=backend_configuration.get('backend-path', '/') % { - 'site-id': site_id} - + haproxy_backend_list=' '.join(haproxy_backend_list) ) - current_apache_port += 1 + publish_url_list.append('url-%(backend_name)s = https://[${apache-%(backend_name)s:ip}]:${apache-%(backend_name)s:port}' % dict( + backend_name=backend_name)) output += snippet_backend % backend_dict - - if 'http' in scheme: - part_list.append('apache-public-%(backend_name)s logrotate-entry-apache-public-%(backend_name)s' % dict(backend_name=backend_name)) - publish_url_list.append('url-public-%(backend_name)s = http://[${apache-public-%(backend_name)s:ip}]:${apache-public-%(backend_name)s:port}' % dict( - backend_name=backend_name)) - if 'https' in scheme: - part_list.append('apache-%(backend_name)s ca-apache-%(backend_name)s logrotate-entry-apache-%(backend_name)s haproxy-%(backend_name)s' % dict(backend_name=backend_name)) - publish_url_list.append('url-%(backend_name)s = https://[${apache-%(backend_name)s:ip}]:${apache-%(backend_name)s:port}' % dict( - backend_name=backend_name)) - output += SECTION_BACKEND_PUBLISHER + '\n' output += '\n'.join(publish_url_list) part_list.append('publish-apache-backend-list') - master_dict = self.parameter_dict.copy() - if 'erp5-ca' in json_data: - erp5_ca = json_data['erp5-ca'] - # Fetching exactly named parameters from json in order to raise proper - # error if required - master_dict.update( - erp5_ca_country_code = erp5_ca['country-code'], - erp5_ca_email = erp5_ca['email'], - erp5_ca_state = erp5_ca['state'], - erp5_ca_city = erp5_ca['city'], - erp5_ca_company = erp5_ca['company'] - ) - else: - master_dict.update(dict( - erp5_ca_country_code = 'XX', - erp5_ca_email = 'xx@example.com', - # XXX-BBB: State by mistake has been configured as string "('State',)" - # string, so keep this for backward compatibility of existing - # automatically setup CAs - erp5_ca_state = "('State',)", - erp5_ca_city = 'City', - erp5_ca_company = 'Company' - )) prepend = open(self.options['snippet-master']).read() % dict( part_list=' \n'.join([' '+q for q in part_list]), known_tid_storage_identifier_dict=known_tid_storage_identifier_dict, haproxy_section="haproxy-%s" % backend_name, zope_section=zope_id, site_id=site_id, - **master_dict + **self.parameter_dict ) output = prepend + output with open(self.options['output'], 'w') as f: diff --git a/slapos/recipe/generic_kumofs/__init__.py b/slapos/recipe/generic_kumofs/__init__.py index 03d1a78b8..0b939c887 100644 --- a/slapos/recipe/generic_kumofs/__init__.py +++ b/slapos/recipe/generic_kumofs/__init__.py @@ -52,8 +52,7 @@ class Recipe(GenericBaseRecipe): kumo_manager_port=kumo_manager_port, kumo_server_port=kumo_server_port, kumo_server_listen_port=kumo_server_listen_port, - kumo_gateway_port=kumo_gateway_port, - shell_path=self.options['shell-path'], + kumo_gateway_port=kumo_gateway_port ) path_list.append(self.createExecutable(self.options['gateway-wrapper'], diff --git a/slapos/recipe/generic_kumofs/template/kumo_gateway.in b/slapos/recipe/generic_kumofs/template/kumo_gateway.in index f18c8a4ec..912f8f100 100644 --- a/slapos/recipe/generic_kumofs/template/kumo_gateway.in +++ b/slapos/recipe/generic_kumofs/template/kumo_gateway.in @@ -1,2 +1,2 @@ -#!%(shell_path)s +#!/bin/sh exec %(kumo_gateway_binary)s -F -E -m %(kumo_manager_ip)s:%(kumo_manager_port)s -t %(kumo_gateway_ip)s:%(kumo_gateway_port)s -o %(kumo_gateway_log)s diff --git a/slapos/recipe/generic_kumofs/template/kumo_manager.in b/slapos/recipe/generic_kumofs/template/kumo_manager.in index 25e2ed1a0..e63e3c569 100644 --- a/slapos/recipe/generic_kumofs/template/kumo_manager.in +++ b/slapos/recipe/generic_kumofs/template/kumo_manager.in @@ -1,2 +1,2 @@ -#!%(shell_path)s +#!/bin/sh exec %(kumo_manager_binary)s -a -l %(kumo_manager_ip)s:%(kumo_manager_port)s -o %(kumo_manager_log)s diff --git a/slapos/recipe/generic_kumofs/template/kumo_server.in b/slapos/recipe/generic_kumofs/template/kumo_server.in index aba0ac6f2..81aeabb32 100644 --- a/slapos/recipe/generic_kumofs/template/kumo_server.in +++ b/slapos/recipe/generic_kumofs/template/kumo_server.in @@ -1,2 +1,2 @@ -#!%(shell_path)s +#!/bin/sh exec %(kumo_server_binary)s -l %(kumo_server_ip)s:%(kumo_server_port)s -L %(kumo_server_listen_port)s -m %(kumo_manager_ip)s:%(kumo_manager_port)s -s %(kumo_server_storage)s -o %(kumo_server_log)s diff --git a/slapos/recipe/generic_memcached/__init__.py b/slapos/recipe/generic_memcached/__init__.py index fa6a40edd..7a3a77a2a 100644 --- a/slapos/recipe/generic_memcached/__init__.py +++ b/slapos/recipe/generic_memcached/__init__.py @@ -46,7 +46,6 @@ class Recipe(GenericBaseRecipe): memcached_binary=self.options['binary_path'], memcached_ip=self.options['ip'], memcached_port=self.options['port'], - shell_path=self.options['shell-path'], ) executable_path = self.createExecutable( diff --git a/slapos/recipe/generic_memcached/template/memcached.in b/slapos/recipe/generic_memcached/template/memcached.in index 32bf42cb9..92dae43a9 100644 --- a/slapos/recipe/generic_memcached/template/memcached.in +++ b/slapos/recipe/generic_memcached/template/memcached.in @@ -1,2 +1,2 @@ -#!%(shell_path)s +#!/bin/sh exec %(memcached_binary)s -p %(memcached_port)s -U %(memcached_port)s -l %(memcached_ip)s diff --git a/slapos/recipe/generic_mysql/__init__.py b/slapos/recipe/generic_mysql/__init__.py index c0ef36b46..6c36637d9 100644 --- a/slapos/recipe/generic_mysql/__init__.py +++ b/slapos/recipe/generic_mysql/__init__.py @@ -67,12 +67,6 @@ class Recipe(GenericBaseRecipe): mysql_script_list = [] - # user defined functions - mysql_script_list.append(self.substituteTemplate( - self.getTemplateFilename('mysql-init-function.sql.in'), - { - } - )) # real database mysql_script_list.append(self.substituteTemplate( self.getTemplateFilename('initmysql.sql.in'), diff --git a/slapos/recipe/generic_mysql/template/my.cnf.in b/slapos/recipe/generic_mysql/template/my.cnf.in index 78e847cd8..25d951e86 100644 --- a/slapos/recipe/generic_mysql/template/my.cnf.in +++ b/slapos/recipe/generic_mysql/template/my.cnf.in @@ -17,15 +17,15 @@ pid-file = %(pid_file)s log-error = %(error_log)s slow_query_log slow_query_log_file = %(slow_query_log)s -long_query_time = 1 +long_query_time = 5 max_allowed_packet = 128M query_cache_size = 32M -plugin-load = ha_mroonga.so;ha_sphinx.so;handlersocket.so +plugin-load = ha_groonga.so;ha_sphinx.so # By default only 100 connections are allowed, when using zeo # we may have much more connections -max_connections = 1000 +# max_connections = 1000 # The following are important to configure and depend a lot on to the size of # your database and the available resources. diff --git a/slapos/recipe/generic_varnish/__init__.py b/slapos/recipe/generic_varnish/__init__.py deleted file mode 100644 index 4187b7ea0..000000000 --- a/slapos/recipe/generic_varnish/__init__.py +++ /dev/null @@ -1,77 +0,0 @@ -############################################################################## -# -# Copyright (c) 2012 Vifib SARL and Contributors. All Rights Reserved. -# -# WARNING: This program as such is intended to be used by professional -# programmers who take the whole responsibility of assessing all potential -# consequences resulting from its eventual inadequacies and bugs -# End users who are looking for a ready-to-use solution with commercial -# guarantees and support are strongly adviced to contract a Free Software -# Service Company -# -# This program is Free Software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 3 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -############################################################################## -import os -import re -from slapos.recipe.librecipe import GenericSlapRecipe - -class Recipe(GenericSlapRecipe): - """ - Instantiate varnish daemon - - TODO: - - use varnish3.x and replace .vcl for it - """ - def _install(self): - ip = self.options['ip'] - backend_url = self.parameter_dict['tidstorage-url'] - backend_ip, backend_port = self._getBackendServer(backend_url) - varnishd_manager_port = int(self.options['manager-port']) - varnishd_server_port = int(self.options['server-port']) - path_list = [] - config = dict( - varnishd_binary=self.options['varnishd-binary'], - varnish_ip=ip, - varnishlog_binary=self.options['varnishlog-binary'], - varnishd_manager_port=varnishd_manager_port, - varnishd_server_port=varnishd_server_port, - varnishd_pid_file=self.options['pid-file'], - varnish_instance_name=self.options['varnish-instance-name'], - varnish_data=self.options['varnish-data'], - shell_path=self.options['shell-path'], - vcl_file=self.options['vcl-file'], - backend_ip = backend_ip, - backend_port = backend_port, - backend_server = "[%s]" % backend_ip, - ) - - path_list.append(self.createExecutable(self.options['varnishd-wrapper'], - self.substituteTemplate(self.getTemplateFilename('varnishd.in'), - config))) - path_list.append(self.createExecutable(self.options['varnishlog-wrapper'], - self.substituteTemplate(self.getTemplateFilename('varnishlog.in'), - config))) - path_list.append(self.createFile(self.options['vcl-file'], - self.substituteTemplate(self.getTemplateFilename('default.vcl.in'), - config))) - return path_list - - def _getBackendServer(self, url): - r = re.compile('\/\/\[(.*)\]:(\d*)') - result = r.search(url) - ip = result.groups()[0] - port = result.groups()[1] - return (ip, port) diff --git a/slapos/recipe/generic_varnish/template/default.vcl.in b/slapos/recipe/generic_varnish/template/default.vcl.in deleted file mode 100644 index bac86d2dc..000000000 --- a/slapos/recipe/generic_varnish/template/default.vcl.in +++ /dev/null @@ -1,124 +0,0 @@ -#This is a basic VCL configuration file for varnish. See the vcl(7) -#man page for details on VCL syntax and semantics. -# -#Default backend definition. Set this to point to your content -#server. -# -backend default { - .host = "%(backend_ip)s"; - .port = "%(backend_port)s"; - .probe = { - .timeout = 30s; - .interval = 5s; - .window = 4; - .threshold = 3; - .request = - "OPTIONS /erp5/getId HTTP/1.1" - "Host: %(backend_server)s:%(backend_port)s" - "Accept-Encoding: identity" - "Connection: close" - "User-Agent: Varnish"; - } -} -# -#Below is a commented-out copy of the default VCL logic. If you -#redefine any of these subroutines, the built-in logic will be -#appended to your code. -# - -sub vcl_recv { - if (req.request != "GET" && - req.request != "HEAD" && - req.request != "PUT" && - req.request != "POST" && - req.request != "TRACE" && - req.request != "OPTIONS" && - req.request != "PURGE" && - req.request != "DELETE") { - /* Non-RFC2616 or CONNECT which is weird. */ - pipe; - } - if (req.request != "GET" && req.request != "HEAD" && req.request != "PURGE") { - /* We only deal with GET and HEAD by default */ - pass; - } - remove req.http.Cookie; - remove req.http.Set-Cookie; - if (req.http.Accept-Encoding) { - if (req.http.Accept-Encoding ~ "gzip") { - set req.http.Accept-Encoding = "gzip"; - } elsif (req.http.Accept-Encoding ~ "deflate") { - set req.http.Accept-Encoding = "deflate"; - } else { - # unkown algorithm - remove req.http.Accept-Encoding; - } - } - # Force deflate - remove req.http.Accept-Encoding; - # We do not care about Accept-Language, this is url controlled - remove req.http.Accept-Language; - #if (req.request == "PURGE") { - # if (!client.ip ~ purge) { - # error 405 "Not allowed."; - # } - # purge_url(req.url); - # error 200 "HASHPURGED"; - # unset req.http.x; - #} - set req.grace = 30d; - lookup; -} - -sub vcl_hash { - set req.hash += req.url; - hash; -} - -sub vcl_hit { - #if (req.request == "PURGE" && client.ip ~ purge) { - # set obj.ttl = 0s; - # error 200 "Purged."; - #} - - #if (client.ip ~ purge){ - # # Force refresh from localhost - # set obj.ttl = 0s; - # return (restart); - #} - # According Vary Header do not return those headers - remove req.http.Accept-Language; - remove req.http.Accept-Encoding; - remove req.http.Cookie; - deliver; -} - -sub vcl_miss { - fetch; -} - -sub vcl_fetch { - /* Never send request to backend even if client ask refreshed content */ - if (obj.cacheable) { - /* Setup grace period for 30days for all cacheable contents */ - #set req.grace = 30d; - set obj.grace = 30d; - } - deliver; - } - - -sub vcl_deliver { - if (obj.hits > 0) { - set resp.http.X-Cache = obj.hits; - } else { - set resp.http.X-Cache = "MISS"; - } - #if (obj.hash) { - # set resp.http.X-Hash = obj.hash; - #} else { - # set resp.http.X-Hash = "No hash"; - #} - - deliver; -} diff --git a/slapos/recipe/generic_varnish/template/varnishd.in b/slapos/recipe/generic_varnish/template/varnishd.in deleted file mode 100644 index c30582488..000000000 --- a/slapos/recipe/generic_varnish/template/varnishd.in +++ /dev/null @@ -1,15 +0,0 @@ -#!%(shell_path)s - -DAEMON_OPTS="-F \ - -a %(varnish_ip)s:%(varnishd_server_port)s \ - -T %(varnish_ip)s:%(varnishd_manager_port)s \ - -n %(varnish_instance_name)s \ - -f %(vcl_file)s \ - -s file,%(varnish_data)s/varnish_storage.bin,1G" - -PIDFILE=%(varnishd_pid_file)s -# exporting PATH here so that we will pass the PATH variable to the subprocess -export PATH -output=$(/bin/tempfile -s.varnish) -exec %(varnishd_binary)s -P ${PIDFILE} ${DAEMON_OPTS} > ${output} 2>&1 - diff --git a/slapos/recipe/generic_varnish/template/varnishlog.in b/slapos/recipe/generic_varnish/template/varnishlog.in deleted file mode 100644 index 72141b9f7..000000000 --- a/slapos/recipe/generic_varnish/template/varnishlog.in +++ /dev/null @@ -1,6 +0,0 @@ -#!%(shell_path)s - -DAEMON_OPTS="-a %(varnish_ip)s:%(varnishd_server_port)s \ - -n %(varnish_instance_name)s" - -exec %(varnishlog_binary)s ${DAEMON_OPTS} "$@" diff --git a/slapos/recipe/generic_varnish/template/varnishlogd.in b/slapos/recipe/generic_varnish/template/varnishlogd.in deleted file mode 100644 index b0f1e24dc..000000000 --- a/slapos/recipe/generic_varnish/template/varnishlogd.in +++ /dev/null @@ -1,22 +0,0 @@ -#!%(shell_path)s - -DAEMON_OPTS="-F \ - -a %(varnish_ip)s:%(varnishd_server_port)s \ - -T %(varnish_ip)s:%(varnishd_manager_port)s \ - -n %(varnish_instance_name)s \ - -f %(vcl_file)s \ - -s file,%(varnish_data)s/varnish_storage.bin,1G" - -PIDFILE=%(varnishd_pid_file)s -# exporting PATH here so that it will pass the PATH variable to the subprocess -export PATH - -# If unset, or set to "0" or "no", exit -if [ -z "${VARNISHLOG_ENABLED}" ] || \ - [ "${VARNISHLOG_ENABLED}" = "0" ] || \ - [ "${VARNISHLOG_ENABLED}" = "no" ]; then - exit 0; -fi - -output=$(/bin/tempfile -s.varnish) -exec %(varnishlog_binary)s ${DAEMON_OPTS} > ${output} 2>&1 diff --git a/slapos/recipe/generic_zope/__init__.py b/slapos/recipe/generic_zope/__init__.py index 5f1b601ea..0c29ac934 100644 --- a/slapos/recipe/generic_zope/__init__.py +++ b/slapos/recipe/generic_zope/__init__.py @@ -128,13 +128,6 @@ class Recipe(GenericBaseRecipe): zope_conf_content = self.substituteTemplate(zope_wrapper_template_location, zope_config) - if ('promise-path' in self.options) and ('site-id' in self.options): - zope_conf_content += self.substituteTemplate(self.getTemplateFilename( - 'zope.conf.promise.in'), { - 'site-id': self.options['site-id'], - 'promise-path': self.options['promise-path'], - }) - zope_conf_path = self.createFile(self.options['configuration-file'], zope_conf_content) path_list.append(zope_conf_path) # Create init script diff --git a/slapos/recipe/generic_zope/template/zope.conf.in b/slapos/recipe/generic_zope/template/zope.conf.in index 36f0fead1..3853b0d64 100644 --- a/slapos/recipe/generic_zope/template/zope.conf.in +++ b/slapos/recipe/generic_zope/template/zope.conf.in @@ -20,11 +20,6 @@ zserver-threads %(thread_amount)s pid-filename %(pid-filename)s lock-filename %(lock-filename)s -# Encoding -rest-input-encoding utf-8 -rest-output-encoding utf-8 -default-zpublisher-encoding utf-8 - # Temporary storage database (for sessions) <zodb_db temporary> <temporarystorage> diff --git a/slapos/recipe/generic_zope/template/zope.conf.promise.in b/slapos/recipe/generic_zope/template/zope.conf.promise.in deleted file mode 100644 index 692ae21c2..000000000 --- a/slapos/recipe/generic_zope/template/zope.conf.promise.in +++ /dev/null @@ -1,5 +0,0 @@ - -# ERP5 promise -<product-config /%(site-id)s> - promise_path %(promise-path)s -</product-config> diff --git a/slapos/recipe/generic_zope_zeo_client/__init__.py b/slapos/recipe/generic_zope_zeo_client/__init__.py index f3ea8d574..94e4cf8b9 100644 --- a/slapos/recipe/generic_zope_zeo_client/__init__.py +++ b/slapos/recipe/generic_zope_zeo_client/__init__.py @@ -115,7 +115,7 @@ class Recipe(GenericBaseRecipe): TMPDIR=self.options['tmp-path'], HOME=self.options['tmp-path'], PATH=self.options['bin-path'], - TZ=self.options['timezone'], + TIMEZONE=self.options['timezone'], ) # longrequestlogger product which requires environment settings @@ -157,18 +157,6 @@ class Recipe(GenericBaseRecipe): if self.isTrueValue(self.options['timeserver']): zope_conf_content += self.substituteTemplate(self.getTemplateFilename( 'zope.conf.timeserver.in'), {}) - if 'tidstorage-ip' in self.options: - zope_conf_content += self.substituteTemplate(self.getTemplateFilename( - 'zope.conf.tidstorage.in'), { - 'tidstorage-ip': self.options['tidstorage-ip'], - 'tidstorage-port': self.options['tidstorage-port'], - }) - if ('promise-path' in self.options) and ('site-id' in self.options): - zope_conf_content += self.substituteTemplate(self.getTemplateFilename( - 'zope.conf.promise.in'), { - 'site-id': self.options['site-id'], - 'promise-path': self.options['promise-path'], - }) zope_conf_path = self.createFile(self.options['configuration-file'], zope_conf_content) path_list.append(zope_conf_path) diff --git a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.in b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.in index 72866b799..9f64fff79 100644 --- a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.in +++ b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.in @@ -20,11 +20,6 @@ zserver-threads %(thread_amount)s pid-filename %(pid-filename)s lock-filename %(lock-filename)s -# Encoding -rest-input-encoding utf-8 -rest-output-encoding utf-8 -default-zpublisher-encoding utf-8 - # Temporary storage database (for sessions) <zodb_db temporary> <temporarystorage> diff --git a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.promise.in b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.promise.in deleted file mode 100644 index 692ae21c2..000000000 --- a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.promise.in +++ /dev/null @@ -1,5 +0,0 @@ - -# ERP5 promise -<product-config /%(site-id)s> - promise_path %(promise-path)s -</product-config> diff --git a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.tidstorage.in b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.tidstorage.in deleted file mode 100644 index d3e0bb4ba..000000000 --- a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.tidstorage.in +++ /dev/null @@ -1,6 +0,0 @@ - -# TIDStorage connection -<product-config TIDStorage> - backend-ip %(tidstorage-ip)s - backend-port %(tidstorage-port)s -</product-config> diff --git a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.timeserver.in b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.timeserver.in index a1edc33f9..707c6bab6 100644 --- a/slapos/recipe/generic_zope_zeo_client/template/zope.conf.timeserver.in +++ b/slapos/recipe/generic_zope_zeo_client/template/zope.conf.timeserver.in @@ -2,5 +2,5 @@ # ERP5 Timer Service %%import timerserver <timer-server> - interval 1 + interval 5 </timer-server> diff --git a/slapos/recipe/lamp/template/apache.in b/slapos/recipe/lamp/template/apache.in index b0b180872..1d7d6a94d 100644 --- a/slapos/recipe/lamp/template/apache.in +++ b/slapos/recipe/lamp/template/apache.in @@ -3,6 +3,7 @@ # Basic server configuration PidFile "%(pid_file)s" +LockFile "%(lock_file)s" Listen %(ip)s:%(port)s PHPINIDir %(php_ini_dir)s ServerAdmin someone@email @@ -38,9 +39,6 @@ DocumentRoot %(document_root)s DirectoryIndex index.html index.php # List of modules -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 LoadModule authz_host_module modules/mod_authz_host.so LoadModule log_config_module modules/mod_log_config.so LoadModule setenvif_module modules/mod_setenvif.so diff --git a/slapos/recipe/lamp/template/my.cnf.in b/slapos/recipe/lamp/template/my.cnf.in index 1466632e5..00eb28023 100644 --- a/slapos/recipe/lamp/template/my.cnf.in +++ b/slapos/recipe/lamp/template/my.cnf.in @@ -21,7 +21,7 @@ long_query_time = 5 max_allowed_packet = 128M query_cache_size = 32M -plugin-load = ha_mroonga.so;ha_sphinx.so +plugin-load = ha_groonga.so;ha_sphinx.so # The following are important to configure and depend a lot on to the size of # your database and the available resources. diff --git a/slapos/recipe/logrotate.py b/slapos/recipe/logrotate.py index 06a455379..42959a1c0 100644 --- a/slapos/recipe/logrotate.py +++ b/slapos/recipe/logrotate.py @@ -31,14 +31,23 @@ from slapos.recipe.librecipe import GenericBaseRecipe class Recipe(GenericBaseRecipe): def install(self): + logrotate_backup = self.options['backup'] logrotate_d = self.options['logrotate-entries'] logrotate_conf_file = self.options['conf'] logrotate_conf = [ + 'daily', + 'dateext', + 'rotate 3650', + 'compress', 'compresscmd %s' % self.options['gzip-binary'], 'compressoptions -9', 'uncompresscmd %s' % self.options['gunzip-binary'], + 'notifempty', + 'sharedscripts', + 'create', 'include %s' % logrotate_d, + 'olddir %s' % logrotate_backup, ] logrotate_conf_file = self.createFile(logrotate_conf_file, @@ -60,16 +69,7 @@ class Part(GenericBaseRecipe): logrotate_d = self.options['logrotate-entries'] - conf = [ - 'daily', - 'dateext', - 'rotate 3650', - 'compress', - 'notifempty', - 'sharedscripts', - 'create', - 'olddir %s' % self.options['backup'], - ] + conf = [] if 'post' in self.options: conf.append("postrotate\n%s\nendscript" % self.options['post']) diff --git a/slapos/recipe/mkdirectory.py b/slapos/recipe/mkdirectory.py index 9ed44f14f..2eebf5579 100644 --- a/slapos/recipe/mkdirectory.py +++ b/slapos/recipe/mkdirectory.py @@ -33,12 +33,21 @@ class Recipe(GenericBaseRecipe): def _options(self, options): self.directory = options.copy() del self.directory['recipe'] - self.mode = int(self.directory.pop('mode', '700'), 8) + + str_mode = '0700' + if 'mode' in self.directory: + str_mode = self.directory['mode'] + del self.directory['mode'] + self.mode = int(str_mode, 8) def install(self): - for path in sorted(self.directory.values()): + + for directory in sorted(self.directory.values()): + path = directory + if not os.path.exists(path): - os.makedirs(path, self.mode) + os.mkdir(path, self.mode) elif not os.path.isdir(path): raise OSError("%s path exits, but it's not a directory.") + return [] diff --git a/slapos/recipe/mysql/template/my.cnf.in b/slapos/recipe/mysql/template/my.cnf.in index 5359785be..f72db9244 100644 --- a/slapos/recipe/mysql/template/my.cnf.in +++ b/slapos/recipe/mysql/template/my.cnf.in @@ -19,7 +19,7 @@ long_query_time = 5 max_allowed_packet = 128M query_cache_size = 32M -plugin-load = ha_mroonga.so;ha_sphinx.so +plugin-load = ha_groonga.so;ha_sphinx.so # The following are important to configure and depend a lot on to the size of # your database and the available resources. diff --git a/slapos/recipe/pulse2/template/apache.in.in b/slapos/recipe/pulse2/template/apache.in.in index 5bcaade54..3a8a8c7f6 100644 --- a/slapos/recipe/pulse2/template/apache.in.in +++ b/slapos/recipe/pulse2/template/apache.in.in @@ -3,6 +3,7 @@ # Basic server configuration PidFile "%(pid_file)s" +LockFile "%(lock_file)s" Listen %(ip)s:%(port)s PHPINIDir %(php_ini_dir)s ServerAdmin someone@email @@ -41,9 +42,6 @@ DocumentRoot %(document_root)s DirectoryIndex index.html index.php # List of modules -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 LoadModule authz_host_module modules/mod_authz_host.so LoadModule log_config_module modules/mod_log_config.so LoadModule setenvif_module modules/mod_setenvif.so diff --git a/slapos/recipe/request.py b/slapos/recipe/request.py index 52c8454f9..68405ab02 100644 --- a/slapos/recipe/request.py +++ b/slapos/recipe/request.py @@ -54,7 +54,7 @@ class Recipe(object): self.return_parameters = [str(parameter).strip() for parameter in options['return'].split()] else: - self.logger.debug("No parameter to return to main instance." + self.logger.warning("No parameter to return to main instance." "Be careful about that...") software_type = 'RootInstanceSoftware' diff --git a/slapos/recipe/symbolic_link.py b/slapos/recipe/symbolic_link.py index 4e1d97e47..2bcc01d6f 100644 --- a/slapos/recipe/symbolic_link.py +++ b/slapos/recipe/symbolic_link.py @@ -54,5 +54,3 @@ class Recipe: path_list.append(link) return path_list - - update = install diff --git a/slapos/recipe/web_checker/__init__.py b/slapos/recipe/web_checker/__init__.py deleted file mode 100644 index 4101e5bf4..000000000 --- a/slapos/recipe/web_checker/__init__.py +++ /dev/null @@ -1,53 +0,0 @@ -############################################################################## -# -# Copyright (c) 2012 Vifib SARL and Contributors. All Rights Reserved. -# -# WARNING: This program as such is intended to be used by professional -# programmers who take the whole responsibility of assessing all potential -# consequences resulting from its eventual inadequacies and bugs -# End users who are looking for a ready-to-use solution with commercial -# guarantees and support are strongly adviced to contract a Free Software -# Service Company -# -# This program is Free Software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 3 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -############################################################################## -import os -import re -from slapos.recipe.librecipe import GenericSlapRecipe - -class Recipe(GenericSlapRecipe): - """ - Create web checker configuration. - """ - def _install(self): - path_list = [] - web_checker_mail_address = self.parameter_dict['web-checker-mail-address'] - web_checker_smtp_host = self.parameter_dict['web-checker-smtp-host'] - web_checker_working_directory = \ - self.options['web-checker-working-directory'] - config = dict( - web_checker_mail_address = web_checker_mail_address, - web_checker_smtp_host = web_checker_smtp_host, - web_checker_working_directory = web_checker_working_directory, - frontend_url = self.options['frontend-url'], - wget_binary_path = self.options['wget-binary-path'], - varnishlog_binary_path = self.options['varnishlog-binary-path'], - web_checker_log = self.options['web-checker-log'], - ) - path_list.append(self.createFile(self.options['web-checker-config'], - self.substituteTemplate(self.getTemplateFilename('web_checker.cfg.in'), - config))) - return path_list diff --git a/slapos/recipe/web_checker/template/web_checker.cfg.in b/slapos/recipe/web_checker/template/web_checker.cfg.in deleted file mode 100644 index 8ac98a61c..000000000 --- a/slapos/recipe/web_checker/template/web_checker.cfg.in +++ /dev/null @@ -1,36 +0,0 @@ -[web_checker] -url = %(frontend_url)s -working_directory = %(web_checker_working_directory)s -varnishlog_binary_path = %(varnishlog_binary_path)s -wget_binary_path = %(wget_binary_path)s -email_address = %(web_checker_mail_address)s -smtp_host = %(web_checker_smtp_host)s -debug_level = debug -file_log_path = %(web_checker_log)s - -[header_list] -Last-Modified = True -Expires = True -Vary = Accept-Language, Cookie, Accept-Encoding - Accept-Language, Cookie - Accept-Language,Cookie,Accept-Encoding - Accept-Language,Cookie - Accept-Encoding -Cache-Control = max-age=300 - max-age=3600 - -[header url=(.*_form)] -Vary = Accept-Encoding - -[header url=.*/favicon.ico] -Last-Modified = True - -[no_header content-type=(image/.*|text/css|.*/javascript)] -Vary = None - -[erp5_extension_list] -prohibited_folder_name_list = web_page_module - document_module -prohibited_file_name_list = WebSection_viewAsWeb - Base_viewHistory - list diff --git a/slapos/recipe/xwiki/template/my.cnf.in b/slapos/recipe/xwiki/template/my.cnf.in index 1466632e5..00eb28023 100644 --- a/slapos/recipe/xwiki/template/my.cnf.in +++ b/slapos/recipe/xwiki/template/my.cnf.in @@ -21,7 +21,7 @@ long_query_time = 5 max_allowed_packet = 128M query_cache_size = 32M -plugin-load = ha_mroonga.so;ha_sphinx.so +plugin-load = ha_groonga.so;ha_sphinx.so # The following are important to configure and depend a lot on to the size of # your database and the available resources. diff --git a/software/cloudooo/instance.cfg b/software/cloudooo/instance.cfg index a1a1b42e2..5d3da358e 100644 --- a/software/cloudooo/instance.cfg +++ b/software/cloudooo/instance.cfg @@ -23,4 +23,4 @@ link_binary_list = ${pdftk:location}/bin/pdftk environment = - LD_LIBRARY_PATH = ${file:location}/lib:${fontconfig:location}/lib:${freetype:location}/lib:${libICE:location}/lib:${libpng12:location}/lib:${libSM:location}/lib:${libX11:location}/lib:${libXau:location}/lib:${libXdmcp:location}/lib:${libXext:location}/lib:${libxcb:location}/lib:${libXrender:location}/lib:${zlib:location}/lib + LD_LIBRARY_PATH = ${file:location}/lib:${fontconfig:location}/lib:${freetype:location}/lib:${libICE:location}/lib:${libSM:location}/lib:${libX11:location}/lib:${libXau:location}/lib:${libXdmcp:location}/lib:${libXext:location}/lib:${libXinerama:location}/lib:${libxcb:location}/lib:${zlib:location}/lib diff --git a/software/cloudooo/software.cfg b/software/cloudooo/software.cfg index 7f8143fb4..879ef71da 100644 --- a/software/cloudooo/software.cfg +++ b/software/cloudooo/software.cfg @@ -33,6 +33,6 @@ module = cloudooo # Default template for erp5 instance. recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance.cfg -md5sum = 49da453a38dc5462c170747a029037b7 +md5sum = 2a38a928deb5870e02a8271b34341f5b output = ${buildout:directory}/template.cfg mode = 0644 diff --git a/software/erp5/instance-cloudooo.cfg b/software/erp5/instance-cloudooo.cfg index 3428ecd13..894530fed 100644 --- a/software/erp5/instance-cloudooo.cfg +++ b/software/erp5/instance-cloudooo.cfg @@ -27,7 +27,7 @@ wrapper = $${basedirectory:services}/cloudooo data-directory = $${directory:cloudooo-data} environment = - LD_LIBRARY_PATH = ${file:location}/lib:${fontconfig:location}/lib:${freetype:location}/lib:${libICE:location}/lib:${libpng12:location}/lib:${libSM:location}/lib:${libX11:location}/lib:${libXau:location}/lib:${libXdmcp:location}/lib:${libXext:location}/lib:${libxcb:location}/lib:${libXrender:location}/lib:${zlib:location}/lib + LD_LIBRARY_PATH = ${file:location}/lib:${fontconfig:location}/lib:${freetype:location}/lib:${libICE:location}/lib:${libSM:location}/lib:${libX11:location}/lib:${libXau:location}/lib:${libXdmcp:location}/lib:${libXext:location}/lib:${libXinerama:location}/lib:${libxcb:location}/lib:${zlib:location}/lib FONTCONFIG_FILE = $${fontconfig-instance:conf-path} # Binary information diff --git a/software/erp5/instance-erp5-development.cfg b/software/erp5/instance-erp5-development.cfg index 1664c2c1a..605342eb6 100644 --- a/software/erp5/instance-erp5-development.cfg +++ b/software/erp5/instance-erp5-development.cfg @@ -54,11 +54,11 @@ ca-crl = $${test-cadirectory:crl} [test-cadirectory] recipe = slapos.cookbook:mkdirectory -requests = $${directory:test-ca-dir}/requests -private = $${directory:test-ca-dir}/private -certs = $${directory:test-ca-dir}/certs -newcerts = $${directory:test-ca-dir}/newcerts -crl = $${directory:test-ca-dir}/crl +requests = $${directory:test-ca-dir}/requests/ +private = $${directory:test-ca-dir}/private/ +certs = $${directory:test-ca-dir}/certs/ +newcerts = $${directory:test-ca-dir}/newcerts/ +crl = $${directory:test-ca-dir}/crl/ [erp5-update] recipe = slapos.cookbook:erp5.update @@ -117,13 +117,13 @@ software-type = kumofs # rest of parts are candidates for some generic stuff [basedirectory] recipe = slapos.cookbook:mkdirectory -services = $${rootdirectory:etc}/run +services = $${rootdirectory:etc}/run/ [rootdirectory] recipe = slapos.cookbook:mkdirectory -etc = $${buildout:directory}/etc +etc = $${buildout:directory}/etc/ [directory] -test-ca-dir = $${rootdirectory:srv}/test-ca -test-instance-path = $${rootdirectory:srv}/test-instance -unit-test-path = $${:test-instance-path}/unit_test +test-ca-dir = $${rootdirectory:srv}/test-ca/ +test-instance-path = $${rootdirectory:srv}/test-instance/ +unit-test-path = $${:test-instance-path}/unit_test/ diff --git a/software/erp5/instance-erp5-production.cfg b/software/erp5/instance-erp5-production.cfg index 50e0c606d..5922f4460 100644 --- a/software/erp5/instance-erp5-production.cfg +++ b/software/erp5/instance-erp5-production.cfg @@ -34,7 +34,6 @@ partition-id = $${slap-connection:partition-id} name = Sphinx Search Engine software-type = sphinx sla-computer_guid = $${slap-parameter:sphinx-computer-guid} -return = url-sphinx url-sphinx-sql [request-mariadb] <=request-common @@ -66,30 +65,15 @@ sla-computer_guid = $${slap-parameter:kumofs-computer-guid} <=request-common name = TidStorage return = url-login -config = json mysql-url memcached-url cloudooo-url kumofs-url sphinx-url-sphinx sphinx-url-sphinx-sql smtp-url bt5 bt5-repository-url +config = json mysql-url memcached-url cloudooo-url kumofs-url config-json = $${slap-parameter:json} config-mysql-url = $${request-mariadb:connection-url} config-memcached-url = $${request-memcached:connection-url} config-cloudooo-url = $${request-cloudooo:connection-url} config-kumofs-url = $${request-kumofs:connection-url} -config-sphinx-url-sphinx = $${request-sphinx:connection-url-sphinx} -config-sphinx-url-sphinx-sql = $${request-sphinx:connection-url-sphinx-sql} -config-bt5 = $${slap-parameter:bt5} -config-bt5-repository-url = $${slap-parameter:bt5-repository-url} -config-smtp-url = $${slap-parameter:smtp-url} software-type = tidstorage sla-computer_guid = $${slap-parameter:tidstorage-computer-guid} -[request-varnish] -<=request-common -name = Varnish -config = tidstorage-url -config-tidstorage-url = $${request-tidstorage:connection-url-login} -config-web-checker-mail-address = $${slap-parameter:web-checker-mail-address} -config-web-checker-smtp-host = $${slap-parameter:web-checker-smtp-host} -software-type = varnish -sla-computer_guid = $${slap-parameter:varnish-computer-guid} - [slap-parameter] # Default value if no computer_guid is specified for each type sphinx-computer-guid = $${slap-connection:computer-id} @@ -98,15 +82,6 @@ cloudooo-computer-guid = $${slap-connection:computer-id} memcached-computer-guid = $${slap-connection:computer-id} kumofs-computer-guid = $${slap-connection:computer-id} tidstorage-computer-guid = $${slap-connection:computer-id} -varnish-computer-guid = $${slap-connection:computer-id} -cloudooo-json = -bt5 = erp5_full_text_myisam_catalog - erp5_configurator_standard - erp5_configurator_maxma_demo - erp5_configurator_ung - erp5_configurator_run_my_doc -bt5-repository-url = ${local-bt5-repository:list} -smtp-url = smtp://localhost:25/ # rest of parts are candidates for some generic stuff [basedirectory] diff --git a/software/erp5/instance-kumofs.cfg b/software/erp5/instance-kumofs.cfg index 4b1acb1b7..b8b49dd4a 100644 --- a/software/erp5/instance-kumofs.cfg +++ b/software/erp5/instance-kumofs.cfg @@ -42,7 +42,6 @@ kumo-server-log = $${basedirectory:log}/kumo-server.log kumo-gateway-binary = ${kumo:location}/bin/kumo-gateway kumo-manager-binary = ${kumo:location}/bin/kumo-manager kumo-server-binary = ${kumo:location}/bin/kumo-server -shell-path = ${dash:location}/bin/dash [logrotate-entry-kumofs] <= logrotate @@ -78,6 +77,7 @@ 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 kumofs-data = $${rootdirectory:srv}/kumofs @@ -95,13 +95,13 @@ dcrond-binary = ${dcron:location}/sbin/crond cron-entries = $${directory:cron-entries} crontabs = $${directory:crontabs} cronstamps = $${directory:cronstamps} -catcher = $${cron-simplelogger:wrapper} +catcher = $${cron-simplelogger:binary} binary = $${basedirectory:services}/crond [cron-simplelogger] recipe = slapos.cookbook:simplelogger -wrapper = $${rootdirectory:bin}/cron_simplelogger -log = $${basedirectory:log}/cron.log +binary = $${rootdirectory:bin}/cron_simplelogger +output = $${directory:cronoutput} [cron-entry-logrotate] <= cron diff --git a/software/erp5/instance-mariadb.cfg b/software/erp5/instance-mariadb.cfg index 04ed909b6..119f13885 100644 --- a/software/erp5/instance-mariadb.cfg +++ b/software/erp5/instance-mariadb.cfg @@ -115,13 +115,13 @@ dcrond-binary = ${dcron:location}/sbin/crond cron-entries = $${directory:cron-entries} crontabs = $${directory:crontabs} cronstamps = $${directory:cronstamps} -catcher = $${cron-simplelogger:wrapper} +catcher = $${cron-simplelogger:binary} binary = $${basedirectory:services}/crond [cron-simplelogger] recipe = slapos.cookbook:simplelogger -wrapper = $${rootdirectory:bin}/cron_simplelogger -log = $${basedirectory:log}/cron.log +binary = $${rootdirectory:bin}/cron_simplelogger +output = $${directory:cronoutput} [cron-entry-logrotate] <= cron @@ -164,6 +164,7 @@ recipe = slapos.cookbook:mkdirectory cron-entries = $${rootdirectory:etc}/cron.d crontabs = $${rootdirectory:etc}/crontabs cronstamps = $${rootdirectory:etc}/cronstamps +cronoutput = $${basedirectory:log}/cron ca-dir = $${rootdirectory:srv}/ssl mariadb-backup-full = $${basedirectory:backup}/mariadb-full mariadb-backup-incremental = $${basedirectory:backup}/mariadb-incremental diff --git a/software/erp5/instance-memcached.cfg b/software/erp5/instance-memcached.cfg index 4a90d757e..4ec3390f9 100644 --- a/software/erp5/instance-memcached.cfg +++ b/software/erp5/instance-memcached.cfg @@ -27,7 +27,6 @@ services = $${rootdirectory:etc}/run recipe = slapos.cookbook:generic.memcached wrapper_path = $${basedirectory:services}/memcached binary_path = ${memcached:location}/bin/memcached -shell-path = ${dash:location}/bin/dash ip = $${slap-network-information:local-ipv4} port = 11000 diff --git a/software/erp5/instance-varnish.cfg b/software/erp5/instance-varnish.cfg deleted file mode 100644 index d08d9de18..000000000 --- a/software/erp5/instance-varnish.cfg +++ /dev/null @@ -1,118 +0,0 @@ -[buildout] -parts = - publish-varnish-connection-information - varnish-instance - web-checker - cron - cron-entry-logrotate - cron-entry-web-checker - -eggs-directory = ${buildout:eggs-directory} -develop-eggs-directory = ${buildout:develop-eggs-directory} -offline = true - -[publish-varnish-connection-information] -recipe = slapos.cookbook:publishurl -url = http://$${varnish-instance:ip}:$${varnish-instance:server-port}/ - -[varnish-instance] -recipe = slapos.cookbook:generic.varnish - -# Network options -ip = $${slap-network-information:local-ipv4} -server-port = 6001 -manager-port = 6002 - -# Paths: Running wrappers -varnishd-wrapper = $${basedirectory:services}/varnishd -varnishlog-wrapper = $${rootdirectory:bin}/varnishlog - -# Binary information -varnishd-binary = ${varnish:location}/sbin/varnishd -varnishlog-binary = ${varnish:location}/bin/varnishlog -shell-path = ${dash:location}/bin/dash -# Configuration by VCL -vcl-file = $${rootdirectory:etc}/default.vcl -pid-file = $${basedirectory:run}/varnishd.pid -varnish-data = $${directory:varnish-data} -# this will pass at -n option -varnish-instance-name = $${directory:varnish-instance} -web-checker = ${buildout:bin-directory}/web_checker_utility - -[cron-entry-web-checker] -<= cron -recipe = slapos.cookbook:cron.d -name = web-checker -frequency = 0 0 * * * -command = $${varnish-instance:web-checker} $${web-checker:web-checker-config} - -[web-checker] -recipe = slapos.cookbook:webchecker -web-checker-config = $${rootdirectory:etc}/web_checker.cfg -web-checker-working-directory = $${directory:web-checker} -# for now frontend-url is varnish, it will replace with the real front-end one. -frontend-url = $${varnish-instance:ip}:$${varnish-instance:server-port} -wget-binary-path = ${wget:location}/bin/wget -varnishlog-binary-path = $${varnish-instance:varnishlog-wrapper} -web-checker-log = $${basedirectory:log}/web-checker.log - -[cron] -recipe = slapos.cookbook:cron -dcrond-binary = ${dcron:location}/sbin/crond -cron-entries = $${directory:cron-entries} -crontabs = $${directory:crontabs} -cronstamps = $${directory:cronstamps} -binary = $${basedirectory:services}/crond -catcher = $${cron-simplelogger:wrapper} - -[cron-simplelogger] -recipe = slapos.cookbook:simplelogger -wrapper = $${rootdirectory:bin}/cron_simplelogger -log = $${basedirectory:log}/cron.log - -[cron-entry-logrotate] -<= cron -recipe = slapos.cookbook:cron.d -name = logrotate -frequency = 0 0 * * * -command = $${logrotate:wrapper} - -[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 - -[basedirectory] -recipe = slapos.cookbook:mkdirectory -services = $${rootdirectory:etc}/run -run = $${rootdirectory:var}/run -backup = $${rootdirectory:srv}/backup -log = $${rootdirectory:var}/log -backup = $${rootdirectory:srv}/backup - -[directory] -recipe = slapos.cookbook:mkdirectory -varnish-data = $${rootdirectory:srv}/varnish -varnish-instance = $${directory:varnish-data}/instance -cron-entries = $${rootdirectory:etc}/cron.d -crontabs = $${rootdirectory:etc}/crontabs -cronstamps = $${rootdirectory:etc}/cronstamps -logrotate-backup = $${basedirectory:backup}/logrotate -logrotate-entries = $${rootdirectory:etc}/logrotate.d -web-checker = $${rootdirectory:srv}/web-checker - -[rootdirectory] -recipe = slapos.cookbook:mkdirectory -etc = $${buildout:directory}/etc -var = $${buildout:directory}/var -srv = $${buildout:directory}/srv -bin = $${buildout:directory}/bin - diff --git a/software/erp5/instance-zope.cfg b/software/erp5/instance-zope.cfg index 9474818db..9a71a931d 100644 --- a/software/erp5/instance-zope.cfg +++ b/software/erp5/instance-zope.cfg @@ -18,8 +18,8 @@ develop-eggs-directory = ${buildout:develop-eggs-directory} offline = true [slap-parameter] -# By default, if no white list is specified, backend allows access to everyone -access-control-string = all +# By default backend disallows the access +access-control-string = none [publish-apache-zope-backend-connection-string] recipe = slapos.cookbook:publish @@ -38,11 +38,9 @@ configuration-file = $${directory:apache-conf}/apache.conf access-control-string = $${slap-parameter:access-control-string} pid-file = $${basedirectory:run}/apache.pid lock-file = $${basedirectory:run}/apache.lock -ssl-session-cache = $${basedirectory:log}/apache-ssl-session-cache error-log = $${basedirectory:log}/apache-error.log access-log = $${basedirectory:log}/apache-access.log apache-binary = ${apache:location}/bin/httpd -scheme = https [ca-apache-zope-backend] <= certificate-authority @@ -134,13 +132,13 @@ dcrond-binary = ${dcron:location}/sbin/crond cron-entries = $${directory:cron-entries} crontabs = $${directory:crontabs} cronstamps = $${directory:cronstamps} -catcher = $${cron-simplelogger:wrapper} +catcher = $${cron-simplelogger:binary} binary = $${basedirectory:services}/crond [cron-simplelogger] recipe = slapos.cookbook:simplelogger -wrapper = $${rootdirectory:bin}/cron_simplelogger -log = $${basedirectory:log}/cron.log +binary = $${rootdirectory:bin}/cron_simplelogger +output = $${directory:cronoutput} [cron-entry-logrotate] <= cron @@ -228,11 +226,11 @@ ca-crl = $${erp5-cadirectory:crl} [erp5-cadirectory] recipe = slapos.cookbook:mkdirectory -requests = $${directory:erp5-ca-dir}/requests -private = $${directory:erp5-ca-dir}/private -certs = $${directory:erp5-ca-dir}/certs -newcerts = $${directory:erp5-ca-dir}/newcerts -crl = $${directory:erp5-ca-dir}/crl +requests = $${directory:erp5-ca-dir}/requests/ +private = $${directory:erp5-ca-dir}/private/ +certs = $${directory:erp5-ca-dir}/certs/ +newcerts = $${directory:erp5-ca-dir}/newcerts/ +crl = $${directory:erp5-ca-dir}/crl/ [directory] recipe = slapos.cookbook:mkdirectory @@ -250,10 +248,11 @@ instance-constraint = $${:instance}/Constraint instance-import = $${:instance}/import instance-lib = $${:instance}/lib instance-tests = $${:instance}/tests -erp5-ca-dir = $${rootdirectory:srv}/erp5-ca +erp5-ca-dir = $${rootdirectory:srv}/erp5-ca/ 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 diff --git a/software/erp5/instance.cfg b/software/erp5/instance.cfg index 82d61d9e3..8abb090d5 100644 --- a/software/erp5/instance.cfg +++ b/software/erp5/instance.cfg @@ -33,7 +33,6 @@ zope = ${template-zope:output} mariadb = ${template-mariadb:output} sphinx = ${template-sphinx:output} tidstorage = $${dynamic-template-tidstorage:output} -varnish = ${template-varnish:output} [slap-connection] # part to migrate to new - separated words diff --git a/software/erp5/snippet-backend.cfg b/software/erp5/snippet-backend.cfg index 6effa6b4f..b18a7f208 100644 --- a/software/erp5/snippet-backend.cfg +++ b/software/erp5/snippet-backend.cfg @@ -1,40 +1,18 @@ -[apache-public-%(backend_name)s] -recipe = slapos.cookbook:apache.zope.backend -backend = http://$${haproxy-%(backend_name)s:ip}:$${haproxy-%(backend_name)s:port}/ -ip = $${slap-network-information:global-ipv6} -port = %(apache_public_port)s -scheme = http -wrapper = $${basedirectory:services}/apache-public-%(backend_name)s -configuration-file = $${directory:apache-conf}/apache-public-%(backend_name)s.conf -access-control-string = %(access_control_string)s -pid-file = $${basedirectory:run}/apache-public-%(backend_name)s.pid -lock-file = $${basedirectory:run}/apache-public-%(backend_name)s.lock -error-log = $${basedirectory:log}/apache-public-%(backend_name)s-error.log -access-log = $${basedirectory:log}/apache-public-%(backend_name)s-access.log -apache-binary = ${apache:location}/bin/httpd - [apache-%(backend_name)s] recipe = slapos.cookbook:apache.zope.backend -backend = http://$${haproxy-%(backend_name)s:ip}:$${haproxy-%(backend_name)s:port} +backend = http://$${haproxy-%(backend_name)s:ip}:$${haproxy-%(backend_name)s:port}/ ip = $${slap-network-information:global-ipv6} port = %(apache_port)s wrapper = $${rootdirectory:bin}/apache-%(backend_name)s -scheme = https key-file = $${directory:apache-conf}/apache-%(backend_name)s.key cert-file = $${directory:apache-conf}/apache-%(backend_name)s.crt configuration-file = $${directory:apache-conf}/apache-%(backend_name)s.conf access-control-string = %(access_control_string)s pid-file = $${basedirectory:run}/apache-%(backend_name)s.pid lock-file = $${basedirectory:run}/apache-%(backend_name)s.lock -ssl-session-cache = $${basedirectory:log}/apache-ssl-session-cache error-log = $${basedirectory:log}/apache-%(backend_name)s-error.log access-log = $${basedirectory:log}/apache-%(backend_name)s-access.log apache-binary = ${apache:location}/bin/httpd -ssl-authentication = %(ssl_authentication)s -backend-path = %(backend_path)s -# Note: Without erp5-certificate-authority main certificate have to be hardcoded -ssl-authentication-certificate = $${erp5-certificate-authority:ca-dir}/cacert.pem -ssl-authentication-crl = $${erp5-certificate-authority:ca-crl} [ca-apache-%(backend_name)s] <= certificate-authority @@ -44,13 +22,6 @@ cert-file = $${apache-%(backend_name)s:cert-file} executable = $${apache-%(backend_name)s:wrapper} wrapper = $${basedirectory:services}/apache-%(backend_name)s -[logrotate-entry-apache-public-%(backend_name)s] -<= logrotate -recipe = slapos.cookbook:logrotate.d -name = apache-public-%(backend_name)s -log = $${apache-public-%(backend_name)s:error-log} $${apache-public-%(backend_name)s:access-log} -post = ${buildout:bin-directory}/killpidfromfile $${apache-public-%(backend_name)s:pid-file} SIGUSR1 - [logrotate-entry-apache-%(backend_name)s] <= logrotate recipe = slapos.cookbook:logrotate.d diff --git a/software/erp5/snippet-master.cfg b/software/erp5/snippet-master.cfg index e0d52fe50..8c44deb8e 100644 --- a/software/erp5/snippet-master.cfg +++ b/software/erp5/snippet-master.cfg @@ -1,3 +1,15 @@ +############################# +# +# 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 @@ -9,8 +21,7 @@ parts = cron-entry-tidstorage-backup logrotate-entry-tidstorage binary-link - erp5-promise - erp5-bootstrap + erp5-update %(part_list)s eggs-directory = ${buildout:eggs-directory} @@ -48,19 +59,28 @@ 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:wrapper} +catcher = $${cron-simplelogger:binary} binary = $${basedirectory:services}/crond [cron-simplelogger] recipe = slapos.cookbook:simplelogger -wrapper = $${rootdirectory:bin}/cron_simplelogger -log = $${basedirectory:log}/cron.log +binary = $${rootdirectory:bin}/cron_simplelogger +output = $${directory:cronoutput} [cron-entry-logrotate] <= cron @@ -69,6 +89,8 @@ name = logrotate frequency = 0 0 * * * command = $${logrotate:wrapper} +# rest of parts are candidates for some generic stuff + [logrotate] recipe = slapos.cookbook:logrotate # Binaries @@ -97,19 +119,14 @@ ca-private = $${erp5-cadirectory:private} ca-certs = $${erp5-cadirectory:certs} ca-newcerts = $${erp5-cadirectory:newcerts} ca-crl = $${erp5-cadirectory:crl} -country-code = %(erp5_ca_country_code)s -email = %(erp5_ca_email)s -state = %(erp5_ca_state)s -city = %(erp5_ca_city)s -company = %(erp5_ca_company)s [erp5-cadirectory] recipe = slapos.cookbook:mkdirectory -requests = $${directory:erp5-ca-dir}/requests -private = $${directory:erp5-ca-dir}/private -certs = $${directory:erp5-ca-dir}/certs -newcerts = $${directory:erp5-ca-dir}/newcerts -crl = $${directory:erp5-ca-dir}/crl +requests = $${directory:erp5-ca-dir}/requests/ +private = $${directory:erp5-ca-dir}/private/ +certs = $${directory:erp5-ca-dir}/certs/ +newcerts = $${directory:erp5-ca-dir}/newcerts/ +crl = $${directory:erp5-ca-dir}/crl/ [certificate-authority] recipe = slapos.cookbook:certificate_authority @@ -124,33 +141,33 @@ 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 +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 +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 +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 +tidstorage = $${rootdirectory:srv}/tidstorage/ +zodb = $${rootdirectory:srv}/zodb/ zodb-backup = $${basedirectory:backup}/zodb -instance = $${rootdirectory:srv}/erp5shared +instance = $${rootdirectory:srv}/erp5shared/ instance-etc = $${:instance}/etc apache-conf = $${rootdirectory:etc}/apache instance-etc-package-include = $${:instance}/etc/package-include @@ -163,13 +180,14 @@ instance-constraint = $${:instance}/Constraint instance-import = $${:instance}/import instance-lib = $${:instance}/lib instance-tests = $${:instance}/tests -erp5-ca-dir = $${rootdirectory:srv}/erp5-ssl -ca-dir = $${rootdirectory:srv}/ssl -cron-entries = $${rootdirectory:etc}/cron.d -crontabs = $${rootdirectory:etc}/crontabs -cronstamps = $${rootdirectory:etc}/cronstamps -logrotate-backup = $${basedirectory:backup}/logrotate -logrotate-entries = $${rootdirectory:etc}/logrotate.d +erp5-ca-dir = $${rootdirectory:srv}/erp5-ssl/ +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 @@ -196,19 +214,22 @@ link-binary = ${poppler:location}/bin/pdftotext ${poppler:location}/bin/pdftohtml -[erp5-bootstrap] -recipe = slapos.cookbook:erp5.bootstrap -runner-path = $${basedirectory:services}/erp5-bootstrap -mysql-url = %(mysql-url)s -zope-url = http://$${%(zope_section)s:user}:$${%(zope_section)s:password}@$${%(zope_section)s:ip}:$${%(zope_section)s:port}/%(site_id)s +[erp5-update] +recipe = slapos.cookbook:erp5.update -[erp5-promise] -recipe = slapos.cookbook:erp5.promise -promise-path = $${rootdirectory:etc}/erp5promise.cfg +# Configuration +url = http://$${%(zope_section)s:user}:$${%(zope_section)s:password}@$${%(zope_section)s:ip}:$${%(zope_section)s:port}/ +mysql-url = %(mysql-url)s kumofs-url = %(kumofs-url)s memcached-url = %(memcached-url)s cloudooo-url = %(cloudooo-url)s -smtp-url = $${slap-parameter:smtp-url} -bt5 = $${slap-parameter:bt5} -bt5-repository-url = $${slap-parameter:bt5-repository-url} +site-id = %(site_id)s +openssl-binary = ${openssl:location}/bin/openssl +cadir-path = $${erp5-certificate-authority:ca-dir} + +# Paths +update-wrapper = $${basedirectory:services}/erp5-update +# Defaults +configurator-bt5-list = erp5_full_text_myisam_catalog erp5_configurator_standard erp5_configurator_maxma_demo erp5_configurator_ung erp5_configurator_ung erp5_configurator_run_my_doc +bt5-repository-list = $${%(zope_section)s:bt5-repository-list} diff --git a/software/erp5/snippet-zope.cfg b/software/erp5/snippet-zope.cfg index b65c773ae..a4a9c581c 100644 --- a/software/erp5/snippet-zope.cfg +++ b/software/erp5/snippet-zope.cfg @@ -17,8 +17,6 @@ zeo-connection-string = %(zeo_connection_string)s timeserver = %(zope_timeserver)s -tidstorage-ip = $${tidstorage:ip} -tidstorage-port = $${tidstorage:port} # long request longrequest-logger-file = %(longrequest_logger_file)s @@ -46,9 +44,6 @@ runzope-binary = ${buildout:bin-directory}/runzope # BT5 Configuration bt5-repository-list = -promise-path = $${erp5-promise:promise-path} -site-id = %(site_id)s - [logrotate-entry-%(zope_id)s] <= logrotate recipe = slapos.cookbook:logrotate.d diff --git a/software/erp5/software.cfg b/software/erp5/software.cfg index 9c75576e6..9e1f72f9e 100644 --- a/software/erp5/software.cfg +++ b/software/erp5/software.cfg @@ -28,7 +28,7 @@ recipe = plone.recipe.command stop-on-error = true location = ${buildout:parts-directory}/${:_buildout_section_name_} command = ${git:location}/bin/git clone --branch erp5 --quiet http://git.erp5.org/repos/slapos.git ${:location} -update-command = cd ${:location} && GIT_COMMITTER_EMAIL=nobody@example.com GIT_AUTHOR_NAME=Nobody GIT_AUTHOR_EMAIL=nobody@example.com ${git:location}/bin/git pull --quiet +update-command = cd ${:location} && ${git:location}/bin/git pull --quiet [check-recipe] recipe = plone.recipe.command @@ -41,12 +41,11 @@ recipe = zc.recipe.egg eggs = slapos.cookbook scripts = python = python2.6 -ugly-depend-on = ${slapos.cookbook-repository:command} ${slapos.cookbook-repository:update-command} [template-mariadb] recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance-mariadb.cfg -md5sum = 6580f1d431f65281c7aa1358a51cc292 +md5sum = 3225a2ba7337505bdeb95867f5028891 output = ${buildout:directory}/template-mariadb.cfg mode = 0644 @@ -60,14 +59,14 @@ mode = 0644 [template-zope] recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance-zope.cfg -md5sum = d3d221255f93a9ced82dcca9ca57f84e +md5sum = 769a7ba8e8c5865637e374376be8cbcd output = ${buildout:directory}/template-zope.cfg mode = 0644 [template-cloudooo] recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance-cloudooo.cfg -md5sum = e7698a0537785339e249bdc57f369e93 +md5sum = 8ea2839e951f26af2bc74b9a8c0fa5c2 output = ${buildout:directory}/template-cloudooo.cfg mode = 0644 @@ -81,35 +80,35 @@ mode = 0644 [template-kumofs] recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance-kumofs.cfg -md5sum = 9746823ccbbedf42b3e759c3e7150252 +md5sum = c12d8dc1925d16a75247971086734aa8 output = ${buildout:directory}/template-kumofs.cfg mode = 0644 [template] recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance.cfg -md5sum = f3443d071d8d7330b3453583e096fef0 +md5sum = 961d404f5726fce7c4d8b34d7e120077 output = ${buildout:directory}/template.cfg mode = 0644 [template-memcached] recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance-memcached.cfg -md5sum = 7ed1d93dafa76adc025acb2f0e08c05f +md5sum = 9a1462f3e34b99f384ae47b48a3a733c output = ${buildout:directory}/template-memcached.cfg mode = 0644 [template-erp5-development] recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance-erp5-development.cfg -md5sum = 4bc5a2ec8c04b206dab8b98258a69efd +md5sum = 9af9db6f1220ffe42e030c81f9072669 output = ${buildout:directory}/template-erp5-development.cfg mode = 0644 [template-erp5-production] recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance-erp5-production.cfg -md5sum = 54ad3c5e92af02d0db98d1085adf986d +md5sum = 32f6537110bbc29e7cc5613695863096 output = ${buildout:directory}/template-erp5-production.cfg mode = 0644 @@ -123,31 +122,24 @@ mode = 0644 [template-snippet-master] recipe = slapos.recipe.template url = ${:_profile_base_location_}/snippet-master.cfg -md5sum = 14ffe48453a74190bdd289169220739f +md5sum = c9bea484c2827954b9f9f728ce0342fb output = ${buildout:directory}/template-snippet-master.cfg mode = 0644 [template-snippet-zope] recipe = slapos.recipe.template url = ${:_profile_base_location_}/snippet-zope.cfg -md5sum = bcc68c31a16b35bee7111f9c6e02b781 +md5sum = 99fcce6aa6120787870522898650800d output = ${buildout:directory}/template-snippet-zope.cfg mode = 0644 [template-snippet-backend] recipe = slapos.recipe.template url = ${:_profile_base_location_}/snippet-backend.cfg -md5sum = 3a1b359b57bf21a226bb96c0c18f1924 +md5sum = e2b26547ba1435ec1b8e8cd1de89e2c6 output = ${buildout:directory}/template-snippet-backend.cfg mode = 0644 -[template-varnish] -recipe = slapos.recipe.template -url = ${:_profile_base_location_}/instance-varnish.cfg -md5sum = 70fb0ccadf0d6723ddb0fe55a1549ca5 -output = ${buildout:directory}/template-varnish.cfg -mode = 0644 - [validator] # Default json schema for instance parameters. recipe = slapos.recipe.template @@ -161,9 +153,6 @@ mode = 0644 # Romain Courteaud # Sebastien Robin # Kazuhiko Shiozaki -# Cedric de Saint Martin -# Yingjie Xu -# Gabriel Monnerat signature-certificate-list = -----BEGIN CERTIFICATE----- MIIB4DCCAUkCADANBgkqhkiG9w0BAQsFADA5MQswCQYDVQQGEwJGUjEZMBcGA1UE @@ -204,42 +193,3 @@ signature-certificate-list = KrDm39slYD/1KoE5kB4l/p6KVOdeJ4I6xcgu9rnkqqHzDwI4v7e8/D3WZbpiFUsY vaZhjNYKWQf79l6zXfOvphzJ -----END CERTIFICATE----- - -----BEGIN CERTIFICATE----- - MIIB9jCCAV+gAwIBAgIJAO4V/jiMoICoMA0GCSqGSIb3DQEBBQUAMBMxETAPBgNV - BAMMCENPTVAtMjMyMCAXDTEyMDIxNjExMTAyM1oYDzIxMTIwMTIzMTExMDIzWjAT - MREwDwYDVQQDDAhDT01QLTIzMjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA - wi/3Z8W9pUiegUXIk/AiFDQ0UJ4JFAwjqr+HSRUirlUsHHT+8DzH/hfcTDX1I5BB - D1ADk+ydXjMm3OZrQcXjn29OUfM5C+g+oqeMnYQImN0DDQIOcUyr7AJc4xhvuXQ1 - P2pJ5NOd3tbd0kexETa1LVhR6EgBC25LyRBRae76qosCAwEAAaNQME4wHQYDVR0O - BBYEFMDmW9aFy1sKTfCpcRkYnP6zUd1cMB8GA1UdIwQYMBaAFMDmW9aFy1sKTfCp - cRkYnP6zUd1cMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAskbFizHr - b6d3iIyN+wffxz/V9epbKIZVEGJd/6LrTdLiUfJPec7FaxVCWNyKBlCpINBM7cEV - Gn9t8mdVQflNqOlAMkOlUv1ZugCt9rXYQOV7rrEYJBWirn43BOMn9Flp2nibblby - If1a2ZoqHRxoNo2yTmm7TSYRORWVS+vvfjY= - -----END CERTIFICATE----- - -----BEGIN CERTIFICATE----- - MIIB9jCCAV+gAwIBAgIJAIlBksrZVkK8MA0GCSqGSIb3DQEBBQUAMBMxETAPBgNV - BAMMCENPTVAtMzU3MCAXDTEyMDEyNjEwNTUyOFoYDzIxMTIwMTAyMTA1NTI4WjAT - MREwDwYDVQQDDAhDT01QLTM1NzCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA - ts+iGUwi44vtIfwXR8DCnLtHV4ydl0YTK2joJflj0/Ws7mz5BYkxIU4fea/6+VF3 - i11nwBgYgxQyjNztgc9u9O71k1W5tU95yO7U7bFdYd5uxYA9/22fjObaTQoC4Nc9 - mTu6r/VHyJ1yRsunBZXvnk/XaKp7gGE9vNEyJvPn2bkCAwEAAaNQME4wHQYDVR0O - BBYEFKuGIYu8+6aEkTVg62BRYaD11PILMB8GA1UdIwQYMBaAFKuGIYu8+6aEkTVg - 62BRYaD11PILMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAMoTRpBxK - YLEZJbofF7gSrRIcrlUJYXfTfw1QUBOKkGFFDsiJpEg4y5pUk1s5Jq9K3SDzNq/W - it1oYjOhuGg3al8OOeKFrU6nvNTF1BAvJCl0tr3POai5yXyN5jlK/zPfypmQYxE+ - TaqQSGBJPVXYt6lrq/PRD9ciZgKLOwEqK8w= - -----END CERTIFICATE----- - -----BEGIN CERTIFICATE----- - MIIB9jCCAV+gAwIBAgIJAPHoWu90gbsgMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNV - BAMMCXZpZmlibm9kZTAeFw0xMjAzMTkyMzIwNTVaFw0xMzAzMTkyMzIwNTVaMBQx - EjAQBgNVBAMMCXZpZmlibm9kZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA - ozBijpO8PS5RTeKTzA90vi9ezvv4vVjNaguqT4UwP9+O1+i6yq1Y2W5zZxw/Klbn - oudyNzie3/wqs9VfPmcyU9ajFzBv/Tobm3obmOqBN0GSYs5fyGw+O9G3//6ZEhf0 - NinwdKmrRX+d0P5bHewadZWIvlmOupcnVJmkks852BECAwEAAaNQME4wHQYDVR0O - BBYEFF9EtgfZZs8L2ZxBJxSiY6eTsTEwMB8GA1UdIwQYMBaAFF9EtgfZZs8L2ZxB - JxSiY6eTsTEwMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAc43YTfc6 - baSemaMAc/jz8LNLhRE5dLfLOcRSoHda8y0lOrfe4lHT6yP5l8uyWAzLW+g6s3DA - Yme/bhX0g51BmI6gjKJo5DoPtiXk/Y9lxwD3p7PWi+RhN+AZQ5rpo8UfwnnN059n - yDuimQfvJjBFMVrdn9iP6SfMjxKaGk6gVmI= - -----END CERTIFICATE----- diff --git a/software/erp5testnode/software.cfg b/software/erp5testnode/software.cfg index b2451292a..2492dbef6 100644 --- a/software/erp5testnode/software.cfg +++ b/software/erp5testnode/software.cfg @@ -36,6 +36,11 @@ parts = zip git +# Separate from site eggs +allowed-eggs-from-site-packages = +include-site-packages = false +exec-sitecustomize = false + # Use only quite well working sites. allow-hosts = *.nexedi.org @@ -154,7 +159,7 @@ zc.buildout = 1.6.0-dev-SlapOS-003 Jinja2 = 2.6 Werkzeug = 0.8.2 -erp5.util = 0.4.1 +erp5.util = 0.3 hexagonit.recipe.cmmi = 1.5.0 lxml = 2.3.2 meld3 = 0.6.7 diff --git a/software/vifib/software.cfg b/software/vifib/software.cfg index 48dd29ac0..a4c0e306d 100644 --- a/software/vifib/software.cfg +++ b/software/vifib/software.cfg @@ -31,12 +31,8 @@ configurator_bt5_list = erp5_core_proxy_field_legacy erp5_full_text_myisam_catal [erp5_repository_list] repository_id_list += vifib/master -[erp5] -branch = interaction-drop - [vifib] <= erp5 -branch = master repository = http://git.erp5.org/repos/slapos.core.git revision = diff --git a/stack/cloudooo.cfg b/stack/cloudooo.cfg index 00456586c..551890393 100644 --- a/stack/cloudooo.cfg +++ b/stack/cloudooo.cfg @@ -9,8 +9,7 @@ find-links = http://www.nexedi.org/static/packages/source/slapos.buildout/ http://www.nexedi.org/static/packages/source/ extends = - ../component/libreoffice-bin/buildout.cfg - ../component/libpng/buildout.cfg + ../component/openoffice-bin/buildout.cfg ../component/lxml-python/buildout.cfg ../component/python-2.6/buildout.cfg ../component/python-2.7/buildout.cfg @@ -26,21 +25,20 @@ extends = versions = versions parts = - libreoffice-bin + openoffice-bin # basic Xorg libXdmcp libXext libXau + libXinerama libSM - libXrender # fonts liberation-fonts ipaex-fonts # Dependencies - libpng12 imagemagick file xpdf diff --git a/stack/erp5.cfg b/stack/erp5.cfg index 29e1fbbb7..93a48f1b2 100644 --- a/stack/erp5.cfg +++ b/stack/erp5.cfg @@ -32,7 +32,7 @@ allow-hosts = extends = # Exact version of Zope - http://svn.zope.org/repos/main/Zope/tags/2.12.22/versions.cfg + http://svn.zope.org/repos/main/Zope/tags/2.12.21/versions.cfg ../component/logrotate/buildout.cfg ../component/dcron/buildout.cfg ../component/file/buildout.cfg @@ -46,7 +46,6 @@ extends = ../component/hookbox/buildout.cfg ../component/imagemagick/buildout.cfg ../component/kumo/buildout.cfg - ../component/libpng/buildout.cfg ../component/libreoffice-bin/buildout.cfg ../component/lxml-python/buildout.cfg ../component/percona-toolkit/buildout.cfg @@ -74,16 +73,12 @@ extends = ../component/sed/buildout.cfg ../component/coreutils/buildout.cfg ../component/grep/buildout.cfg - ../component/dash/buildout.cfg - ../component/wget/buildout.cfg - ../component/aspell/buildout.cfg versions = versions parts = itools-build rdiff-backup - aspell apache apache-antiloris file @@ -94,7 +89,6 @@ parts = stunnel w3m poppler - libpng12 libpng ghostscript mariadb @@ -114,8 +108,6 @@ parts = zabbix-agent pdftk dcron - dash - wget # Buildoutish eggs @@ -126,8 +118,8 @@ parts = libXdmcp libXext libXau + libXinerama libSM - libXrender # fonts liberation-fonts @@ -235,8 +227,8 @@ stop-on-error = true repository = http://git.erp5.org/repos/erp5.git branch = master revision = -command = ${git:location}/bin/git clone --quiet --branch ${:branch} ${:repository} ${:location} && if [ -n "${:revision}" ]; then cd ${:location} && ${git:location}/bin/git reset --quiet --hard ${:revision} ; fi -update-command = cd ${:location} && GIT_COMMITTER_EMAIL=nobody@example.com GIT_AUTHOR_NAME=Nobody GIT_AUTHOR_EMAIL=nobody@example.com ${git:location}/bin/git pull && if [ -n "${:revision}" ]; then echo "Resetting." ; cd ${:location} && ${git:location}/bin/git reset --hard ${:revision} ; fi +command = ${git:location}/bin/git clone --quiet -b ${:branch} ${:repository} ${:location} && if [ -n "${:revision}" ]; then cd ${:location} && ${git:location}/bin/git reset --quiet --hard ${:revision} ; fi +update-command = cd ${:location} && ${git:location}/bin/git pull --quiet && if [ -n "${:revision}" ]; then cd ${:location} && ${git:location}/bin/git reset --quiet --hard ${:revision} ; fi [products] # XXX: ERP5 related products are not defined as python distributions, so it is @@ -277,15 +269,11 @@ initialization = [bt5_path, os.path.join(bt5_path, '*')] for bt5_path in (os.path.join(parts_directory, x, 'bt5') for x in repository_id_list)), [])) - sys.path[:0] = sum(( - glob.glob(os.path.join(parts_directory, x, 'tests')) - for x in repository_id_list), []) + sys.path[:0] = [os.path.join(parts_directory, x, 'tests') + for x in repository_id_list] sys.path[:0] = sum(( glob.glob(os.path.join(parts_directory, x, 'product', '*', 'tests')) for x in repository_id_list), []) - sys.path[:0] = sum(( - glob.glob(os.path.join(x, '*', 'tests')) - for x in reversed('''${products:list}'''.split())), []) [test_suite_runner] # XXX: Workaround for fact ERP5Type is not an distribution and does not @@ -343,7 +331,6 @@ eggs = feedparser argparse validictory - erp5.util # Zope 2.12 with patched acquisition ZODB3 @@ -370,6 +357,7 @@ eggs = Products.MimetypesRegistry Products.ExternalEditor Products.TIDStorage + Products.Zelenium # Currently forked in our repository # Products.PortalTransforms @@ -386,7 +374,6 @@ scripts = runzeo tidstoraged tidstorage_repozo - web_checker_utility = erp5.util.webchecker:web_checker_utility extra-paths = ${itools:location}/lib @@ -432,7 +419,7 @@ scripts = [versions] # Use SlapOS patched zc.buildout -zc.buildout = 1.6.0-dev-SlapOS-004 +zc.buildout = 1.6.0-dev-SlapOS-003 # pin Acquisition and Products.DCWorkflow to Nexedi flavour of eggs Acquisition = 2.13.7nxd001 @@ -456,10 +443,3 @@ setuptools = # official pysvn egg does not supports --include-dirs and # --library-dirs, so we use our modified version pysvn = 1.7.4nxd006 - -# CMF 2.3 requries Zope 2.13. -Products.CMFCalendar = 2.2.2 -Products.CMFCore = 2.2.5 -Products.CMFDefault = 2.2.2 -Products.CMFTopic = 2.2.1 -Products.CMFUid = 2.2.1 diff --git a/stack/tomcat.cfg b/stack/tomcat.cfg index cd3752066..ee714f3a3 100644 --- a/stack/tomcat.cfg +++ b/stack/tomcat.cfg @@ -4,7 +4,6 @@ extends = ../component/java/buildout.cfg ../component/mysql-5.1/buildout.cfg ../component/python-2.7/buildout.cfg - ../component/tomcat/buildout.cfg ../stack/shacache-client.cfg find-links += @@ -43,6 +42,12 @@ recipe = hexagonit.recipe.download url = http://download.softagency.net/mysql/Downloads/Connector-J/mysql-connector-java-5.1.17.zip md5sum = 22e1aff6104bb9006f8744a02bf73124 +[tomcat] +recipe = hexagonit.recipe.download +strip-top-level-dir = true +url = http://apache.multidist.com/tomcat/tomcat-6/v6.0.32/bin/apache-tomcat-6.0.32.zip +md5sum = 082a0707985b6c029920d4d6d5ec11cd + [eggs] recipe = zc.recipe.egg python = python2.7 -- 2.30.9