Skip to content

Commit

Permalink
Merge pull request #12 from alexdesignworks/issues/2-does-not-start-stop
Browse files Browse the repository at this point in the history
[#2] Fixed selenium daemon not stopping.
  • Loading branch information
arknoll authored Oct 6, 2016
2 parents e3a64f7 + 4f1099c commit cf6e759
Showing 1 changed file with 11 additions and 6 deletions.
17 changes: 11 additions & 6 deletions templates/selenium-init-Debian.j2
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ JAVA_BIN=/usr/bin/java
XVFB_BIN=/usr/bin/xvfb-run

SELENIUM_DIR={{ selenium_install_dir }}/selenium
SELENIUM_PID_FILE="$SELENIUM_DIR/selenium.pid"
SELENIUM_JAR_FILE="$SELENIUM_DIR/selenium-server-standalone-{{ selenium_version }}.jar"
DAEMON_PID_FILE="$SELENIUM_DIR/selenium.pid"
SELENIUM_LOG_FILE="$SELENIUM_DIR/selenium.log"
SELENIUM_DAEMON_OPTS=" -client -jar $SELENIUM_JAR_FILE -log $SELENIUM_LOG_FILE"

Expand All @@ -23,20 +23,25 @@ set -e

case "$1" in
start)
if status_of_proc -p $SELENIUM_PID_FILE "$SELENIUM_JAR_FILE" $SELENIUM_JAR_FILE > /dev/null; then
if status_of_proc -p $DAEMON_PID_FILE "$SELENIUM_JAR_FILE" $SELENIUM_JAR_FILE > /dev/null; then
log_progress_msg "Service already running"
else
log_daemon_msg "Starting Selenium server"
log_progress_msg "selenium"
start-stop-daemon -c $RUN_AS --start --quiet --background --pidfile $SELENIUM_PID_FILE --make-pidfile --exec $XVFB_BIN $JAVA_BIN -- $SELENIUM_DAEMON_OPTS
start-stop-daemon -c $RUN_AS --start --quiet --background --pidfile $DAEMON_PID_FILE --make-pidfile --exec $XVFB_BIN $JAVA_BIN -- $SELENIUM_DAEMON_OPTS
fi
;;

stop)
if status_of_proc -p $SELENIUM_PID_FILE "$SELENIUM_JAR_FILE" $SELENIUM_JAR_FILE > /dev/null; then
if status_of_proc -p $DAEMON_PID_FILE "$SELENIUM_JAR_FILE" $SELENIUM_JAR_FILE > /dev/null; then
log_daemon_msg "Stopping Selenium server"
log_progress_msg "selenium"
start-stop-daemon --stop --pidfile $SELENIUM_PID_FILE
DAEMON_PID=$(cat $DAEMON_PID_FILE)
DAEMON_CHILDREN=$(pstree -l -p $DAEMON_PID |grep "([[:digit:]]*)" -o |tr -d '()')
# Stop daemon itself.
start-stop-daemon --stop --pidfile $DAEMON_PID_FILE
# Stop all child processes.
sudo kill $DAEMON_CHILDREN
else
log_progress_msg "Service not running"
fi
Expand All @@ -49,7 +54,7 @@ case "$1" in
;;

status)
status_of_proc -p $SELENIUM_PID_FILE "$SELENIUM_JAR_FILE" $SELENIUM_JAR_FILE && exit 0 || exit $?
status_of_proc -p $DAEMON_PID_FILE "$SELENIUM_JAR_FILE" $SELENIUM_JAR_FILE && exit 0 || exit $?
;;

*)
Expand Down

0 comments on commit cf6e759

Please sign in to comment.