Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
slapos
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
5
Merge Requests
5
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jérome Perrin
slapos
Commits
11e4364d
Commit
11e4364d
authored
Sep 07, 2018
by
Jérome Perrin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
selenium server
parent
6783166a
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
40 additions
and
34 deletions
+40
-34
software/seleniumrunner/buildout.hash.cfg
software/seleniumrunner/buildout.hash.cfg
+1
-1
software/seleniumrunner/instance-selenium.cfg.in
software/seleniumrunner/instance-selenium.cfg.in
+35
-33
software/seleniumrunner/software.cfg
software/seleniumrunner/software.cfg
+4
-0
No files found.
software/seleniumrunner/buildout.hash.cfg
View file @
11e4364d
...
...
@@ -19,4 +19,4 @@ md5sum = c4ac5de141ae6a64848309af03e51d88
[template-selenium]
filename = instance-selenium.cfg.in
md5sum =
7a96160536fd41b26d06faf655a11451
md5sum =
077df90cb0fdc6079b4ed81b326061aa
software/seleniumrunner/instance-selenium.cfg.in
View file @
11e4364d
...
...
@@ -7,17 +7,24 @@ eggs-directory = ${buildout:eggs-directory}
develop-eggs-directory = ${buildout:develop-eggs-directory}
offline = true
[fontconfig-instance]
recipe = slapos.cookbook:fontconfig
conf-path = $${directory:etc}/font.conf
font-system-folder = ${fonts:location}
font-folder = $${directory:fonts}
service-folder = $${directory:services}
[xvfb-instance]
recipe = slapos.cookbook:wrapper
wrapper-path = $${
base
directory:services}/$${:_buildout_section_name_}
wrapper-path = $${directory:services}/$${:_buildout_section_name_}
command-line =
${xserver:location}/bin/Xvfb
$${:display}
-screen 0 1024x768x24
-fbdir $${
base
directory:framebuffer}
-fbdir $${directory:framebuffer}
environment=
TMPDIR=$${
base
directory:tmp}
TMPDIR=$${directory:tmp}
# We can safely use any $DISPLAY, because our slapos patched X11 isolate $DISPLAYs
# by placing sockets in $TMPDIR and using different $TMPDIR per partitions.
display = :0
...
...
@@ -25,7 +32,7 @@ display = :0
[selenium-server-hub-instance]
recipe = slapos.cookbook:wrapper
wrapper-path = $${
base
directory:services}/$${:_buildout_section_name_}
wrapper-path = $${directory:services}/$${:_buildout_section_name_}
command-line =
${java-re-8:location}/bin/java
-jar ${selenium-server:target}
...
...
@@ -49,7 +56,7 @@ port =
java-args =
recipe = slapos.cookbook:wrapper
wrapper-path = $${
base
directory:services}/$${:_buildout_section_name_}
wrapper-path = $${directory:services}/$${:_buildout_section_name_}
# TODO: option for maxSession ?
command-line =
${java-re-8:location}/bin/java $${:java-args}
...
...
@@ -66,8 +73,9 @@ command-line =
# browsers and drivers are in buildout bin-directory, so we add it to $PATH
environment =
PATH=${buildout:bin-directory}
TMPDIR=$${
base
directory:tmp}
TMPDIR=$${directory:tmp}
DISPLAY=$${xvfb-instance:display}
FONTCONFIG_FILE=$${fontconfig-instance:conf-path}
hostname = $${instance-parameter:ipv4-random}
...
...
@@ -89,37 +97,34 @@ capabilities = browserName=firefox,maxInstances=3,marionette=true,platform=LINUX
java-args = -Dwebdriver.gecko.driver=${geckodriver-0.21.0:location}
port = 7779
[selenium-server-node-instance-chromium-6
7
]
[selenium-server-node-instance-chromium-6
8
]
<= selenium-server-node-instance
capabilities = browserName=chrome,maxInstances=3,platform=LINUX,version=${chromium-6
7:version},chrome_binary=${chromium-wrapper-67
:location}/chrome-slapos
java-args = -Dwebdriver.chrome.driver=${chromedriver-2.41:location}
capabilities = browserName=chrome,maxInstances=3,platform=LINUX,version=${chromium-6
8:version},chrome_binary=${chromium-wrapper-68
:location}/chrome-slapos
java-args = -Dwebdriver.chrome.driver=${chromedriver-
wrapper-
2.41:location}
port = 7780
[promises]
recipe =
# XXX only enable 51 & 52. They work only one time. We configure maxInstances=3 so practically
# this server can serve 6 session. Then it will loop forever, with the hub logging:
# 09:44:46.820 DEBUG [ProxySet.getNewSession] - Available nodes: [http://127.0.1.1:7777, http://127.0.1.1:7778]
# 09:44:46.821 DEBUG [BaseRemoteProxy.getNewSession] - Trying to create a new session on node http://127.0.1.1:7777
# 09:44:46.821 DEBUG [BaseRemoteProxy.getNewSession] - Node http://127.0.1.1:7777 has no matching capability
# 09:44:46.821 DEBUG [BaseRemoteProxy.getNewSession] - Trying to create a new session on node http://127.0.1.1:7778
# XXX 60 does not work at all.
instance-promises =
$${selenium-server-hub-listen-promise:path}
$${selenium-server-node-firefox-51-listen-promise:path}
$${selenium-server-node-firefox-52-listen-promise:path}
$${selenium-server-node-instance-chromium-67-listen-promise:path}
#XXX firefox-60 does not work at all
$${selenium-server-node-instance-chromium-68-listen-promise:path}
# $${selenium-server-node-firefox-60-listen-promise:path}
# $${selenium-server-node-firefox-51-listen-promise:path}
# XXX firefox-60 does not work because of incompatibilities with our x11 TMPDIR patch.
# running firefox --marionette complains Gtk-WARNING **: cannot open display: :0
# running strace -f -s 100 TMPDIR=/same/tmpdir/as/xvfb/ firefox --marionette
# shows that some subprocesses are spawned with different TMPDIR.
##### connect(15, {sa_family=AF_UNIX, sun_path=@"/srv/slapgrid/slappart8/tmp/inst/TestRemoteDriver-0/tmp/Temp-0336e727-3485-4774-a816-75fda1baca12/.X11-unix"}, 113) = -1 EINVAL (Invalid argument)
##### write(2, "\n(/srv/slapgrid/slappart8/tmp/soft/c5be5b0096cd286c70df5156590cf4f6/parts/firefox-60/firefox:29812): Gtk-\33[1;33mWARNING\33[0m **: cannot open display: :0\n", 152) = 152
[check-port-listening-promise]
recipe = slapos.cookbook:check_port_listening
path = $${
base
directory:promises}/$${:_buildout_section_name_}
path = $${directory:promises}/$${:_buildout_section_name_}
[selenium-server-hub-listen-promise]
<= check-port-listening-promise
...
...
@@ -141,10 +146,10 @@ port = $${selenium-server-node-instance-firefox-52:port}
hostname= $${selenium-server-node-instance-firefox-60:hostname}
port = $${selenium-server-node-instance-firefox-60:port}
[selenium-server-node-instance-chromium-6
7
-listen-promise]
[selenium-server-node-instance-chromium-6
8
-listen-promise]
<= check-port-listening-promise
hostname= $${selenium-server-node-instance-chromium-6
7
:hostname}
port = $${selenium-server-node-instance-chromium-6
7
:port}
hostname= $${selenium-server-node-instance-chromium-6
8
:hostname}
port = $${selenium-server-node-instance-chromium-6
8
:port}
[publish-connection-parameter]
...
...
@@ -159,18 +164,15 @@ url = $${slap-connection:server-url}
key = $${slap-connection:key-file}
cert = $${slap-connection:cert-file}
[
root
directory]
[directory]
recipe = slapos.cookbook:mkdirectory
etc = $${buildout:directory}/etc
var = $${buildout:directory}/var
srv = $${buildout:directory}/srv
bin = $${buildout:directory}/bin
[basedirectory]
recipe = slapos.cookbook:mkdirectory
services = $${rootdirectory:etc}/service
run = $${rootdirectory:var}/run
tmp = $${buildout:directory}/tmp
framebuffer = $${rootdirectory:srv}/framebuffer
promises = $${rootdirectory:etc}/promise
services = $${:etc}/service
promises = $${:etc}/promise
framebuffer = $${:srv}/framebuffer
fonts = $${:srv}/fonts/
software/seleniumrunner/software.cfg
View file @
11e4364d
# Selenium server
# https://seleniumhq.github.io/docs/grid.html
[buildout]
extends =
../../component/xorg/buildout.cfg
../../component/lxml-python/buildout.cfg
../../component/firefox/buildout.cfg
../../component/chromium/buildout.cfg
../../component/dash/buildout.cfg
../../component/java/buildout.cfg
../../stack/slapos.cfg
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment