From 205fccf316b012056b542095665183c46638c865 Mon Sep 17 00:00:00 2001 From: shim_ Date: Tue, 9 Aug 2016 18:19:46 +0200 Subject: [PATCH] basic upgrade mechanism --- init.sh | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/init.sh b/init.sh index f256552..d23c289 100755 --- a/init.sh +++ b/init.sh @@ -45,12 +45,7 @@ function db_config { fi } -SERVER_DIR=/opt/teamspeak3 -RUNSCRIPT=$SERVER_DIR/ts3server_minimal_runscript.sh -CONF_DIR=$SERVER_DIR - -if [ ! -f "$RUNSCRIPT" ] || [ ! -z "$UPGRADE" ]; then - echo Starting Initialization +function upgrade_ts3 { URL=http://dl.4players.de/ts/releases/$TS_VERSION/teamspeak3-server_linux_$ARCH-$TS_VERSION.tar.bz2 TMPFILE=/tmp/server.tar.bz2 wget $URL -O $TMPFILE @@ -67,14 +62,25 @@ if [ ! -f "$RUNSCRIPT" ] || [ ! -z "$UPGRADE" ]; then mv -u /opt/teamspeak3-server_linux_$ARCH/* /opt/teamspeak3/ rm -rf /opt/teamspeak3-server_linux_$ARCH rm -f $TMPFILE - main_config - db_config + echo "$ARCH-$TS_VERSION" -n > /opt/teamspeak3/INSTALLED_VERSION +} + +SERVER_DIR=/opt/teamspeak3 +RUNSCRIPT=$SERVER_DIR/ts3server_minimal_runscript.sh +CONF_DIR=$SERVER_DIR + +if [ ! -f "$RUNSCRIPT" ] || [ ! -z "$UPGRADE" ]; then + echo Starting Initialization + if [[ ! -f "/opt/teamspeak3/INSTALLED_VERSION" || ( "$(cat /opt/teamspeak3/INSTALLED_VERSION)" != "$ARCH-$TS_VERSION" && ! -z "$UPGRADE") ]]; then + if [ ! -f "$RUNSCRIPT" ]; then + upgrade_ts3 + main_config + db_config + else + upgrade_ts3 + fi + fi fi -if [ -z "$UPGRADE" ]; then - wait_for_mysql - $RUNSCRIPT inifile=$CONF_DIR/ts3server.ini -else - echo "Upgrade complete" - exit 0 -fi +wait_for_mysql +$RUNSCRIPT inifile=$CONF_DIR/ts3server.ini