Commit 816695ae authored by Benjamin Blanc's avatar Benjamin Blanc

scalability: add recipe files + test bootsrap

parent 7e60fbf2
...@@ -154,7 +154,7 @@ parts = ...@@ -154,7 +154,7 @@ parts =
[erp5.dev-repository] [erp5.dev-repository]
recipe = slapos.recipe.build:gitclone recipe = slapos.recipe.build:gitclone
repository = http://192.168.242.75:1235/erp5.git repository = http://192.168.242.72:1235/erp5.git
branch = scalability-master2 branch = scalability-master2
git-executable = ${git:location}/bin/git git-executable = ${git:location}/bin/git
...@@ -180,7 +180,7 @@ mode = 644 ...@@ -180,7 +180,7 @@ mode = 644
[slapos.cookbook-repository] [slapos.cookbook-repository]
recipe = slapos.recipe.build:gitclone recipe = slapos.recipe.build:gitclone
#repository = http://git.erp5.org/repos/slapos.git #repository = http://git.erp5.org/repos/slapos.git
repository = http://192.168.242.75:1236/slapos.git repository = http://192.168.242.72:1236/slapos.git
branch = erp5-cluster-z2.13-scalability branch = erp5-cluster-z2.13-scalability
git-executable = ${git:location}/bin/git git-executable = ${git:location}/bin/git
...@@ -243,7 +243,7 @@ md5sum = 564006953b7d7a12d40a14b6648b32f0 ...@@ -243,7 +243,7 @@ md5sum = 564006953b7d7a12d40a14b6648b32f0
# XXX: "template.cfg" is hardcoded in instanciation recipe # XXX: "template.cfg" is hardcoded in instanciation recipe
filename = template.cfg filename = template.cfg
template = ${:_profile_base_location_}/instance.cfg.in template = ${:_profile_base_location_}/instance.cfg.in
md5sum = 010595090b6376bd2746f1e98b922d8b md5sum = c7c798d79cf1ad0f1ae6804ffc36626a
extra-context = extra-context =
key apache_location apache:location key apache_location apache:location
key aspell_location aspell:location key aspell_location aspell:location
...@@ -322,7 +322,7 @@ md5sum = f271a904e7cc0039ce109f592fb48b5f ...@@ -322,7 +322,7 @@ md5sum = f271a904e7cc0039ce109f592fb48b5f
[template-scalability] [template-scalability]
< = download-base < = download-base
filename = instance-scalability.cfg.in filename = instance-scalability.cfg.in
md5sum = f32985483f089549a3bfe1a95ab099c3 md5sum = 3c189ee04cc8910f722c1647d981fc8d
[template-zeo] [template-zeo]
< = download-base < = download-base
......
{% if slap_software_type == software_type -%} {% if slap_software_type == software_type -%}
{% set site_id = slapparameter_dict.get('site-id', 'erp5') -%}
{% set promise_path = slapparameter_dict.get('promise-path', 'erp5') -%}
[buildout] [buildout]
extends = {{ template_cluster_zope }}
{{ template_erp5_cluster }}
parts = parts =
erp5-cluster erp5-cluster
binary-wrap-launcher binary-wrap-launcher
scalability-launcher-instance scalability-launcher-instance
binary-wrap-performance-tester
erp5-bootstrap
erp5-promise
promise-erp5-site
eggs-directory = {{ eggs_directory }} eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }} develop-eggs-directory = {{ develop_eggs_directory }}
offline = true offline = true
[erp5-bootstrap]
recipe = slapos.cookbook:erp5.bootstrap
runner-path = ${basedirectory:services}/erp5-bootstrap
mysql-url = ${request-mariadb:connection-url}
# Dirty way to get parameters
zope-url = http://${zope-0:user}:insecure@${zope-0:ip}:${zope-0:port}/{{ site_id }}
[erp5-promise]
recipe = slapos.cookbook:erp5.promise
promise-path = {{ promise_path }}
kumofs-url = ${request-kumofs:connection-url}
memcached-url = ${request-memcached:connection-url}
cloudooo-url = ${request-cloudooo:connection-url}
smtp-url = ${slap-parameter:smtp-url}
bt5 = ${slap-parameter:bt5}
bt5-repository-url = ${slap-parameter:bt5-repository-url}
[promise-erp5-site]
recipe = slapos.cookbook:check_url_available
path = ${basedirectory:promises}/erp5site
url = http://${zope-instance:ip}:${zope-instance:port}/${slap-parameter:site-id}
dash_path = {{ dash_location }}/bin/dash
curl_path = {{ curl_location }}/bin/curl
# Request erp5-cluster instance # Request erp5-cluster instance
[erp5-cluster] [erp5-cluster]
recipe = slapos.cookbook:request.serialised recipe = slapos.cookbook:request.serialised
...@@ -28,7 +60,7 @@ config = ...@@ -28,7 +60,7 @@ config =
extra-config = extra-config =
config-use-ipv6 = {{ dumps(slapparameter_dict.get('use-ipv6', False)) }} config-use-ipv6 = {{ dumps(slapparameter_dict.get('use-ipv6', False)) }}
# Create wrapper and execute command with parameters # Create wrapper
[binary-wrap-launcher] [binary-wrap-launcher]
recipe = slapos.cookbook:wrapper recipe = slapos.cookbook:wrapper
log-path = ${basedirectory:log}/runScalabilityTestSuite.log log-path = ${basedirectory:log}/runScalabilityTestSuite.log
...@@ -40,14 +72,25 @@ erp5-url = http://foo.bar ...@@ -40,14 +72,25 @@ erp5-url = http://foo.bar
# Run scalability test suite wrapper command with parameters # Run scalability test suite wrapper command with parameters
# -\ dirty way to conserve spaces # -\ 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} # 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}
parameters-extra = $*
command-line = ${binary-wrap-launcher:binary-path} command-line = ${binary-wrap-launcher:binary-path}
return = url return = url
# Create wrapper
[binary-wrap-performance-tester]
recipe = slapos.cookbook:wrapper
binary-path = {{ bin_directory }}/performance_tester
wrapper-path = ${rootdirectory:bin}/performance_tester
output = ${binary-wrap-performance-tester:binary-path}
parameters-extra = $*
command-line = ${binary-wrap-performance-tester:binary-path}
return = url
[scalability-launcher-instance] [scalability-launcher-instance]
recipe = slapos.cookbook:scalability recipe = slapos.cookbook:scalability
configuration-file = ${rootdirectory:etc}/scalability_runner.conf configuration-file = ${rootdirectory:etc}/scalability_runner.conf
wrapper = ${basedirectory:services}/scalability_runner wrapper = ${basedirectory:services}/scalability_runner
exec-path = ${binary-wrap-launcher:wrapper-path}
erp5-url = ${binary-wrap-launcher:erp5-url} erp5-url = ${binary-wrap-launcher:erp5-url}
test-result-path = {{ slapparameter_dict.get('test-result-path') }} test-result-path = {{ slapparameter_dict.get('test-result-path') }}
revision = {{ slapparameter_dict.get('revision') }} revision = {{ slapparameter_dict.get('revision') }}
......
...@@ -248,7 +248,11 @@ extensions = jinja2.ext.do ...@@ -248,7 +248,11 @@ extensions = jinja2.ext.do
bin_directory = {{ bin_directory }} bin_directory = {{ bin_directory }}
extra-context = extra-context =
key bin_directory dynamic-template-scalability:bin_directory key bin_directory dynamic-template-scalability:bin_directory
key curl_location template-erp5-single-parameters:curl
key dash_location template-erp5-single-parameters:dash
key local_bt5_repository dynamic-template-cluster-erp5-parameters:local-bt5-repository key local_bt5_repository dynamic-template-cluster-erp5-parameters:local-bt5-repository
key template_cluster_zope dynamic-template-cluster-zope:rendered
key template_erp5_cluster dynamic-template-cluster-erp5:rendered
# Must match the key id in [switch-softwaretype] which uses this section. # Must match the key id in [switch-softwaretype] which uses this section.
raw software_type scalability raw software_type scalability
......
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