-
-
Notifications
You must be signed in to change notification settings - Fork 2.5k
/
start-selenium-grid-distributor.sh
executable file
·85 lines (69 loc) · 2.35 KB
/
start-selenium-grid-distributor.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#!/usr/bin/env bash
# set -e: exit asap if a command exits with a non-zero status
set -e
echo "Starting Selenium Grid Distributor..."
if [[ -z "${SE_EVENT_BUS_HOST}" ]]; then
echo "SE_EVENT_BUS_HOST not set, exiting!" 1>&2
exit 1
fi
if [[ -z "${SE_EVENT_BUS_PUBLISH_PORT}" ]]; then
echo "SE_EVENT_BUS_PUBLISH_PORT not set, exiting!" 1>&2
exit 1
fi
if [[ -z "${SE_EVENT_BUS_SUBSCRIBE_PORT}" ]]; then
echo "SE_EVENT_BUS_SUBSCRIBE_PORT not set, exiting!" 1>&2
exit 1
fi
if [[ -z "${SE_SESSIONS_MAP_HOST}" ]]; then
echo "SE_SESSIONS_MAP_HOST not set, exiting!" 1>&2
exit 1
fi
if [[ -z "${SE_SESSIONS_MAP_PORT}" ]]; then
echo "SE_SESSIONS_MAP_PORT not set, exiting!" 1>&2
exit 1
fi
if [[ -z "${SE_SESSION_QUEUE_HOST}" ]]; then
echo "SE_SESSION_QUEUE_HOST not set, exiting!" 1>&2
exit 1
fi
if [[ -z "${SE_SESSION_QUEUE_PORT}" ]]; then
echo "SE_SESSION_QUEUE_PORT not set, exiting!" 1>&2
exit 1
fi
if [ ! -z "$SE_OPTS" ]; then
echo "Appending Selenium options: ${SE_OPTS}"
fi
if [ ! -z "$SE_DISTRIBUTOR_HOST" ]; then
echo "Using SE_DISTRIBUTOR_HOST: ${SE_DISTRIBUTOR_HOST}"
HOST_CONFIG="--host ${SE_DISTRIBUTOR_HOST}"
fi
if [ ! -z "$SE_DISTRIBUTOR_PORT" ]; then
echo "Using SE_DISTRIBUTOR_PORT: ${SE_DISTRIBUTOR_PORT}"
PORT_CONFIG="--port ${SE_DISTRIBUTOR_PORT}"
fi
if [ ! -z "$SE_LOG_LEVEL" ]; then
echo "Appending Selenium options: --log-level ${SE_LOG_LEVEL}"
SE_OPTS="$SE_OPTS --log-level ${SE_LOG_LEVEL}"
fi
EXTRA_LIBS=""
if [ ! -z "$SE_ENABLE_TRACING" ]; then
EXTERNAL_JARS=$(</external_jars/.classpath.txt)
[ -n "$EXTRA_LIBS" ] && [ -n "${EXTERNAL_JARS}" ] && EXTRA_LIBS=${EXTRA_LIBS}:
EXTRA_LIBS="--ext "${EXTRA_LIBS}${EXTERNAL_JARS}
echo "Tracing is enabled"
echo "Classpath will be enriched with these external jars : " ${EXTRA_LIBS}
else
echo "Tracing is disabled"
fi
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
-jar /opt/selenium/selenium-server.jar \
${EXTRA_LIBS} distributor \
--sessions-host "${SE_SESSIONS_MAP_HOST}" --sessions-port "${SE_SESSIONS_MAP_PORT}" \
--sessionqueue-host "${SE_SESSION_QUEUE_HOST}" --sessionqueue-port "${SE_SESSION_QUEUE_PORT}" \
--publish-events tcp://"${SE_EVENT_BUS_HOST}":"${SE_EVENT_BUS_PUBLISH_PORT}" \
--subscribe-events tcp://"${SE_EVENT_BUS_HOST}":"${SE_EVENT_BUS_SUBSCRIBE_PORT}" \
--bind-host ${SE_BIND_HOST} \
--bind-bus false \
${HOST_CONFIG} \
${PORT_CONFIG} \
${SE_OPTS}