Skip to content
This repository was archived by the owner on Jun 30, 2021. It is now read-only.

Commit c167bc9

Browse files
committed
Add screen resolution aliases as capabilities for Zalenium
1 parent 6bf62d9 commit c167bc9

File tree

8 files changed

+65
-18
lines changed

8 files changed

+65
-18
lines changed

.travis.yml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,16 +31,6 @@ matrix:
3131
DOCKER_COMPOSE_VERSION="1.11.2"
3232
DOCKER_PUSH=true
3333
DOCKER_PUSH_LATEST=true
34-
# Linux with docker:stable compose:beta/older
35-
- os: linux
36-
language: generic
37-
sudo: required
38-
dist: trusty
39-
services:
40-
- docker
41-
env:
42-
- DOCKER_VERSION="stable"
43-
DOCKER_COMPOSE_VERSION="1.11.1"
4434

4535
before_install:
4636
- travis_retry ./test/before_install_setup

CHANGELOG.md

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,44 @@ Note image ids also change after scm-source.json has being updated which trigger
77
###### To get container versions
88
docker exec grid versions
99

10+
## TBD_DOCKER_TAG
11+
+ **Changes:** https://github.com/elgalu/docker-selenium/compare/TBD_PREV_COMM...TBD_CUR_COMM (TBD_DATE)
12+
+ Add screen resolution aliases as capabilities for Zalenium
13+
screenResolution
14+
resolution
15+
screen-resolution
16+
17+
e.g.
18+
12:50:55.546 INFO - Adding browserName=chrome,maxInstances=1,platform=LINUX,acceptSslCerts=true,screenResolution=1900x1880,resolution=1900x1880,screen-resolution=1900x1880,version=57.0.2987.110 ,chrome_binary=/usr/bin/google-chrome-stable
19+
20+
12:50:55.543 INFO - Adding browserName=firefox,maxInstances=1,platform=LINUX,acceptSslCerts=true,screenResolution=1900x1880,resolution=1900x1880,screen-resolution=1900x1880,version=47.0.1,firefox_binary=/home/seluser/firefox-for-sel-2/firefox
21+
22+
+ Remove docker:stable compose:beta/older TravisCI test as is not providing any value
23+
+ Bump Supervisor up to 2017-03-07 commit: 23925d017f8ecc
24+
+ **Image tag details:**
25+
+ Selenium 2: TBD_SELENIUM_2_VERSION (TBD_SELENIUM_2_REVISION)
26+
+ Selenium 3: 3.2.0 (8c03df6)
27+
+ Chrome stable: TBD_CHROME_STABLE
28+
+ Firefox for Selenium 2: TBD_FIREFOX_FOR_SEL2
29+
+ Firefox for Selenium 3: TBD_FIREFOX_FOR_SEL3
30+
+ Geckodriver: TBD_GECKO_DRIVER
31+
+ Chromedriver: TBD_CHROME_DRIVER (TBD_CHROMEDRIVER_COMMIT)
32+
+ Java: TBD_JAVA_VENDOR Java TBD_JAVA_BUILD
33+
+ Timezone: TBD_TIME_ZONE
34+
+ FROM ubuntu:UBUNTU_FLAVOR-UBUNTU_DATE
35+
+ Python: TBD_PYTHON_VERSION
36+
+ Tested on kernel dev host: 4.4.0-66-generic x86_64
37+
+ Tested on kernel CI host: TBD_HOST_UNAME
38+
+ Built at dev host with: Docker version 17.03.0-ce, build 60ccb22
39+
+ Built at CI host with: Docker version TBD_DOCKER_VERS, build TBD_DOCKER_BUILD
40+
+ Built at dev host with: Docker Compose version 1.11.2, build dfed245
41+
+ Built at CI host with: Docker Compose version TBD_DOCKER_COMPOSE_VERS, build TBD_DOCKER_COMPOSE_BUILD
42+
+ Image size: TBD_IMAGE_SIZE
43+
+ Digest: TBD_DIGEST
44+
+ Image ID: TBD_IMAGE_ID
45+
1046
## 3.2.0-p1
11-
+ **Changes:** https://github.com/elgalu/docker-selenium/compare/TBD_PREV_COMM...TBD_CUR_COMM (2017-03-20)
47+
+ **Changes:** https://github.com/elgalu/docker-selenium/compare/b87af04d2d7f767c65d666d...6bf62d977c15c77084e3b2b (2017-03-20)
1248
+ Upgrade Chrome patch to 57.0.2987.110
1349
+ Add Dockerfile `LABEL selenium_version`
1450
+ **Image tag details:**

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ For pull requests or local commits:
1212

1313
For repository owners only:
1414

15-
git commit -m "Upgrade Chrome patch to 57.0.2987.110"
15+
git commit -m "Add screen resolution aliases as capabilities for Zalenium"
1616
git tag -d latest && git tag `cat VERSION` && git push origin tmp-`cat VERSION` && git push --tags
1717

