Commit e538a91e authored by Benjamin Blanc's avatar Benjamin Blanc

scalability: stack/erp5 up

parent 5a043cfe
......@@ -11,12 +11,13 @@ extensions =
mr.developer
find-links =
http://192.168.242.75:1235/
http://www.nexedi.org/static/packages/source/slapos.buildout/
http://www.nexedi.org/static/packages/source/hexagonit.recipe.download/
http://dist.repoze.org
http://www.nexedi.org/static/packages/source/
http://www.owlfish.com/software/wsgiutils/download.html
https://pypi.python.org/packages/source/z/z3c.etestbrowser/
https://pypi.python.org/packages/source/z/zope.testbrowser/
allow-hosts += pybrary.net
......@@ -108,6 +109,7 @@ parts =
testrunner
test_suite_runner
scalability_test_suite_runner
performance_tester
# basic Xorg
libXdmcp
......@@ -138,12 +140,18 @@ parts =
# Local development
slapos.cookbook-repository
check-recipe
# Create instance template
template
erp5.dev-repository
erp5.util
slapos.cookbook
slapos.recipe.template
# Create instance template
template
erp5.util-check
[erp5.dev-repository]
recipe = slapos.recipe.build:gitclone
repository = http://192.168.242.75:1235/erp5.git
......@@ -234,7 +242,7 @@ md5sum = 564006953b7d7a12d40a14b6648b32f0
# XXX: "template.cfg" is hardcoded in instanciation recipe
filename = template.cfg
template = ${:_profile_base_location_}/instance.cfg.in
md5sum = 36ba0ca411fac348faa95ac7c0892e96
md5sum = 010595090b6376bd2746f1e98b922d8b
extra-context =
key apache_location apache:location
key aspell_location aspell:location
......@@ -313,7 +321,7 @@ md5sum = f271a904e7cc0039ce109f592fb48b5f
[template-scalability]
< = download-base
filename = instance-scalability.cfg.in
md5sum = fb479b5d2732fa32795be3ecb2ab22c9
md5sum = 82f88b1d2e858cce2595c9db34cfa8dc
[template-zeo]
< = download-base
......@@ -441,14 +449,41 @@ initialization =
repository_id_list = list(reversed('''${erp5_repository_list:repository_id_list}'''.split()))
sys.path[0:0] = ['/'.join(['''${buildout:parts-directory}''', x]) for x in repository_id_list]
# TODO : make also a binary for performance_tester
# Test to make binary
[scalability_test_suite_runner]
recipe = zc.recipe.egg
eggs = ${eggs:eggs}
extra-paths = ${eggs:extra-paths}
scripts = erp5.util.scalability.runScalabilityTestSuite:main
entry-points =
runScalabilityTestSuite=erp5.util.scalability.runScalabilityTestSuite:main
scripts = runScalabilityTestSuite
initialization =
import os
import sys
import erp5.util
[Products.__path__.insert(0, p) for p in reversed(os.environ.get('INSERT_PRODUCTS_PATH', '').split(':')) if p]
import Zope2
os.environ['SOFTWARE_HOME'] = os.path.abspath(os.path.dirname(os.path.dirname(Zope2.__file__)))
os.environ['ZOPE_SCRIPTS'] = ''
repository_id_list = list(reversed('''${erp5_repository_list:repository_id_list}'''.split()))
sys.path[0:0] = ['/'.join(['''${buildout:parts-directory}''', x]) for x in repository_id_list]
[performance_tester]
recipe = zc.recipe.egg
eggs = ${eggs:eggs}
extra-paths = ${eggs:extra-paths}
entry-points =
performance_tester=erp5.util.benchmark.performance_tester:main
scripts = performance_tester
initialization =
import os
import sys
import erp5.util
[Products.__path__.insert(0, p) for p in reversed(os.environ.get('INSERT_PRODUCTS_PATH', '').split(':')) if p]
import Zope2
os.environ['SOFTWARE_HOME'] = os.path.abspath(os.path.dirname(os.path.dirname(Zope2.__file__)))
os.environ['ZOPE_SCRIPTS'] = ''
repository_id_list = list(reversed('''${erp5_repository_list:repository_id_list}'''.split()))
sys.path[0:0] = ['/'.join(['''${buildout:parts-directory}''', x]) for x in repository_id_list]
[eggs]
......@@ -536,6 +571,15 @@ eggs =
# Needed for parsing .po files from our Localizer subset
polib
# performance_tester dependencies
z3c.etestbrowser
zope.testbrowser
# runScalabilityTestSuite dependencie
slapos.core
psutil
# parameterizing the version of the generated python interpreter name by the
# python section version causes dependency between this egg section and the
# installation of python, which we don't want on an instance
......@@ -549,7 +593,8 @@ scripts =
web_checker_utility = erp5.util.webchecker:web_checker_utility
extra-paths =
${erp5:location}
# ${erp5:location}
${erp5.dev-repository:location}
[zodbanalyze]
recipe = zc.recipe.egg
......@@ -594,6 +639,12 @@ scripts =
zodbpack
[versions]
z3c.etestbrowser = 2.0.0
zope.testbrowser =
slapos.core = 0.32.3
psutil =
# pin Acquisition and Products.DCWorkflow to Nexedi flavour of eggs
Acquisition = 2.13.7nxd001
Products.DCWorkflow = 2.2.3nxd002
......
......@@ -2,7 +2,6 @@
[buildout]
parts =
erp5-cluster
launcher
binary-wrap-launcher
eggs-directory = {{ eggs_directory }}
......@@ -28,32 +27,18 @@ config =
extra-config =
config-use-ipv6 = {{ dumps(slapparameter_dict.get('use-ipv6', False)) }}
# Create binary
[launcher]
scripts =
runScalabilityTestSuite = erp5.util.scalability.runScalabilityTestSuite:main
log-path = ${basedirectory:log}/runScalabilityTestSuite.log
binary-path = ${:bin-directory}/runScalabilityTestSuite
# TODO : make also a wrapper for performance_tester (used by runScalabilityTestSuite)
# Create wrapper and execute command with parameters
[binary-wrap-launcher]
recipe = slapos.cookbook:wrapper
log-path = ${basedirectory:log}/runScalabilityTestSuite.log
binary-path = {{ bin_directory }}/runScalabilityTestSuite
wrapper-path = ${rootdirectory:bin}/runScalabilityTestSuite
output = ${launcher:binary-path}
output = ${binary-wrap-launcher:binary-path}
# TODO : get the erp5-cluster main url (apache listening user port ?)
erp5-url = http://foo.bar
# Run scalability test suite wrapper command with parameters
command-line = "${binary-wrap-launcher:wrapper-path}\
--erp5-url ${binary-wrap-launcher:erp5-url}\
--test-result-path {{ dumps(slapparameter_dict.get('test-result-path')) }}\
--revision {{ dumps(slapparameter_dict.get('revision')) }}\
--node-title {{ dumps(slapparameter_dict.get('node-title')) }}\
--test-suite-master-url {{ dumps(slapparameter_dict.get('test-suite-master-url')) }}\
--log-path = ${launcher:log-path}"
# -\ dirty way to conserve spaces
command-line = "${binary-wrap-launcher:binary-path}" --erp5-url ${binary-wrap-launcher:erp5-url} --test-result-path {{ slapparameter_dict.get('test-result-path') }} --revision {{ slapparameter_dict.get('revision') }} --node-title {{ slapparameter_dict.get('node-title') }} --test-suite-master-url {{ slapparameter_dict.get('test-suite-master-url') }} --log-path ${binary-wrap-launcher:log-path}
return = url
......
......@@ -240,6 +240,18 @@ extra-context =
# Must match the key id in [switch-softwaretype] which uses this section.
raw software_type cluster-zope
[dynamic-template-scalability]
< = jinja2-template-base
template = {{ template_scalability }}
filename = instance-scalability.cfg
extensions = jinja2.ext.do
bin_directory = {{ bin_directory }}
extra-context =
key bin_directory dynamic-template-scalability:bin_directory
key local_bt5_repository dynamic-template-cluster-erp5-parameters:local-bt5-repository
# Must match the key id in [switch-softwaretype] which uses this section.
raw software_type scalability
[dynamic-template-kumofs-parameters]
dash-location = {{ dash_location }}
dcron-location = {{ dcron_location }}
......
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