Commit 0b392607 authored by Léo-Paul Géneau's avatar Léo-Paul Géneau 👾

software/seleniumserver: add slotQuantity instance parameter

`slotQuantity` set the number of slots by node meaning the maximum number of
session for a node.
parent eb1833a2
...@@ -15,8 +15,8 @@ ...@@ -15,8 +15,8 @@
[template] [template]
filename = instance.cfg.in filename = instance.cfg.in
md5sum = b443da6792bdde1218076a3a1ce50b11 md5sum = 58f6d112c90a23ae39f07a96fa5c8f1c
[template-selenium] [template-selenium]
filename = instance-selenium.cfg.in filename = instance-selenium.cfg.in
md5sum = 9bef75759623a660cfaf4b6f5a48a923 md5sum = 906abd81b5e7f2cf7a72883f5da126fe
\ No newline at end of file
...@@ -3,5 +3,12 @@ ...@@ -3,5 +3,12 @@
"type": "object", "type": "object",
"description": "Parameters to request selenium instance", "description": "Parameters to request selenium instance",
"additionalProperties": false, "additionalProperties": false,
"properties": {} "properties": {
"slotQuantity": {
"title": "Slot quantity",
"description": "Number of slot per selenium node",
"type": "integer",
"default": 3
}
}
} }
{% set parameter_dict = dict(default_parameter_dict, **parameter_dict) -%}
[buildout] [buildout]
parts = parts =
monitor-base monitor-base
...@@ -54,7 +55,7 @@ command-line = ...@@ -54,7 +55,7 @@ command-line =
-host $${:hostname} -host $${:hostname}
-port $${:port} -port $${:port}
-role hub -role hub
-maxSession 20 -maxSession {{ parameter_dict['slotQuantity'] }}
-newSessionWaitTimeout 600000 -newSessionWaitTimeout 600000
--debug --debug
...@@ -99,25 +100,25 @@ hostname = $${slap-configuration:ipv4-random} ...@@ -99,25 +100,25 @@ hostname = $${slap-configuration:ipv4-random}
[selenium-server-node-instance-firefox-102] [selenium-server-node-instance-firefox-102]
<= selenium-server-node-instance <= selenium-server-node-instance
capabilities = browserName=firefox,maxInstances=3,marionette=true,platform=LINUX,version=${firefox-102:version},firefox_binary=${firefox-wrapper-102:location} capabilities = browserName=firefox,maxInstances={{ parameter_dict['slotQuantity'] }},marionette=true,platform=LINUX,version=${firefox-102:version},firefox_binary=${firefox-wrapper-102:location}
java-args = -Dwebdriver.gecko.driver=${geckodriver-0.33.0:location} java-args = -Dwebdriver.gecko.driver=${geckodriver-0.33.0:location}
port = 7779 port = 7779
[selenium-server-node-instance-firefox-115] [selenium-server-node-instance-firefox-115]
<= selenium-server-node-instance <= selenium-server-node-instance
capabilities = browserName=firefox,maxInstances=3,marionette=true,platform=LINUX,version=${firefox-115:version},firefox_binary=${firefox-wrapper-115:location} capabilities = browserName=firefox,maxInstances={{ parameter_dict['slotQuantity'] }},marionette=true,platform=LINUX,version=${firefox-115:version},firefox_binary=${firefox-wrapper-115:location}
java-args = -Dwebdriver.gecko.driver=${geckodriver-0.33.0:location} java-args = -Dwebdriver.gecko.driver=${geckodriver-0.33.0:location}
port = 7780 port = 7780
[selenium-server-node-instance-chromium-91] [selenium-server-node-instance-chromium-91]
<= selenium-server-node-instance <= selenium-server-node-instance
capabilities = browserName=chrome,maxInstances=3,platform=LINUX,version=${chromium-91:version},chrome_binary=${chromium-wrapper-91:location} capabilities = browserName=chrome,maxInstances={{ parameter_dict['slotQuantity'] }},platform=LINUX,version=${chromium-91:version},chrome_binary=${chromium-wrapper-91:location}
java-args = -Dwebdriver.chrome.driver=${chromedriver-wrapper-91:location} java-args = -Dwebdriver.chrome.driver=${chromedriver-wrapper-91:location}
port = 7781 port = 7781
[selenium-server-node-instance-chromium-120] [selenium-server-node-instance-chromium-120]
<= selenium-server-node-instance <= selenium-server-node-instance
capabilities = browserName=chrome,maxInstances=3,platform=LINUX,version=${chromium-120:version},chrome_binary=${chromium-wrapper-120:location} capabilities = browserName=chrome,maxInstances={{ parameter_dict['slotQuantity'] }},platform=LINUX,version=${chromium-120:version},chrome_binary=${chromium-wrapper-120:location}
java-args = -Dwebdriver.chrome.driver=${chromedriver-wrapper-120:location} java-args = -Dwebdriver.chrome.driver=${chromedriver-wrapper-120:location}
port = 7782 port = 7782
...@@ -321,8 +322,8 @@ promise = check_command_execute ...@@ -321,8 +322,8 @@ promise = check_command_execute
name = $${:_buildout_section_name_}.py name = $${:_buildout_section_name_}.py
config-command = config-command =
$${selenium-server-check-nodes-registered:output} $${selenium-server-hub-instance:api-url} $${:expected-node-count} $${selenium-server-check-nodes-registered:output} $${selenium-server-hub-instance:api-url} $${:expected-node-count}
# We have 4 nodes with 3 slots each # We have 4 nodes with slotQuantity slots each
expected-node-count = 12 expected-node-count = {{ 4 * int(parameter_dict['slotQuantity']) }}
[selenium-server-check-nodes-registered] [selenium-server-check-nodes-registered]
recipe = slapos.recipe.template recipe = slapos.recipe.template
......
...@@ -12,7 +12,13 @@ url = ${template-selenium:output} ...@@ -12,7 +12,13 @@ url = ${template-selenium:output}
output = $${buildout:parts-directory}/$${:_buildout_section_name_}/$${:filename} output = $${buildout:parts-directory}/$${:_buildout_section_name_}/$${:filename}
filename = instance-selenium.cfg filename = instance-selenium.cfg
context = context =
jsonkey default_parameter_dict :default-parameters
key parameter_dict slap-configuration:configuration
key partition_ipv6 slap-configuration:ipv6-random key partition_ipv6 slap-configuration:ipv6-random
default-parameters =
{
"slotQuantity": 3
}
[switch-softwaretype] [switch-softwaretype]
recipe = slapos.cookbook:switch-softwaretype recipe = slapos.cookbook:switch-softwaretype
......
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