diff --git a/update.sh b/update.sh index f8fa4304..20787740 100755 --- a/update.sh +++ b/update.sh @@ -53,6 +53,7 @@ function fuCHECKINET () { function fuSELFUPDATE () { echo echo "### Now checking for newer files in repository ..." + echo "### T-Pot... TPOT_TYPE is set to: $myTPOT_TYPE" git fetch --all myREMOTESTAT=$(git status | grep -c "up-to-date") if [ "$myREMOTESTAT" != "0" ]; @@ -67,13 +68,31 @@ function fuSELFUPDATE () { echo "###### $myBLUE""Found newer version, will be pulling updates and restart myself.""$myWHITE" git reset --hard git pull --force - exec ./update.sh -y - exit 1 - else + # check if myTPOT_TYPE is set + if [ -z "$myTPOT_TYPE" ]; then + exec ./update.sh + else + exec ./update.sh -y $myTPOT_TYPE + fi + else echo "###### $myBLUE""Pulling updates from repository.""$myWHITE" git reset --hard git pull --force fi + if [ -z "$myTPOT_TYPE" ]; then + echo + else + grep -q "^TPOT_TYPE=" .env && sed -i "s/^TPOT_TYPE=.*/TPOT_TYPE=${myTPOT_TYPE}/" .env + echo "### T-Pot type set to: $myTPOT_TYPE in .env" + if [ "$myTPOT_TYPE" == "SENSOR" ]; then + echo "### Copying compose/sensor.yml to docker-compose.yml" + cp compose/sensor.yml docker-compose.yml + else + echo + fi + fi + exit 1 + echo } @@ -194,6 +213,19 @@ function fuRESTORE () { sed -i "s/^TPOT_VERSION=.*/TPOT_VERSION=${newVERSION}/" $HOME/tpotce/.env } +function fuREADTPOT_TYPE () { + if [ -f .env ]; then + # reads the TPOT_TYPE from the .env file + myTPOT_TYPE=$(grep -E '^TPOT_TYPE=' .env | cut -d '=' -f2) + # Verify if TPOT_TYPE is set + if [ -z "$myTPOT_TYPE" ]; then + myTPOT_TYPE="HIVE" + fi + else + myTPOT_TYPE="HIVE" + fi +} + ################ # Main section # ################ @@ -211,11 +243,23 @@ if [ "$1" != "-y" ]; then exit fi +# if exists second argument, use it as T-Pot type, only if SENSOR or HIVE +if [ -n "$2" ]; then + if [[ "$2" == "SENSOR" || "$2" == "HIVE" ]]; then + myTPOT_TYPE="$2" + else + myTPOT_TYPE="HIVE" + fi +else + myTPOT_TYPE="HIVE" +fi + +fuREADTPOT_TYPE fuCHECK_VERSION fuCHECKINET "https://index.docker.io https://github.com" fuSTOP_TPOT fuBACKUP -fuSELFUPDATE "$0" "$@" +fuSELFUPDATE "$0" "$@" "$myTPOT_TYPE" fuUPDATER fuRESTORE