Commit 184425b3 authored by Eric Zheng's avatar Eric Zheng

software/seleniumserver: add support for headless-chromium SR

This adds the new headless Chromium shell as a browser option. There was
some discussion on the headless-chromium merge request about whether we
want to do this (see
nexedi/slapos!1014 (comment 139023)),
particularly since it slows down the seleniumserver compilation by a
lot.

This commit includes the patches mentioned in that discussion.
parent a271e8a8
...@@ -19,4 +19,4 @@ md5sum = 0084214fae4ee1aad2c878aa393757af ...@@ -19,4 +19,4 @@ md5sum = 0084214fae4ee1aad2c878aa393757af
[template-selenium] [template-selenium]
filename = instance-selenium.cfg.in filename = instance-selenium.cfg.in
md5sum = 884196ea35de35fa9159517912441ce6 md5sum = 3bd82740a08fd9c0187390716b8fbb43
...@@ -133,6 +133,12 @@ capabilities = browserName=chrome,maxInstances=3,platform=LINUX,version=${chromi ...@@ -133,6 +133,12 @@ capabilities = browserName=chrome,maxInstances=3,platform=LINUX,version=${chromi
java-args = -Dwebdriver.chrome.driver=${chromedriver-wrapper-91:location} java-args = -Dwebdriver.chrome.driver=${chromedriver-wrapper-91:location}
port = 7782 port = 7782
[selenium-server-node-instance-headless-chromium]
<= selenium-server-node-instance
capabilities = browserName=chrome,maxInstances=3,platform=LINUX,version=${chromium-source:version},chrome_binary=${headless-chromium-wrapper:rendered}
java-args = -Dwebdriver.chrome.driver=${headless-chromium:chromedriver}
port = 7783
[selenium-server-admin-password] [selenium-server-admin-password]
recipe = slapos.cookbook:generate.password recipe = slapos.cookbook:generate.password
...@@ -279,6 +285,7 @@ instance-promises = ...@@ -279,6 +285,7 @@ instance-promises =
$${selenium-server-node-firefox-78-listen-promise:name} $${selenium-server-node-firefox-78-listen-promise:name}
$${selenium-server-node-instance-chromium-69-listen-promise:name} $${selenium-server-node-instance-chromium-69-listen-promise:name}
$${selenium-server-node-instance-chromium-91-listen-promise:name} $${selenium-server-node-instance-chromium-91-listen-promise:name}
$${selenium-server-node-instance-headless-chromium-listen-promise:name}
[check-port-listening-promise] [check-port-listening-promise]
...@@ -308,8 +315,8 @@ module = check_command_execute ...@@ -308,8 +315,8 @@ module = check_command_execute
name = $${:_buildout_section_name_}.py name = $${:_buildout_section_name_}.py
config-command = config-command =
$${selenium-server-check-nodes-registered:rendered} $${selenium-server-hub-instance:api-url} $${:expected-node-count} $${selenium-server-check-nodes-registered:rendered} $${selenium-server-hub-instance:api-url} $${:expected-node-count}
# We have 6 nodes with 3 slots each # We have 7 nodes with 3 slots each
expected-node-count = 18 expected-node-count = 21
[selenium-server-check-nodes-registered] [selenium-server-check-nodes-registered]
recipe = slapos.recipe.template:jinja2 recipe = slapos.recipe.template:jinja2
...@@ -355,6 +362,11 @@ config-port = $${selenium-server-node-instance-chromium-69:port} ...@@ -355,6 +362,11 @@ config-port = $${selenium-server-node-instance-chromium-69:port}
config-host = $${selenium-server-node-instance-chromium-91:hostname} config-host = $${selenium-server-node-instance-chromium-91:hostname}
config-port = $${selenium-server-node-instance-chromium-91:port} config-port = $${selenium-server-node-instance-chromium-91:port}
[selenium-server-node-instance-headless-chromium-listen-promise]
<= check-port-listening-promise
config-host = $${selenium-server-node-instance-headless-chromium:hostname}
config-port = $${selenium-server-node-instance-headless-chromium:port}
[publish-connection-parameter] [publish-connection-parameter]
recipe = slapos.cookbook:publish recipe = slapos.cookbook:publish
......
...@@ -8,6 +8,7 @@ extends = ...@@ -8,6 +8,7 @@ extends =
../../component/firefox/buildout.cfg ../../component/firefox/buildout.cfg
../../component/chromium/buildout.cfg ../../component/chromium/buildout.cfg
../../component/chromedriver/buildout.cfg ../../component/chromedriver/buildout.cfg
../../component/headless-chromium/buildout.cfg
../../component/coreutils/buildout.cfg ../../component/coreutils/buildout.cfg
../../component/java/buildout.cfg ../../component/java/buildout.cfg
../../component/caddy/buildout.cfg ../../component/caddy/buildout.cfg
......
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