Commit 876d11ef authored by Rafael Monnerat's avatar Rafael Monnerat

Update Release Candidate

parents 77bcd91a 82c5eb22
......@@ -11,7 +11,6 @@ configure-options =
--disable-static
--disable-aload
--disable-mixer
--disable-pcm
--disable-rawmidi
--disable-hwdep
--disable-seq
......
......@@ -16,8 +16,8 @@ parts =
[git]
recipe = slapos.recipe.cmmi
url = https://www.kernel.org/pub/software/scm/git/git-2.7.0.tar.xz
md5sum = 0214e04f7041f835c5c38f2b78eccced
url = https://www.kernel.org/pub/software/scm/git/git-2.7.2.tar.xz
md5sum = b14189d9d9ea32274e51c7a4240ffc15
configure-options =
--with-curl=${curl:location}
--with-openssl=${openssl:location}
......
......@@ -13,8 +13,8 @@ extends =
[groonga]
recipe = slapos.recipe.cmmi
url = http://packages.groonga.org/source/groonga/groonga-5.1.2.tar.gz
md5sum = 04066b547f1f4dd869eb35ac52a2e88b
url = http://packages.groonga.org/source/groonga/groonga-6.0.0.tar.gz
md5sum = cf230a41c73574db321eaf831fae3566
# temporary patch to respect more tokens in natural language mode.
patches =
${:_profile_base_location_}/groonga.patch#9ed02fbe8400402d3eab47eee149978b
......
......@@ -4,7 +4,7 @@ extends =
../rpy2/buildout.cfg
../pulp/buildout.cfg
../git/buildout.cfg
../mysql-python/buildout.cfg
../python-mysqlclient/buildout.cfg
parts =
manpy
......@@ -32,7 +32,7 @@ eggs = dream
environment = manpy-env
setup-eggs =
${scipy:egg}
${mysql-python:egg}
${python-mysqlclient:egg}
initialization =
${pulp:initialization}
${rpy2:initialization}
......@@ -21,9 +21,9 @@ parts =
[mariadb]
recipe = slapos.recipe.cmmi
version = 10.1.11
version = 10.1.12
url = https://downloads.mariadb.org/f/mariadb-${:version}/source/mariadb-${:version}.tar.gz/from/http:/ftp.osuosl.org/pub/mariadb
md5sum = c199608ae4282f16007dc8c270ff2439
md5sum = a2c0809f27ec112139c2c50f03569b2b
location = ${buildout:parts-directory}/${:_buildout_section_name_}
patch-options = -p0
patches =
......@@ -68,8 +68,8 @@ post-install =
# mroonga - a storage engine for MySQL. It provides fast fulltext search feature to all MySQL users.
# http://mroonga.github.com/
recipe = slapos.recipe.cmmi
url = http://packages.groonga.org/source/mroonga/mroonga-5.12.tar.gz
md5sum = b42816754058114de708e1da028399bd
url = http://packages.groonga.org/source/mroonga/mroonga-6.00.tar.gz
md5sum = f2ee5867cb820c88fa5d9eada3dbabc6
pre-configure =
mkdir fake_mariadb_source &&
ln -s ${mariadb:location}/include/mysql/private fake_mariadb_source/sql
......@@ -80,7 +80,7 @@ configure-options =
--disable-document
patch-options = -p1
patches =
${:_profile_base_location_}/mroonga_boolean.patch#36645770ae612515b74b90884ecc59fc
${:_profile_base_location_}/mroonga_boolean.patch#29f85fc98e85d39b31e53b1e1683d288
environment =
PATH=${groonga:location}/bin:${pkgconfig:location}/bin:%(PATH)s
CPPFLAGS=-I${groonga:location}/include/groonga -I${pcre:location}/include
......
diff --git a/ha_mroonga.cpp b/ha_mroonga.cpp
index dd9967d..c105a62 100644
index 06691fb..b59e685 100644
--- a/ha_mroonga.cpp
+++ b/ha_mroonga.cpp
@@ -7678,7 +7678,7 @@ grn_rc ha_mroonga::generic_ft_init_ext_prepare_expression_in_boolean_mode(
@@ -8283,7 +8283,7 @@ grn_rc ha_mroonga::generic_ft_init_ext_prepare_expression_in_boolean_mode(
const char *keyword, *keyword_original;
uint keyword_length, keyword_length_original;
const char *keyword = NULL;
uint keyword_length = 0;
- grn_operator default_operator = GRN_OP_OR;
+ grn_operator default_operator = GRN_OP_ADJUST;
grn_bool weight_specified = false;
keyword = keyword_original = key->ptr();
keyword_length = keyword_length_original = key->length();
grn_expr_flags expression_flags = 0;
generic_ft_init_ext_parse_pragma(info,
key,
......@@ -11,15 +11,15 @@ parts = nginx-output
[nginx-common]
recipe = slapos.recipe.cmmi
url = http://nginx.org/download/nginx-1.9.4.tar.gz
md5sum = 27322fbb4b265c0e0cc548f5e6b7f201
url = http://nginx.org/download/nginx-1.9.12.tar.gz
md5sum = 0afe4a7e589a0de43b7b54aa055a4351
[nginx]
<= nginx-common
configure-options=
--with-ipv6
--with-http_ssl_module
--with-http_spdy_module
--with-http_v2_module
--with-http_gzip_static_module
--with-mail
--with-mail_ssl_module
......@@ -38,7 +38,7 @@ mode = 0644
configure-options =
--with-ipv6
--with-http_ssl_module
--with-http_spdy_module
--with-http_v2_module
--with-http_gzip_static_module
--with-mail
--with-mail_ssl_module
......
......@@ -23,7 +23,7 @@ build-ext-options =
# First try with auto-detected target and if it fails try TARGET=GENERIC.
configure-command =
make ${:build-common-options} ${:build-ext-options} || make ${:build-common-options} TARGET=GENERIC
make ${:build-common-options} ${:build-ext-options} || (make -j1 clean && make ${:build-common-options} TARGET=GENERIC)
make-options =
dummy
make-targets =
......
......@@ -16,8 +16,8 @@ parts =
[openssl]
recipe = slapos.recipe.cmmi
url = https://www.openssl.org/source/openssl-1.0.2f.tar.gz
md5sum = b3bf73f507172be9292ea2a8c28b659d
url = https://www.openssl.org/source/openssl-1.0.2g.tar.gz
md5sum = f3c710c045cdee5fd114feb69feba7aa
location = ${buildout:parts-directory}/${:_buildout_section_name_}
# 'prefix' option to override --openssldir/--prefix (which is useful
# when combined with INSTALL_PREFIX). Used by slapos.package.git/obs
......
[buildout]
extends =
../mariadb/buildout.cfg
../openssl/buildout.cfg
../zlib/buildout.cfg
parts =
python-mysqlclient
[python-mysqlclient-env]
PATH =${mariadb:location}/bin:%(PATH)s
[python-mysqlclient]
recipe = zc.recipe.egg:custom
egg = mysqlclient
environment = python-mysqlclient-env
library-dirs =
${zlib:location}/lib/
${openssl:location}/lib/
rpath =
${mariadb:location}/lib/
${zlib:location}/lib/
${openssl:location}/lib/
......@@ -10,8 +10,8 @@ extends = ../tcl/buildout.cfg
[redis28]
recipe = slapos.recipe.cmmi
url = http://download.redis.io/releases/redis-2.8.23.tar.gz
md5sum = ac7f43f845d0eedb8ae3e5e217b34c61
url = http://download.redis.io/releases/redis-2.8.24.tar.gz
md5sum = 7b6eb6e4ccc050c351df8ae83c55a035
configure-command = true
prefix =
make-options =
......
......@@ -26,8 +26,8 @@ environment =
[ruby2.1]
<= ruby-common
url = http://ftp.ruby-lang.org/pub/ruby/2.1/ruby-2.1.7.tar.xz
md5sum = 2e43a1d32cc16975a6b5d3ffce399199
url = http://ftp.ruby-lang.org/pub/ruby/2.1/ruby-2.1.8.tar.xz
md5sum = f18ed96bd1d5890f97a17d0d17aaefdd
[ruby2.2]
......
......@@ -16,3 +16,7 @@ environment = scikit-learn-env
setup-eggs =
${numpy:egg}
${scipy:egg}
rpath =
${gcc-fortran:location}/lib
${gcc-fortran:location}/lib64
${openblas:location}/lib
......@@ -40,7 +40,7 @@ in software.cfg, replace instance-recipe-egg part by
[instance-recipe-egg]
recipe = zc.recipe.egg
eggs =
${mysql-python:egg}
${python-mysqlclient:egg}
${instance-recipe:egg}
slapos.toolbox[lampconfigure]
......
......@@ -51,6 +51,7 @@ class Recipe(GenericBaseRecipe):
CONFIG['instance_dict'] = value.getvalue()
software_path_list = json.loads(self.options['software-path-list'])
CONFIG["software_path_list"] = ""
if software_path_list:
CONFIG["software_path_list"] = "[software_list]"
CONFIG["software_path_list"] += \
......
......@@ -177,7 +177,7 @@ def import_dump(args):
def promise(args):
# This is not a dependency of slapos.cookbook, because it shall be runned
# in a python environment having mysql-python
# in a python environment having mysqlclient
import MySQLdb
user = args['user']
......
......@@ -48,29 +48,29 @@ gitdb = 0.6.4
pycrypto = 2.6.1
slapos.recipe.download = 1.0
slapos.recipe.template = 2.8
slapos.toolbox = 0.53
slapos.toolbox = 0.55
smmap = 0.9.0
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
GitPython = 1.0.1
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
atomize = 0.2.0
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
feedparser = 5.2.1
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
lockfile = 0.10.2
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
paramiko = 1.16.0
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
rpdb = 0.1.5
......@@ -11,29 +11,29 @@ plone.recipe.command = 1.1
pycrypto = 2.6.1
rdiff-backup = 1.0.5
slapos.recipe.template = 2.8
slapos.toolbox = 0.53
slapos.toolbox = 0.55
smmap = 0.9.0
# Required by:
# slapos.toolbox==0.52
# slapos.toolbox==0.55
GitPython = 1.0.1
# Required by:
# slapos.toolbox==0.52
# slapos.toolbox==0.55
atomize = 0.2.0
# Required by:
# slapos.toolbox==0.52
# slapos.toolbox==0.55
feedparser = 5.2.1
# Required by:
# slapos.toolbox==0.52
# slapos.toolbox==0.55
lockfile = 0.10.2
# Required by:
# slapos.toolbox==0.52
# slapos.toolbox==0.55
paramiko = 1.16.0
# Required by:
# slapos.toolbox==0.52
# slapos.toolbox==0.55
rpdb = 0.1.5
......@@ -48,7 +48,7 @@ scipy = 0.13.3
simpy = 3.0.5
zope.dottedname = 4.1.0
tablib = 0.10.0
MySQL-python = 1.2.5
mysqlclient = 1.3.7
# indirect dependancies
cp.recipe.cmd = 0.5
......
......@@ -141,7 +141,7 @@ tmp = $${buildout:directory}/tmp
[basedirectory]
recipe = slapos.cookbook:mkdirectory
log = $${rootdirectory:var}/log
services = $${rootdirectory:etc}/run
services = $${rootdirectory:etc}/service
run = $${rootdirectory:var}/run
promises = $${rootdirectory:etc}/promise
......
......@@ -55,7 +55,7 @@ recipe = slapos.recipe.template
url = ${:_profile_base_location_}/instance-default.cfg
output = ${buildout:directory}/template-default.cfg
mode = 0644
md5sum = 3d6f9c13c47c8b4771f7b427685b7b22
md5sum = 43ca4026ee1aba5d20bb9e1b69d2f114
[versions]
PyXML = 0.8.5
......
......@@ -6,7 +6,7 @@
#
# TODO better autogenerate from ^^^ (?)
#
# (last updated for omnibus-gitlab 8.4.2+ce.0-3-g68d5ee8)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
[gitlab-parameters]
configuration.external_url = http://lab.example.com
......
......@@ -632,7 +632,7 @@ log = ${sidekiq-dir:log}
# NOTE see queue list here:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/Procfile
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-run.erb
# (last updated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
[service-sidekiq]
recipe = slapos.cookbook:wrapper
wrapper-path = ${directory:service}/sidekiq
......
......@@ -68,7 +68,7 @@ eggs =
# rubygemsrecipe with fixed url and this way pinned rubygems version
[rubygemsrecipe]
recipe = rubygemsrecipe
url = https://rubygems.org/rubygems/rubygems-2.5.1.zip
url = https://rubygems.org/rubygems/rubygems-2.5.2.zip
# bundler, that we'll use to
......@@ -93,10 +93,13 @@ bundle = ${buildout:bin-directory}/bundle
# execjs needs: nodejs
# rails needs db client program on path: psql
# gitlab wants to check redis version via running: redis-cli
# gitlab wants git to be really on path ( it uses git from abspath defined in
# gitlab.yml, but there are not all cases like this, e.g. in
# https://gitlab.com/gitlab-org/gitlab_git/blob/2f0d3c1a/lib/gitlab_git/repository.rb#L259 )
# gitlab (via github-markup) wants to convert rst -> html via running: python2 (with docutils egg)
# (python-4gitlab puts interpreter into ${buildout:bin-directory})
environment =
PATH = ${:ruby-location}/bin:${cmake:location}/bin:${pkgconfig:location}/bin:${nodejs:location}/bin:${postgresql92:location}/bin:${redis28:location}/bin:${buildout:bin-directory}:%(PATH)s
PATH = ${:ruby-location}/bin:${cmake:location}/bin:${pkgconfig:location}/bin:${nodejs:location}/bin:${postgresql92:location}/bin:${redis28:location}/bin:${git:location}/bin:${buildout:bin-directory}:%(PATH)s
# gitlab, gitlab-shell & gitlab-workhorse checked out as git repositories
......@@ -108,26 +111,27 @@ git-executable = ${git:location}/bin/git
[gitlab-repository]
<= git-repository
#repository = https://gitlab.com/gitlab-org/gitlab-ce.git
repository = https://lab.nexedi.com/kirr/gitlab-ce.git
# 8.4.X + NXD patches:
revision = v8.4.4-18-g32fa1180aca0b5c119f9a42ecfc733db1fad1dc0
repository = https://lab.nexedi.com/nexedi/gitlab-ce.git
# 8.5.X + NXD patches:
revision = v8.5.3-15-g827d39147af496bcd4696c845e9094a07b5a09d3
location = ${buildout:parts-directory}/gitlab
[gitlab-shell-repository]
<= git-repository
repository = https://gitlab.com/gitlab-org/gitlab-shell.git
# gitlab 8.4 wants gitlab-shell 2.6.10
# 2.6.10
revision = v2.6.10-0-g82b3a4e8f70692ec679d880628fdb0f5844d42b9
#repository = https://gitlab.com/gitlab-org/gitlab-shell.git
repository = https://lab.nexedi.com/nexedi/gitlab-shell.git
# gitlab 8.5 wants gitlab-shell 2.6.10
# 2.6.10 + no-hooks.old patch
revision = v2.6.10-13-gcb8f331c955aa780efe10263d0d45b332f030f42
location = ${buildout:parts-directory}/gitlab-shell
[gitlab-workhorse-repository]
<= git-repository
#repository = https://gitlab.com/gitlab-org/gitlab-workhorse.git
repository = https://lab.nexedi.com/kirr/gitlab-workhorse.git
# 0.6.X + NXD patches for blob download speedup
repository = https://lab.nexedi.com/nexedi/gitlab-workhorse.git
# 0.6.4 + NXD patches for blob download speedup
# (https://gitlab.com/gitlab-org/gitlab-workhorse/merge_requests/17)
revision = 0.6.1-2-ga23a5e18486b0de6e3435711dc555c8bfe08fde2
revision = 0.6.4-2-g86b2a17f24f6c369774bbb388560e4aa9a4321c1
location = ${buildout:parts-directory}/gitlab-workhorse
......@@ -219,23 +223,23 @@ url = ${:_profile_base_location_}/template/${:_buildout_section_name_}
[config.ru.in]
<= download-template
md5sum = 3ed3c439ac1b93f75121dabcea126078
md5sum = 91737a2067be80f3ae48157e5a0738b4
[database.yml.in]
<= download-template
md5sum = b33f4f2f49a5a3e3e6542357c555a3a3
md5sum = 76d8f20532d63282ecd3617a3937fcf1
[gitconfig.in]
<= download-template
md5sum = 75f620ea0751fc8d2dc717cf929d29f3
md5sum = d8b3611386c4982605edd9a31832ee28
[gitlab-parameters.cfg]
<= download-file
md5sum = 2cfd3bbf9da10627044ca3a9a149fdbb
md5sum = b04b72949f0b9b5da96870ffbf8c1ff4
[gitlab-shell-config.yml.in]
<= download-template
md5sum = f061d529b71241d58affbf7aec5c8af1
md5sum = 9c62aa1bf7396f207a528e39973aa135
[gitlab-unicorn-startup.in]
<= download-file
......@@ -243,11 +247,11 @@ md5sum = 14c5632182d830c03f7788c85d6f4da1
[gitlab.yml.in]
<= download-template
md5sum = cd7aaeeb1917fdedb7656943065c0a9c
md5sum = 8f1c52ed223ee2c2d07c6c79bcd2f6c0
[instance-gitlab.cfg.in]
<= download-file
md5sum = 5f0b7d51e921e0e37e40fb65552dde9c
md5sum = 7a0ba60d09e6a62ffc1da34cf79737a0
[macrolib.cfg.in]
<= download-file
......@@ -255,27 +259,27 @@ md5sum = a56a44e96f65f5ed20211bb6a54279f4
[nginx-gitlab-http.conf.in]
<= download-template
md5sum = 3b494fe8425a12e4a7fd3a9bb17f88f8
md5sum = be7ddd26b0b0196fde8d699e50e84b2f
[nginx.conf.in]
<= download-template
md5sum = dc16257d49d1fc1ae6e7d10865898201
md5sum = 71b4221cd91e0e1e20a72b97991f2665
[rack_attack.rb.in]
<= download-template
md5sum = fbea569a1ac9ee46e37d0b98b5441169
md5sum = 2cf56b210a906cee80f86cde7112f468
[resque.yml.in]
<= download-template
md5sum = 2cd97d9f5906d06e00774dd2e4e6af0e
md5sum = 1fa21655a845602f68a901f23a1da89a
[smtp_settings.rb.in]
<= download-template
md5sum = 75b9e0325737ca5ecbf938443a5d3321
md5sum = 07b640122b8c4840e853360f2479d0ac
[unicorn.rb.in]
<= download-template
md5sum = 1b55105a3de1ef13260ac3faa30d6e85
md5sum = 4f7c14147fd60b4cc9aefe7f64524abe
[versions]
......
......@@ -2,7 +2,7 @@
# see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config.ru
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/gitlab-rails-config.ru.erb
# (last updated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
# This file is used by Rack-based servers to start the application.
......
......@@ -2,7 +2,7 @@
# see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/database.yml.postgresql
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/database.yml.erb
# (last updated for 8.4.4+ce.0-0-g1680742)
# (last updated for 8.5.1+ce.0-1-ge732b39)
{% from 'macrolib.cfg.in' import cfg with context %}
......
......@@ -3,7 +3,7 @@
# see:
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/attributes/default.rb
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/gitconfig.erb
# (last updated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
#
{% from 'macrolib.cfg.in' import cfg with context %}
......
......@@ -2,7 +2,7 @@
# see:
# https://gitlab.com/gitlab-org/gitlab-shell/blob/master/config.yml.example
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/gitlab-shell-config.yml.erb
# (last updated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
# GitLab user. git by default
user: {{ backend_info.user }}
......
......@@ -2,7 +2,7 @@
# see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/gitlab.yml.example
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/gitlab.yml.erb
# (last updated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
{% from 'macrolib.cfg.in' import cfg, cfg_https, external_url with context %}
......@@ -28,7 +28,9 @@ production: &base
# WARNING: See config/application.rb under "Relative url support" for the list of
# other files that need to be changed for relative url support
# relative_url_root: /gitlab
{# we do not support relative URL
relative_url_root: <%= @gitlab_relative_url %>
#}
# Uncomment and customize if you can't use the default user to run GitLab (default: 'git')
user: {{ backend_info.user }}
......@@ -141,6 +143,8 @@ production: &base
host: <%= @pages_host %>
port: <%= @pages_port %>
https: <%= @pages_https %>
external_http: <%= @pages_external_http %>
external_https: <%= @pages_external_https %>
#}
{# we do not support Elasticsearch
......@@ -282,15 +286,22 @@ production: &base
auto_sign_in_with_provider: <%= @omniauth_auto_sign_in_with_provider %>
# CAUTION!
# This allows users to login without having a user account first (default: false).
# This allows users to login without having a user account first. Define the allowed
# providers using an array, e.g. ["saml", "twitter"]
# User accounts will be created automatically when authentication was successful.
allow_single_sign_on: <%= @omniauth_allow_single_sign_on %>
allow_single_sign_on: <%= @omniauth_allow_single_sign_on.to_json %>
# Locks down those users until they have been cleared by the admin (default: true).
block_auto_created_users: <%= @omniauth_block_auto_created_users %>
# Look up new users in LDAP servers. If a match is found (same uid), automatically
# link the omniauth identity with the LDAP account. (default: false)
auto_link_ldap_user: <%= @omniauth_auto_link_ldap_user %>
# Allow users with existing accounts to login and auto link their account via SAML
# login, without having to do a manual login first and manually add SAML
# (default: false)
auto_link_saml_user: <%= @omniauth_auto_link_saml_user.to_json %>
## Auth providers
# Uncomment the following lines and fill in the data of the auth provider you want to use
......
{{ autogenerated }}
# see:
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/nginx-gitlab-http.conf.erb
# (last updated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
{% from 'macrolib.cfg.in' import cfg, cfg_bool, cfg_https, fqdn with context %}
......@@ -56,7 +56,7 @@ server {
#}
server {
listen [{{ backend_info.host }}]:{{ backend_info.port }}{% if cfg_https %} ssl spdy{% endif %};
listen [{{ backend_info.host }}]:{{ backend_info.port }}{% if cfg_https %} ssl http2{% endif %};
{# we don't use: kerbeeros
<% if @kerberos_enabled && @kerberos_use_dedicated_port %>
......@@ -104,7 +104,9 @@ server {
access_log {{ nginx.log }}/gitlab_access.log gitlab_access;
error_log {{ nginx.log }}/gitlab_error.log;
location / {
{# we do not support relative URL - path is always "/" #}
{% set path = "/" %}
location {{ path }} {
## If you use HTTPS make sure you disable gzip compression
## to be safe against BREACH attack.
{{ 'gzip off;' if cfg_https else ''}}
......@@ -117,6 +119,11 @@ server {
proxy_http_version 1.1;
# NOTE(slapos) proxy headers are defined upstream in omnibus-gitlab in:
# - files/gitlab-config-template/gitlab.rb.template nginx['proxy_set_headers']
# - files/gitlab-cookbooks/gitlab/attributes/default.rb default['gitlab']['nginx']['proxy_set_headers']
# - files/gitlab-cookbooks/gitlab/libraries/gitlab.rb parse_nginx_proxy_headers()
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
{% if cfg_https %}
......
......@@ -2,7 +2,7 @@
# see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/lib/support/nginx/gitlab-ssl
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/nginx.conf.erb
# (last updated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
{% from 'macrolib.cfg.in' import cfg with context %}
......
......@@ -2,7 +2,7 @@
# see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/initializers/rack_attack.rb.example
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/rack_attack.rb.erb
# (last updated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
{% from 'macrolib.cfg.in' import cfg with context %}
......
......@@ -2,6 +2,6 @@
# see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/resque.yml.example
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/resque.yml.erb
# (last udpdated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last udpdated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
production: unix://{{ redis.unixsocket }}
......@@ -2,7 +2,7 @@
# see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/initializers/smtp_settings.rb.sample
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/smtp_settings.rb.erb
# (last updated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
{% from 'macrolib.cfg.in' import cfg, cfg_bool with context %}
......
......@@ -3,7 +3,7 @@
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/unicorn.rb.example
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/unicorn.rb.example.development
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/unicorn.rb.erb
# (last updated for omnibus-gitlab 8.4.4+ce.0-0-g1680742)
# (last updated for omnibus-gitlab 8.5.1+ce.0-1-ge732b39)
{% from 'macrolib.cfg.in' import cfg with context %}
......@@ -71,3 +71,11 @@ stderr_path '{{ unicorn.log }}/unicorn_stderr.log'
# Where stdout gets logged
stdout_path '{{ unicorn.log }}/unicorn_stdout.log'
{# we do not support Relative url
<%- if @relative_url %>
# Relative url from where GitLab is served
ENV['RAILS_RELATIVE_URL_ROOT'] = "<%= @relative_url %>"
<%- end %>
#}
......@@ -98,7 +98,7 @@ mode = 0644
recipe = hexagonit.recipe.download
url = ${:_profile_base_location_}/instance-kvm.cfg.jinja2
mode = 644
md5sum = 88e1437391d21a49b50848689b1221e5
md5sum = e72f42d880877a841e87908566c28610
download-only = true
on-update = true
......@@ -106,7 +106,7 @@ on-update = true
recipe = hexagonit.recipe.download
url = ${:_profile_base_location_}/instance-kvm-cluster.cfg.jinja2.in
mode = 644
md5sum = f61e033aedaa8e9836795e36fd12e51d
md5sum = 6e81c08669e164b852bd8d062c620de2
download-only = true
on-update = true
......
......@@ -34,7 +34,7 @@ state = stopped
config-frontend-instance-name = {{ instance_name ~ ' VNC Frontend' }}
config-frontend-software-type = {{ dumps(frontend_dict.get('software-type', 'frontend')) }}
config-frontend-software-url = {{ dumps(frontend_dict.get('software-url', 'https://lab.nexedi.com/nexedi/slapos/raw/slapos-0.92/software/kvm/software.cfg')) }}
config-frontend-software-url = {{ dumps(frontend_dict.get('software-url', 'http://git.erp5.org/gitweb/slapos.git/blob_plain/refs/tags/slapos-0.92:/software/kvm/software.cfg')) }}
config-frontend-instance-guid = {{ dumps(frontend_dict.get('instance-guid', '')) }}
config-name = {{ instance_name }}
{% if slapparameter_dict.get('authorized-keys', []) -%}
......@@ -226,4 +226,4 @@ parts =
eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
\ No newline at end of file
offline = true
......@@ -533,7 +533,7 @@ backup = ${logrotate:backup}
[slap-parameter]
# Default values if not specified
frontend-software-type = frontend
frontend-software-url = https://lab.nexedi.com/nexedi/slapos/raw/slapos-0.92/software/kvm/software.cfg
frontend-software-url = http://git.erp5.org/gitweb/slapos.git/blob_plain/refs/tags/slapos-0.92:/software/kvm/software.cfg
frontend-instance-guid =
frontend-instance-name = VNC Frontend
nbd-port = 1024
......@@ -648,4 +648,4 @@ extends =
eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
\ No newline at end of file
offline = true
......@@ -109,30 +109,30 @@ apache-libcloud = 0.16.0
ecdsa = 0.11
gitdb = 0.6.0
pycrypto = 2.6.1
slapos.toolbox = 0.53
slapos.toolbox = 0.55
smmap = 0.8.3
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
GitPython = 0.3.2.1
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
atomize = 0.2.0
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
feedparser = 5.1.3
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
paramiko = 1.16.0
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
lockfile = 0.10.2
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
rpdb = 0.1.5
......@@ -8,18 +8,23 @@ GPL v2 or later
## Requirements
* sudo and git on the host (for now)
* sudo on the host (for now)
* some environment variables need to be authorized to be propagated when cros_sdk calls sudo:
: Defaults env_keep += "CROS_CACHEDIR DEPOT_TOOLS"
* slapuser with sudo rights to execute the cros_sdk scripts (needed to access the chroot environment provided by Chromium OS)
in /etc/sudoers:
<pre><code>
\<slapuser\> ALL= NOPASSWD: /srv/slapgrid/\<part\>/srv/runner/instance/\<inst_part\>/parts/clone-depot-tools/cros_sdk, /srv/slapgrid/\<part\>/srv/runner/instance/\<inst_part\>/parts/chromiumos/\<release\>/chromite/bin/cros_sdk, /srv/slapgrid/\<part\>/srv/runner/instance/\<inst_part\>/parts/chromiumos/\<release\>/chromite/bootstrap/cros_sdk, /srv/slapgrid/\<part\>/srv/runner/instance/\<inst_part\>/parts/chromiumos/\<release\>/chromite/scripts/cros_sdk.py, /srv/slapgrid/\<part\>/srv/runner/instance/\<inst_part\>/parts/chromiumos/\<release\>/chromite/scripts/cros_sdk.pyc, /srv/slapgrid/\<part\>/srv/runner/instance/\<inst_part\>/parts/chromiumos/\<release\>/chromium/tools/depot_tools/cros_sdk
</code></pre>
in /etc/sudoers (replace slapuser9 by your user, and release-R48-7647.B by the release you have chosen):
: slapuser9 ALL=NOPASSWD: /srv/slapgrid/slappart9/srv/runner/instance/slappart0/parts/chromiumos/release-R48-7647.B/chromite/bin/cros_sdk, /srv/slapgrid/slappart9/srv/runner/instance/slappart0/wrapper_bin/wrapper_cros_sdk, /bin/kill
It's useful to have the right to kill cros_sdk processes, when needed. ;)
## Input
In the vifib parameters (softinst\<nb\>.host.vifib.net \> Services \> Parameters):
* board / ex: peppy, swanky, ... (choosing daisy will accept all licenses for the daisy board build only, in order to use Mali drivers, see [chromium mailing list](https://groups.google.com/a/chromium.org/forum/#!topic/chromium-os-dev/Pf9ZG2itxWM))
* branch / ex: release-R46-7390.B
* branch / ex: release-R46-7390.B (you can find the release in the [Chromium OS source tree](https://chromium.googlesource.com/chromiumos/manifest/+refs))
* keep_cache / yes|no (choosing "no" saves about 15Go of disk space per board, choosing "yes" will makes next build faster and less expensive in term of needed ressources because of not rebuilding everything)
......@@ -35,10 +40,10 @@ The script that download the sources and build is located in
## External documents
* [ <code>repo</code> command reference ](https://source.android.com/source/using-repo.html)
* [ NayuOS official website ](https://www.nayuos.org)
* [ NayuOS official website ](https://www.nayuos.com)
* [ crouton for chroot ](https://github.com/dnschneid/crouton) ([warning about verified boot](https://github.com/dnschneid/crouton/blob/2a1fc9da380650f47e2bcf37d00962bfb68c4830/installer/main.sh#L517-L536))
## Notes for possible improvements
* [ Running virtual machines on your chromebook ](https://www.chromium.org/chromium-os/developer-information-for-chrome-os-devices/running-virtual-machines-on-your-chromebook)
* to have a more common User Agent (the one of ChromiumOS/NayuOS is quite rare and identifies the user, see [studies of the EFF](https://panopticlick.eff.org/static/browser-uniqueness.pdf)), it seems possible to change the User-Agent flag for guest mode in the getOffTheRecord function, and adding a line (key "kUserAgent" , value "some common user agent" string). Then rebuild Chromium and [add it to NayuOS](https://www.chromium.org/chromium-os/developer-guide#TOC-Making-changes-to-the-Chromium-web-).
* remove need of root priviledge for entering the chroot, maybe by using fakeroot in 'scripts/wrapper_sudo.in'?
......@@ -2,6 +2,8 @@
parts =
parameters
template-full-build-script
template-sudo-wrapper
template-cros-sdk-wrapper
# eggs given by software.cfg
eggs-directory = {{ eggs_directory }}
......@@ -15,9 +17,10 @@ recipe = slapos.recipe.build:gitclone
repository = https://chromium.googlesource.com/chromium/tools/depot_tools.git
branch = master
[use-depot-tools]
export-path =
export PATH=${depot-tools:location}:"$PATH";
[customize-path]
# add depot tools directory (for cros_sdk binary among others) and git directory to the path
command =
export PATH="${directory:wrapper_dir}":"{{ git_path }}":"{{ curl_path }}":"${depot-tools:location}":"$PATH";
[nayuos-ebuilds]
recipe = slapos.recipe.build:gitclone
......@@ -41,24 +44,53 @@ cert = ${slap_connection:cert_file}
recipe = slapos.cookbook:mkdirectory
log = ${buildout:directory}/var/log
run = ${buildout:directory}/etc/run
wrapper_dir = ${buildout:directory}/wrapper_bin
cros_location = ${buildout:directory}/parts/chromiumos
ebuilds_dir = ${nayuos-ebuilds:location}
scripts_dir = {{ scripts_dir }}
logo_dir = {{ logo_dir }}
[bin]
wrapper_cros_sdk=${directory:wrapper_dir}/wrapper_cros_sdk
bash=/bin/bash
sudo=/usr/bin/sudo
[template-sudo-wrapper]
recipe = slapos.recipe.template:jinja2
template = {{ scripts_dir }}/wrapper_sudo.in
rendered = ${directory:wrapper_dir}/sudo
md5sum = ded5a92be4e37ec32eb9d3087d3e19bd
mode = 0700
context =
key fake_cros_sdk_path bin:wrapper_cros_sdk
key bash_path bin:bash
key host_sudo_path bin:sudo
[template-cros-sdk-wrapper]
recipe = slapos.recipe.template:jinja2
template = {{ scripts_dir }}/wrapper_cros_sdk.in
rendered = ${bin:wrapper_cros_sdk}
md5sum = 7159fe3d5b85a283733cf686c4ee0a74
mode = 0700
context =
# XXX bash path is the one from the host
key bash_path bin:bash
raw git_path {{ git_path }}
raw curl_path {{ curl_path }}
[template-full-build-script]
# create the instance.cfg file in the buildout directory
# create the rendered script in the buildout-directory/etc/run
# (use jinja for templating)
recipe = slapos.recipe.template:jinja2
template = {{ scripts_dir }}/cros_full_build.in
rendered = ${directory:run}/cros_full_build
md5sum = 76942f32e682b36397b41db28297625d
mode = 0770
md5sum = d2c41ded046c75473eda0f923ee215e2
mode = 0700
context =
# for access to the eggs from the instance
key bash_path bin:bash
key instance_log_dir directory:log
key cros_location directory:cros_location
key depot_tools_export_path_cmd use-depot-tools:export-path
key export_path_cmd customize-path:command
key branch parameters:configuration.branch
key boards_list parameters:configuration.boards
key keep_cache parameters:configuration.keep_cache
......
#!/bin/bash
#XXX: should not depend on the host's bash ^
#! {{ bash_path }}
######################## Download of sources using the "repo" command ########################
DL_LOG={{ instance_log_dir }}/cros_sources_dl.log
BRANCH={{ branch }}
CHROMIUM_OVERLAY={{ cros_location }}/{{ branch }}/src/third_party/chromiumos-overlay
DL_LOG="{{ instance_log_dir }}/cros_sources_dl.log"
BRANCH="{{ branch }}"
CHROMIUM_OVERLAY="{{ cros_location }}/{{ branch }}/src/third_party/chromiumos-overlay"
{{ export_path_cmd }}
echo "getting Chromium OS sources..." >> $DL_LOG
{{ depot_tools_export_path_cmd }}
echo "{{ cros_location }}/{{ branch }}"
install -d "{{ cros_location }}/{{ branch }}"
cd "{{ cros_location }}/{{ branch }}"
repo init -u https://chromium.googlesource.com/chromiumos/manifest.git -b {{ branch }} >> $DL_LOG
# git setup
if ! git config user.name || ! git config user.email ; then
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
fi
repo init -u https://chromium.googlesource.com/chromiumos/manifest.git -b {{ branch }} >> $DL_LOG || { echo "Problem while initiating Chromium OS repo (repo init). PATH is: '${PATH}'. Exiting." ; exit 1 ; }
# in case changes were already made, stash changes to be able to pull
cd ${CHROMIUM_OVERLAY}
git stash
repo sync >> $DL_LOG
repo sync >> $DL_LOG || { echo "Problem while downloading Chromium OS sources (repo sync). Exiting." ; exit 1 ; }
############################## Prepare chroot environment ###################################
BUILD_LOG={{ instance_log_dir }}/cros_build.log
TEST_LOG={{ instance_log_dir }}/tests_nayuos_image.log
{{ depot_tools_export_path_cmd }}
cd {{ cros_location }}/{{ branch }}
# create chroot environment (exit on failure)
cros_sdk --download || { echo "Problem entering chroot or downloading chroot environment. Exiting." ; exit 1 ; }
cros_sdk --download || { echo "Problem while entering chroot or downloading chroot environment. PATH is: '${PATH}' Exiting." ; exit 1 ; }
# compile Python with sqlite support (-> change USE flag) for dev-lang/python
# it is needed by re6st
......@@ -104,9 +109,10 @@ KEEP_CACHE="{{ keep_cache }}"
for board in ${BOARDS} ; do
echo ${board}
if [ ${board} == daisy ] ; then
# XXX: broken by sucessive wrapping
echo "daisy board: accepting license for Mali drivers..."
cros_sdk -- sudo sh -c "cp /etc/make.conf.user /etc/make.conf.user.save"
cros_sdk -- sudo sh -c "echo 'ACCEPT_LICENSE=\"*\"' >> /etc/make.conf.user"
cros_sdk -- "sudo cp /etc/make.conf.user /etc/make.conf.user.save"
cros_sdk -- "echo 'ACCEPT_LICENSE=\"*\"' | sudo tee --append /etc/make.conf.user"
fi
# preparing packages (for chroot and image)
......@@ -142,8 +148,9 @@ for board in ${BOARDS} ; do
fi
if [ ${board} == daisy ]; then
# XXX: broken by sucessive wrapping
echo "daisy board: removing accepted license for the next builds..."
cros_sdk -- sudo sh -c "mv /etc/make.conf.user.save /etc/make.conf.user"
cros_sdk -- "sudo mv /etc/make.conf.user.save /etc/make.conf.user"
fi
done
......
#! {{ bash_path }}
# XXX: not secure: normal users need this script to have root priviledge
# but have write permission on it
# add curl/git to the path, required by cros_sdk, but not available after sudo
export PATH="{{ git_path }}:{{ curl_path }}:$PATH"
exec "${@:1}"
#! {{ bash_path }}
COMMAND=()
# add wrapper_cros_sdk before cros_sdk command
pos=0
for option in "$@"; do
if [[ "$option" == *"cros_sdk"* ]]; then
COMMAND=("${@:1:$pos}" "{{ fake_cros_sdk_path }}" "${@:(($pos+1))}")
break;
fi
((pos++))
done
exec {{ host_sudo_path }} "${COMMAND[@]}"
......@@ -6,7 +6,7 @@ extends =
parts +=
# use stack/slapos.cfg
slapos-cookbook
verify-sudo-exists-on-host
verify-packages-exist-on-host
template-instance
install-eggs-for-the-instance
......@@ -22,7 +22,7 @@ plone.recipe.command = 1.1
slapos.recipe.template = 2.8
slapos.recipe.build = 0.21
[verify-sudo-exists-on-host]
[verify-packages-exist-on-host]
recipe = plone.recipe.command
stop-on-error = true
# run the same command when installing and on updates
......@@ -35,20 +35,24 @@ command = sudo -V
recipe = slapos.recipe.template:jinja2
template = ${:_profile_base_location_}/instance.cfg
rendered = ${buildout:directory}/instance.cfg
md5sum = d5a12b1ea814b4bb6792dfebaa655f90
md5sum = 875d7fd5990a8645e761849193b09630
mode = 0644
scripts_dir = ${:_profile_base_location_}/scripts
logo_dir = ${:_profile_base_location_}/logo
curl_path = ${curl:location}/bin
git_path = ${git:location}/bin
context =
# for access to the eggs from the instance
key eggs_directory buildout:eggs-directory
key develop_eggs_directory buildout:develop-eggs-directory
key scripts_dir :scripts_dir
key logo_dir :logo_dir
key curl_path :curl_path
key git_path :git_path
[install-eggs-for-the-instance]
# after installation of the eggs, the recipes
# will be available (added to sys.path)
recipe = zc.recipe.egg
eggs = slapos.recipe.build
plone.recipe.command
\ No newline at end of file
plone.recipe.command
......@@ -13,7 +13,7 @@ extends =
#LXML
../../component/lxml-python/buildout.cfg
#END LXML
../../component/mysql-python/buildout.cfg
../../component/python-mysqlclient/buildout.cfg
../../component/pycrypto-python/buildout.cfg
parts =
......@@ -37,7 +37,7 @@ setup = ${neoppod-repository:location}
[neoppod]
recipe = zc.recipe.egg
eggs = neoppod[admin, ctl, master, storage-importer, storage-mysqldb]
${mysql-python:egg}
${python-mysqlclient:egg}
ZODB3
ZODB3-patches =
${:_profile_base_location_}/../../component/egg-patch/ZODB3-3.10.5.patch#c5fe331b1e3a930446f93ab4f6e97c6e
......@@ -110,12 +110,11 @@ url = ${:_profile_base_location_}/my.cnf.in
md5sum = febd3ed58043ce1367b86cf6e4e69700
[versions]
MySQL-python = 1.2.5
slapos.recipe.template = 2.9
# patched egg
ZODB3 = 3.10.5+SlapOSPatched001
# Required by slapos.toolbox==0.52
slapos.toolbox = 0.53
# Required by slapos.toolbox==0.55
slapos.toolbox = 0.55
apache-libcloud = 0.20.1
atomize = 0.2.0
ecdsa = 0.13
......@@ -123,6 +122,7 @@ feedparser = 5.2.1
GitPython = 1.0.2
gitdb = 0.6.4
lockfile = 0.10.2
mysqlclient = 1.3.7
paramiko = 1.16.0
pycrypto = 2.6.1
smmap = 0.9.0
......@@ -110,15 +110,15 @@ gitdb = 0.6.4
plone.recipe.command = 1.1
pycrypto = 2.6.1
slapos.recipe.template = 2.7
slapos.toolbox = 0.53
slapos.toolbox = 0.55
smmap = 0.9.0
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
GitPython = 0.3.6
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
atomize = 0.2.0
# Required by:
......@@ -126,11 +126,11 @@ atomize = 0.2.0
backports.ssl-match-hostname = 3.4.0.2
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
feedparser = 5.1.3
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
lockfile = 0.10.2
# Required by:
......@@ -138,10 +138,10 @@ lockfile = 0.10.2
miniupnpc = 1.9
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
paramiko = 1.16.0
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
rpdb = 0.1.5
......@@ -175,7 +175,7 @@ mode = 0644
recipe = hexagonit.recipe.download
url = ${:_profile_base_location_}/template/${:filename}
download-only = true
md5sum = 4c44d617d5bfd1db8695200e896480c0
md5sum = d4c564267dd98cd178a890158c52c384
destination = ${buildout:parts-directory}/monitor-template-cors-domain-cgi
filename = cors-domain.jinja
mode = 0644
......
......@@ -19,25 +19,25 @@ gunicorn = 19.4.5
prettytable = 0.7.2
pycrypto = 2.6.1
slapos.recipe.template = 2.9
slapos.toolbox = 0.53
slapos.toolbox = 0.55
smmap = 0.9.0
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
GitPython = 1.0.2
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
atomize = 0.2.0
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
feedparser = 5.2.1
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
lockfile = 0.10.2
# Required by:
# slapos.toolbox==0.53
# slapos.toolbox==0.55
paramiko = 1.16.0
......@@ -30,7 +30,10 @@ if not parser.has_option("cors", "cors-domain"):
if "cors-domain" in form:
parser.set("cors", "cors-domain", form["cors-domain"].value)
cors_domain_list = form["cors-domain"].value.split()
cors_domain_parameter = parser.get("cors", "cors-domain")
if cors_domain_parameter:
cors_domain_list = cors_domain_parameter.split()
cors_string = ""
for domain in cors_domain_list:
if cors_string:
......@@ -41,8 +44,6 @@ if "cors-domain" in form:
file.write('Header always set Access-Control-Allow-Origin %{origin_is}e env=origin_is')
subprocess.call('{{ httpd_graceful }}')
cors_domain_parameter = parser.get("cors", "cors-domain")
with open(config_file, 'w') as file:
parser.write(file)
......
......@@ -142,5 +142,5 @@ setuptools = 0.9.8
prettytable = 0.7.3-nxd001
[networkcache]
download-cache-url = http://www.shacache.org/shacache
download-dir-url = http://www.shacache.org/shadir
\ No newline at end of file
download-cache-url = http://download.shacache.org/
download-dir-url = http://dir.shacache.org/
\ No newline at end of file
......@@ -29,7 +29,7 @@ git-executable = ${git:location}/bin/git
[slapos.cookbook-repository]
recipe = slapos.recipe.build:gitclone
repository = https://lab.nexedi.com/nexedi/slapos.git
branch = lamp-edge
branch = master
git-executable = ${git:location}/bin/git
[slapos.core-repository]
......
......@@ -33,7 +33,7 @@ git-executable = ${git:location}/bin/git
[slapos.cookbook-repository]
recipe = slapos.recipe.build:gitclone
repository = https://lab.nexedi.com/nexedi/slapos.git
branch = lapp-resilient3
branch = master
git-executable = ${git:location}/bin/git
[slapos.core-repository]
......
......@@ -10,7 +10,7 @@ parts =
extends =
../../component/boinc/buildout.cfg
../../component/mysql-python/buildout.cfg
../../component/python-mysqlclient/buildout.cfg
../../component/gzip/buildout.cfg
../../component/apache/buildout.cfg
../../component/apache-php/buildout.cfg
......@@ -25,7 +25,7 @@ extends =
[instance-egg]
recipe = zc.recipe.egg
eggs =
${mysql-python:egg}
${python-mysqlclient:egg}
slapos.toolbox
#Because Boinc deamon and Boinc sheduler(with apache) work side by side, we deploy
......@@ -64,10 +64,10 @@ app-list = {}
[versions]
pycrypto = 2.6
MySQL-python = 1.2.4
apache-libcloud = 0.12.4
async = 0.6.1
gitdb = 0.5.4
mysqlclient = 1.3.7
plone.recipe.command = 1.1
slapos.recipe.template = 2.4.2
slapos.toolbox = 0.40.4
......
......@@ -233,7 +233,7 @@ recipe = slapos.recipe.template:jinja2
# XXX: "template.cfg" is hardcoded in instanciation recipe
rendered = ${buildout:directory}/template.cfg
template = ${:_profile_base_location_}/instance.cfg.in
md5sum = fdaaac449c92dcd68f0434b244d579f2
md5sum = 10d02ec69c875e6a55afe3bf79db7bba
mode = 640
context =
key mariadb_link_binary template-mariadb:link-binary
......@@ -316,6 +316,7 @@ context =
key xdamage_location xdamage:location
key xfixes_location xfixes:location
key zlib_location zlib:location
key extra_path_list eggs:extra-paths
[monitor-template-dummy]
<= download-base
......@@ -339,7 +340,7 @@ md5sum = b0cb0ee97cddc79112a718e065806037
[template-zope]
<= download-base
filename = instance-zope.cfg.in
md5sum = bac5ff1ded5454749ec0e18d0ae1dae8
md5sum = 6bcd92d8823c99912abfbdc476301e76
link-binary =
${aspell:location}/bin/aspell
${dmtx-utils:location}/bin/dmtxwrite
......@@ -472,7 +473,7 @@ initialization =
eggs =
${numpy:egg}
${matplotlib:egg}
${mysql-python:egg}
${python-mysqlclient:egg}
${lxml-python:egg}
${pandas:egg}
${pillow-python:egg}
......@@ -613,12 +614,13 @@ eggs +=
slapos.toolbox[zodbpack]
scripts +=
is-local-tcp-port-opened
is-process-older-than-dependency-set
onetimedownload
zodbpack
[versions]
# See ../../software/neoppod/software-common.cfg for versions common with NEO:
# neoppod, MySQL-python, slapos.recipe.template & [slapos-deps-eggs]
# neoppod, python-mysqlclient, slapos.recipe.template & [slapos-deps-eggs]
# patched eggs
Acquisition = 2.13.8+SlapOSPatched001
......@@ -670,7 +672,7 @@ Pillow = 3.1.1
Products.CMFActionIcons = 2.1.3
Products.DCWorkflowGraph = 0.4.1
Products.ExternalEditor = 2.0.0
Products.GenericSetup = 1.8.1
Products.GenericSetup = 1.8.2
Products.LongRequestLogger = 2.0.0
Products.MimetypesRegistry = 2.0.8
Products.PluginRegistry = 1.3
......@@ -696,7 +698,7 @@ http-parser = 0.8.3
httplib2 = 0.9.2
huBarcode = 1.0.0
interval = 1.0.0
ipdb = 0.8.3
ipdb = 0.9.0
ipython = 4.1.1
ipywidgets = 4.1.1
logilab-common = 1.1.0
......
......@@ -60,6 +60,7 @@ instance-tests = ${:instance}/tests
log = ${:var}/log
run = ${:var}/run
services = ${:etc}/run
service-on-watch = ${:etc}/service
srv = ${buildout:directory}/srv
tmp = ${buildout:directory}/tmp
var = ${buildout:directory}/var
......@@ -308,7 +309,7 @@ context =
[{{ section(name) }}]
< = zope-base
wrapper = ${directory:services}/{{ name }}
wrapper = ${directory:service-on-watch}/{{ name }}
configuration-file = {{ '${' ~ conf_name ~ ':rendered}' }}
[{{ section("promise-" ~ name) }}]
......@@ -317,6 +318,19 @@ hostname = {{ ipv4 }}
port = {{ port }}
path = ${directory:promises}/{{ name }}
{% set extra_path_list = [] -%}
{% set shell_escaped_extra_path_list = [] -%}
{% for line in parameter_dict['extra-path-list'].splitlines() -%}
{% set line = line.strip() -%}
{% do extra_path_list.append(line) -%}
{% do shell_escaped_extra_path_list.append(line.replace("\x27", "\x27\\\x27\x27")) -%}
{% endfor -%}
[{{ section("promise-" ~ name ~ "-is-running-actual-product") }}]
recipe = slapos.cookbook:wrapper
command-line = '{{ parameter_dict['bin-directory'] }}/is-process-older-than-dependency-set' -k '{{ "${" ~ conf_parameter_name ~ ":pid-file}" }}' {{ " ".join(shell_escaped_extra_path_list) }}
wrapper-path = ${directory:promises}/{{ name }}-is-running-actual-product
parameters-extra = true
{% if use_ipv6 -%}
[{{ zope_tunnel_section_name }}]
< = ipv6toipv4-base
......
......@@ -124,6 +124,7 @@ link-binary = {{ dumps(zope_link_binary) }}
userhosts = {{ userhosts_location }}
runzope-userhosts-preloaded-template = {{ template_runzope_userhosts_preloaded }}
template-monitor = {{ dumps(template_monitor) }}
extra-path-list = {{ dumps(extra_path_list) }}
[dynamic-template-zope]
<= jinja2-template-base
......
......@@ -25,7 +25,7 @@ extends =
../component/zlib/buildout.cfg
../component/stunnel/buildout.cfg
../component/pycrypto-python/buildout.cfg
../component/mysql-python/buildout.cfg
../component/python-mysqlclient/buildout.cfg
../stack/slapos.cfg
[eggs]
......@@ -39,10 +39,10 @@ keep-compile-dir = false
[versions]
# Generated automatically by buildout-versions
MySQL-python = 1.2.3
apache-libcloud = 0.9.1
async = 0.6.1
gitdb = 0.5.4
mysqlclient = 1.3.7
plone.recipe.command = 1.1
slapos.recipe.template = 2.3
slapos.toolbox = 0.40.4
......
......@@ -7,7 +7,7 @@ parts =
apache-php
mariadb
mydumper
mysql-python
python-mysqlclient
rdiff-backup
dropbear
eggs
......@@ -40,7 +40,7 @@ extends =
../../component/lxml-python/buildout.cfg
../../component/mariadb/buildout.cfg
../../component/mydumper/buildout.cfg
../../component/mysql-python/buildout.cfg
../../component/python-mysqlclient/buildout.cfg
../../component/perl/buildout.cfg
../../component/rdiff-backup/buildout.cfg
../../component/sqlite3/buildout.cfg
......@@ -181,10 +181,10 @@ eggs =
slapos.toolbox[lampconfigure]
[versions]
MySQL-python = 1.2.4
apache-libcloud = 0.12.3
async = 0.6.1
gitdb = 0.5.4
mysqlclient = 1.3.7
pycrypto = 2.6
rdiff-backup = 1.0.5
slapos.recipe.template = 2.4.2
......
......@@ -3,5 +3,5 @@
networkcache-section = networkcache
[networkcache]
download-cache-url = http://www.shacache.org/shacache
download-dir-url = http://www.shacache.org/shadir
download-cache-url = http://download.shacache.org/
download-dir-url = http://dir.shacache.org/
......@@ -112,10 +112,10 @@ PyYAML = 3.11
Werkzeug = 0.11.4
buildout-versions = 1.7
cffi = 1.5.2
cliff = 1.17.0
cliff = 2.0.0
cmd2 = 0.6.8
collective.recipe.template = 1.13
cryptography = 1.2.2
cryptography = 1.2.3
decorator = 4.0.9
idna = 2.0
inotifyx = 0.2.2
......@@ -141,7 +141,7 @@ slapos.extension.strip = 0.1
slapos.libnetworkcache = 0.14.5
slapos.recipe.build = 0.23
slapos.recipe.cmmi = 0.2
stevedore = 1.11.0
stevedore = 1.12.0
unicodecsv = 0.14.1
xml-marshaller = 0.9.7
......@@ -194,8 +194,8 @@ uritemplate = 0.6
zope.interface = 4.1.3
[networkcache]
download-cache-url = http://www.shacache.org/shacache
download-dir-url = http://www.shacache.org/shadir
download-cache-url = http://download.shacache.org/
download-dir-url = http://dir.shacache.org/
# signature certificates of the following uploaders.
# Romain Courteaud
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment