From b8f561127a2ba09f3c2e49194d8d63b6960023b2 Mon Sep 17 00:00:00 2001 From: Corentin LABBE Date: Mon, 16 Jul 2018 14:26:44 +0200 Subject: Split dockerfile in two images The process of building LAVA is hard to maintain. But since we need to be able to go back in time (or just stay longer with a specific version) we need a way to keep a LAVA version. For achieving this, we build a minimal image with just LAVA and tag it with the version of LAVA inside. --- lava-master/scripts/lava-logs | 97 ------------------------------- lava-master/scripts/lava-master | 97 ------------------------------- lava-master/scripts/lava-server-gunicorn | 99 -------------------------------- lava-master/scripts/lava-slave | 98 ------------------------------- lava-master/scripts/start.sh | 40 ------------- lava-master/scripts/stop.sh | 10 ---- 6 files changed, 441 deletions(-) delete mode 100644 lava-master/scripts/lava-logs delete mode 100644 lava-master/scripts/lava-master delete mode 100644 lava-master/scripts/lava-server-gunicorn delete mode 100644 lava-master/scripts/lava-slave delete mode 100755 lava-master/scripts/start.sh delete mode 100755 lava-master/scripts/stop.sh (limited to 'lava-master/scripts') diff --git a/lava-master/scripts/lava-logs b/lava-master/scripts/lava-logs deleted file mode 100644 index 69b2f82..0000000 --- a/lava-master/scripts/lava-logs +++ /dev/null @@ -1,97 +0,0 @@ -#! /bin/sh -### BEGIN INIT INFO -# Provides: lava-logs -# Required-Start: $time -# Required-Stop: $time -# X-Stop-After: sendsigs -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: lava-logs -# Description: lava-logs -### END INIT INFO - -# -# Author: Corentin LABBE -# - -# PATH should only include /usr/* if it runs after the mountnfs.sh script -PATH=/sbin:/usr/sbin:/bin:/usr/bin -DESC="lava-logs" -NAME=lava-logs -LOGLEVEL=DEBUG - -DAEMON=/usr/bin/lava-server -PIDFILE=/var/run/$NAME.pid -SCRIPTNAME=/etc/init.d/$NAME - -# Exit if the package is not installed -[ -x "$DAEMON" ] || exit 0 - -# Read configuration variable file if it is present -[ -r /etc/default/$NAME ] && . /etc/default/$NAME - -[ -r /etc/lava-server/$NAME ] && . /etc/lava-server/$NAME - -# Define LSB log_* functions. -. /lib/lsb/init-functions - -do_start() -{ - # Return - # 0 if daemon has been started - # 1 if daemon was already running - # other if daemon could not be started or a failure occured - start-stop-daemon --start --quiet --background --pidfile $PIDFILE --exec $DAEMON -- manage lava-logs --level $LOGLEVEL $SOCKET $MASTER_SOCKET $IPV6 $ENCRYPT $MASTER_CERT $SLAVES_CERTS -} - -do_stop() -{ - # Return - # 0 if daemon has been stopped - # 1 if daemon was already stopped - # other if daemon could not be stopped or a failure occurred - start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --exec $DAEMON -} - -case "$1" in - start) - log_daemon_msg "Starting $DESC" "$NAME" - do_start - case "$?" in - 0) - log_end_msg 0 ;; - 1) log_progress_msg "already started" - log_end_msg 0 ;; - *) log_end_msg 1 ;; - esac - - ;; - stop) - log_daemon_msg "Stopping $DESC" "$NAME" - do_stop - case "$?" in - 0) log_end_msg 0 ;; - 1) log_progress_msg "already stopped" - log_end_msg 0 ;; - *) log_end_msg 1 ;; - esac - - ;; - restart|force-reload) - $0 stop - $0 start - ;; - try-restart) - $0 status >/dev/null 2>&1 && $0 restart - ;; - status) - status_of_proc -p $PIDFILE $DAEMON $RSYSLOGD && exit 0 || exit $? - ;; - *) - echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|try-restart|status}" >&2 - exit 3 - ;; -esac - -: - diff --git a/lava-master/scripts/lava-master b/lava-master/scripts/lava-master deleted file mode 100644 index 3bd75aa..0000000 --- a/lava-master/scripts/lava-master +++ /dev/null @@ -1,97 +0,0 @@ -#! /bin/sh -### BEGIN INIT INFO -# Provides: lava-master -# Required-Start: $time -# Required-Stop: $time -# X-Stop-After: sendsigs -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: lava-master -# Description: lava-master -### END INIT INFO - -# -# Author: Corentin LABBE -# - -# PATH should only include /usr/* if it runs after the mountnfs.sh script -PATH=/sbin:/usr/sbin:/bin:/usr/bin -DESC="lava-master" -NAME=lava-master -LOGLEVEL=DEBUG - -DAEMON=/usr/bin/lava-server -PIDFILE=/var/run/$NAME.pid -SCRIPTNAME=/etc/init.d/$NAME - -# Exit if the package is not installed -[ -x "$DAEMON" ] || exit 0 - -# Read configuration variable file if it is present -[ -r /etc/default/$NAME ] && . /etc/default/$NAME - -[ -r /etc/lava-server/$NAME ] && . /etc/lava-server/$NAME - -# Define LSB log_* functions. -. /lib/lsb/init-functions - -do_start() -{ - # Return - # 0 if daemon has been started - # 1 if daemon was already running - # other if daemon could not be started or a failure occured - start-stop-daemon --start --quiet --background --pidfile $PIDFILE --exec $DAEMON -- manage lava-master --level $LOGLEVEL $SOCKET $MASTER_SOCKET $IPV6 $ENCRYPT $MASTER_CERT $SLAVES_CERTS -} - -do_stop() -{ - # Return - # 0 if daemon has been stopped - # 1 if daemon was already stopped - # other if daemon could not be stopped or a failure occurred - start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --exec $DAEMON -} - -case "$1" in - start) - log_daemon_msg "Starting $DESC" "$NAME" - do_start - case "$?" in - 0) - log_end_msg 0 ;; - 1) log_progress_msg "already started" - log_end_msg 0 ;; - *) log_end_msg 1 ;; - esac - - ;; - stop) - log_daemon_msg "Stopping $DESC" "$NAME" - do_stop - case "$?" in - 0) log_end_msg 0 ;; - 1) log_progress_msg "already stopped" - log_end_msg 0 ;; - *) log_end_msg 1 ;; - esac - - ;; - restart|force-reload) - $0 stop - $0 start - ;; - try-restart) - $0 status >/dev/null 2>&1 && $0 restart - ;; - status) - status_of_proc -p $PIDFILE $DAEMON $RSYSLOGD && exit 0 || exit $? - ;; - *) - echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|try-restart|status}" >&2 - exit 3 - ;; -esac - -: - diff --git a/lava-master/scripts/lava-server-gunicorn b/lava-master/scripts/lava-server-gunicorn deleted file mode 100644 index 217ad57..0000000 --- a/lava-master/scripts/lava-server-gunicorn +++ /dev/null @@ -1,99 +0,0 @@ -#! /bin/sh -### BEGIN INIT INFO -# Provides: lava-server-gunicorn -# Required-Start: $time -# Required-Stop: $time -# X-Stop-After: sendsigs -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: lava-server-gunicorn -# Description: lava-server-gunicorn -### END INIT INFO - -# -# Author: Corentin LABBE -# - -# PATH should only include /usr/* if it runs after the mountnfs.sh script -PATH=/sbin:/usr/sbin:/bin:/usr/bin -DESC="lava-server-gunicorn" -NAME=lava-server-gunicorn -LOGLEVEL=DEBUG -WORKERS=4 -LOGFILE=/var/log/lava-server/gunicorn.log -RELOAD= -DAEMON=/usr/bin/gunicorn3 -PIDFILE=/var/run/$NAME.pid -SCRIPTNAME=/etc/init.d/$NAME - -# Exit if the package is not installed -[ -x "$DAEMON" ] || exit 0 - -# Read configuration variable file if it is present -[ -r /etc/default/$NAME ] && . /etc/default/$NAME - -[ -r /etc/lava-server/$NAME ] && . /etc/lava-server/$NAME - -# Define LSB log_* functions. -. /lib/lsb/init-functions - -do_start() -{ - # Return - # 0 if daemon has been started - # 1 if daemon was already running - # other if daemon could not be started or a failure occured - start-stop-daemon --start --quiet --background --pidfile $PIDFILE --exec $DAEMON -- lava_server.wsgi --log-level $LOGLEVEL --log-file $LOGFILE -u lavaserver -g lavaserver --workers $WORKERS $RELOAD -} - -do_stop() -{ - # Return - # 0 if daemon has been stopped - # 1 if daemon was already stopped - # other if daemon could not be stopped or a failure occurred - start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --exec $DAEMON -} - -case "$1" in - start) - log_daemon_msg "Starting $DESC" "$NAME" - do_start - case "$?" in - 0) - log_end_msg 0 ;; - 1) log_progress_msg "already started" - log_end_msg 0 ;; - *) log_end_msg 1 ;; - esac - - ;; - stop) - log_daemon_msg "Stopping $DESC" "$NAME" - do_stop - case "$?" in - 0) log_end_msg 0 ;; - 1) log_progress_msg "already stopped" - log_end_msg 0 ;; - *) log_end_msg 1 ;; - esac - - ;; - restart|force-reload) - $0 stop - $0 start - ;; - try-restart) - $0 status >/dev/null 2>&1 && $0 restart - ;; - status) - status_of_proc -p $PIDFILE $DAEMON $RSYSLOGD && exit 0 || exit $? - ;; - *) - echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|try-restart|status}" >&2 - exit 3 - ;; -esac - -: - diff --git a/lava-master/scripts/lava-slave b/lava-master/scripts/lava-slave deleted file mode 100644 index 3ba00f7..0000000 --- a/lava-master/scripts/lava-slave +++ /dev/null @@ -1,98 +0,0 @@ -#! /bin/sh -### BEGIN INIT INFO -# Provides: lava-slave -# Required-Start: $time -# Required-Stop: $time -# X-Stop-After: sendsigs -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: lava-slave -# Description: lava-slave -### END INIT INFO - -# -# Author: Corentin LABBE -# - -# PATH should only include /usr/* if it runs after the mountnfs.sh script -PATH=/sbin:/usr/sbin:/bin:/usr/bin -DESC="lava-slave" -NAME=lava-slave - -DAEMON=/usr/bin/lava-slave -PIDFILE=/var/run/$NAME.pid -SCRIPTNAME=/etc/init.d/$NAME -MASTER_URL=tcp://localhost:5556 -LOGGER_URL=tcp://localhost:5555 -LOGLEVEL=DEBUG - -# Exit if the package is not installed -[ -x "$DAEMON" ] || exit 0 - -# Read configuration variable file if it is present -[ -r /etc/default/$NAME ] && . /etc/default/$NAME -[ -r /etc/lava-dispatcher/$NAME ] && . /etc/lava-dispatcher/$NAME - -# Define LSB log_* functions. -. /lib/lsb/init-functions - -do_start() -{ - # Return - # 0 if daemon has been started - # 1 if daemon was already running - # other if daemon could not be started or a failure occured - start-stop-daemon --start --quiet --background --pidfile $PIDFILE --exec $DAEMON -- --level $LOGLEVEL --master $MASTER_URL --socket-addr $LOGGER_URL $IPV6 $ENCRYPT $MASTER_CERT $SLAVE_CERT $HOSTNAME -} - -do_stop() -{ - # Return - # 0 if daemon has been stopped - # 1 if daemon was already stopped - # other if daemon could not be stopped or a failure occurred - start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --exec $DAEMON -} - -case "$1" in - start) - log_daemon_msg "Starting $DESC" "$NAME" - do_start - case "$?" in - 0) - log_end_msg 0 ;; - 1) log_progress_msg "already started" - log_end_msg 0 ;; - *) log_end_msg 1 ;; - esac - - ;; - stop) - log_daemon_msg "Stopping $DESC" "$NAME" - do_stop - case "$?" in - 0) log_end_msg 0 ;; - 1) log_progress_msg "already stopped" - log_end_msg 0 ;; - *) log_end_msg 1 ;; - esac - - ;; - restart|force-reload) - $0 stop - $0 start - ;; - try-restart) - $0 status >/dev/null 2>&1 && $0 restart - ;; - status) - status_of_proc -p $PIDFILE $DAEMON $RSYSLOGD && exit 0 || exit $? - ;; - *) - echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|try-restart|status}" >&2 - exit 3 - ;; -esac - -: - diff --git a/lava-master/scripts/start.sh b/lava-master/scripts/start.sh deleted file mode 100755 index c34fe34..0000000 --- a/lava-master/scripts/start.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash - -postgres-ready () { - echo "Waiting for lavaserver database to be active" - while (( $(ps -ef | grep -v grep | grep postgres | grep lavaserver | wc -l) == 0 )) - do - echo -n "." - sleep 1 - done - echo - echo "[ ok ] LAVA server ready" -} - -start () { - echo "Starting $1" - if (( $(ps -ef | grep -v grep | grep -v add_device | grep -v dispatcher-config | grep "$1" | wc -l) > 0 )) - then - echo "$1 appears to be running" - else - service "$1" start - fi -} - -#remove lava-pid files incase the image is stored without first stopping the services -rm -f /var/run/lava-*.pid 2> /dev/null - -/etc/init.d/postgresql start - -/setup.sh || exit $? - -start apache2 || exit $? -start lava-logs || exit $? -start lava-master || exit $? -start lava-coordinator || exit $? -start lava-slave || exit $? -start lava-server-gunicorn || exit $? -start tftpd-hpa || exit $? - -postgres-ready -service apache2 reload #added after the website not running a few times on boot diff --git a/lava-master/scripts/stop.sh b/lava-master/scripts/stop.sh deleted file mode 100755 index 35d503f..0000000 --- a/lava-master/scripts/stop.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -service lava-master stop -service lava-slave stop -service lava-logs stop -service lava-coordinator stop -service lava-server-gunicorn stop -service apache2 stop -/etc/init.d/postgresql stop -service tftpd-hpa stop -- cgit 1.2.3-korg