1818
-- Wait for Travis to pass OK

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -307,11 +307,11 @@ RUN apt-get -qqy update \
307307
# RUN apt-get -qqy update \
308308
# && apt-get -qqy install \
309309
# supervisor \
310+
# 2017-03-07 commit: 23925d017f8ecc, supervisor/version.txt: 4.0.0.dev0
310311
# 2017-01-05 commit: 8be5bc15e83f0f, supervisor/version.txt: 4.0.0.dev0
311312
# 2016-11-05 commit: cbebb93f58f4a9, supervisor/version.txt: 4.0.0.dev0
312-
# 2016-10-09 commit: 427eb2bc6b08f7, supervisor/version.txt: 4.0.0.dev0
313313
ENV RUN_DIR="/var/run/sele"
314-
RUN SHA="8be5bc15e83f0f261fa50ef28de814dd14f7c25e" \
314+
RUN SHA="23925d017f8eccafb1be57c509a07df75490c83d" \
315315
&& pip install --upgrade \
316316
"https://github.com/Supervisor/supervisor/zipball/${SHA}" \
317317
&& rm -rf /var/lib/apt/lists/*

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.2.0-p1
1+
3.2.0-p2

bin/entry.sh

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,15 +74,30 @@ export DOCKER_SELENIUM_STATUS="${LOGS_DIR}/docker-selenium-status.log"
7474
export VNC_TRYOUT_ERR_LOG="${LOGS_DIR}/vnc-tryouts-stderr"
7575
export VNC_TRYOUT_OUT_LOG="${LOGS_DIR}/vnc-tryouts-stdout"
7676
touch ${DOCKER_SELENIUM_STATUS}
77+
7778
# We recalculate screen dimensions because docker run supports changing them
7879
export SCREEN_DEPTH="${SCREEN_MAIN_DEPTH}+${SCREEN_SUB_DEPTH}"
7980
export GEOMETRY="${SCREEN_WIDTH}""x""${SCREEN_HEIGHT}""x""${SCREEN_DEPTH}"
81+
8082
# These values are only available when the container started
8183
export DOCKER_HOST_IP=$(netstat -nr | grep '^0\.0\.0\.0' | awk '{print $2}')
8284
export CONTAINER_IP=$(ip addr show dev ${ETHERNET_DEVICE_NAME} | grep "inet " | awk '{print $2}' | cut -d '/' -f 1)
83-
export COMMON_CAPS="maxInstances=${MAX_INSTANCES},platform=LINUX,acceptSslCerts=true"
85+
86+
# Common capabilities for both nodes (Chrome/Firefox)
87+
export COMMON_CAPS="maxInstances=${MAX_INSTANCES}"
88+
export COMMON_CAPS="${COMMON_CAPS},platform=LINUX"
89+
export COMMON_CAPS="${COMMON_CAPS},acceptSslCerts=true"
90+
# https://wiki.saucelabs.com/display/DOCS/Test+Configuration+Options#TestConfigurationOptions-SpecifyingtheScreenResolution
91+
export COMMON_CAPS="${COMMON_CAPS},screenResolution=${SCREEN_WIDTH}x${SCREEN_HEIGHT}"
92+
# https://www.browserstack.com/automate/capabilities
93+
export COMMON_CAPS="${COMMON_CAPS},resolution=${SCREEN_WIDTH}x${SCREEN_HEIGHT}"
94+
# https://testingbot.com/support/other/test-options#screenresolution
95+
export COMMON_CAPS="${COMMON_CAPS},screen-resolution=${SCREEN_WIDTH}x${SCREEN_HEIGHT}"
96+
97+
# CHROME_FLAVOR would allow to have separate installations for stable, beta, unstable
8498
export CHROME_PATH="/usr/bin/google-chrome-${CHROME_FLAVOR}"
8599
export CHROME_VERSION=$(${CHROME_PATH} --version 2>&1 | grep "Google Chrome" | grep -iEo "[0-9.]{2,20}.*")
100+
86101
# Video
87102
export FFMPEG_FRAME_SIZE="${SCREEN_WIDTH}x${SCREEN_HEIGHT}"
88103

selenium-node-chrome/bin/start-selenium-node-chrome.sh

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,10 @@ echo "INFO: JAVA_OPTS are '${JAVA_OPTS}'"
3434
# https://github.com/pilwon/selenium-webdriver/blob/master/java/server/src/org/openqa/grid/common/defaults/GridParameters.properties
3535
# See node defaults at
3636
# https://github.com/pilwon/selenium-webdriver/blob/master/java/server/src/org/openqa/grid/common/defaults/DefaultNode.json
37-
CHROME_BROWSER_CAPS="browserName=chrome,${COMMON_CAPS},version=${CHROME_VERSION},chrome_binary=${CHROME_PATH}"
37+
CHROME_BROWSER_CAPS="browserName=chrome,${COMMON_CAPS}"
38+
CHROME_BROWSER_CAPS="${CHROME_BROWSER_CAPS},version=${CHROME_VERSION}"
39+
CHROME_BROWSER_CAPS="${CHROME_BROWSER_CAPS},chrome_binary=${CHROME_PATH}"
40+
3841
java \
3942
-Dwebdriver.chrome.driver="/home/seluser/chromedriver" \
4043
-Dwebdriver.chrome.logfile="${LOGS_DIR}/chromedriver.log" \

selenium-node-firefox/bin/start-selenium-node-firefox.sh

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,10 @@ echo "INFO: JAVA_OPTS are '${JAVA_OPTS}'"
3939
# See node defaults at
4040
# https://github.com/pilwon/selenium-webdriver/blob/master/java/server/src/org/openqa/grid/common/defaults/DefaultNode.json
4141
# TODO: how to set default firefox to latest?
42-
export FIREFOX_BROWSER_CAPS="browserName=firefox,${COMMON_CAPS},version=${FIREFOX_VERSION},firefox_binary=${FIREFOX_DEST_BIN}"
42+
FIREFOX_BROWSER_CAPS="browserName=firefox,${COMMON_CAPS}"
43+
FIREFOX_BROWSER_CAPS="${FIREFOX_BROWSER_CAPS},version=${FIREFOX_VERSION}"
44+
FIREFOX_BROWSER_CAPS="${FIREFOX_BROWSER_CAPS},firefox_binary=${FIREFOX_DEST_BIN}"
45+
4346
java \
4447
${JAVA_OPTS} \
4548
-jar ${SELENIUM_JAR_PATH} \

0 commit comments

Comments
 (0)