diff --git a/bin/upgrade/DEV/scripts/merge_events_collections.js b/bin/upgrade/24.10/scripts/merge_events_collections.js similarity index 100% rename from bin/upgrade/DEV/scripts/merge_events_collections.js rename to bin/upgrade/24.10/scripts/merge_events_collections.js diff --git a/bin/upgrade/DEV/upgrade.mongo.70.sh b/bin/upgrade/24.10/upgrade.mongo.70.sh similarity index 100% rename from bin/upgrade/DEV/upgrade.mongo.70.sh rename to bin/upgrade/24.10/upgrade.mongo.70.sh diff --git a/bin/upgrade/DEV/upgrade.nodejs.20.sh b/bin/upgrade/24.10/upgrade.nodejs.20.sh similarity index 100% rename from bin/upgrade/DEV/upgrade.nodejs.20.sh rename to bin/upgrade/24.10/upgrade.nodejs.20.sh diff --git a/bin/upgrade/24.10/upgrade.sh b/bin/upgrade/24.10/upgrade.sh new file mode 100644 index 00000000000..54565dd038e --- /dev/null +++ b/bin/upgrade/24.10/upgrade.sh @@ -0,0 +1,13 @@ +#!/bin/bash +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +DATE=$(date +%Y-%m-%d:%H:%M:%S) +VERSION="$(basename "${DIR}")" + +countly stop +if [ -f "$DIR/upgrade_fs.sh" ]; then + bash "$DIR/upgrade_fs.sh" combined 2>&1 | tee -a "$DIR/../../../log/countly-upgrade-fs-$VERSION-$DATE.log" +fi +if [ -f "$DIR/upgrade_db.sh" ]; then + bash "$DIR/upgrade_db.sh" combined 2>&1 | tee -a "$DIR/../../../log/countly-upgrade-db-$VERSION-$DATE.log" +fi +countly upgrade diff --git a/bin/upgrade/24.10/upgrade_db.sh b/bin/upgrade/24.10/upgrade_db.sh new file mode 100644 index 00000000000..8fd596a5135 --- /dev/null +++ b/bin/upgrade/24.10/upgrade_db.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +VER="24.10" + +CONTINUE="$(countly check before upgrade db "$VER")" + +if [ "$CONTINUE" != "1" ] && [ "$1" != "combined" ] +then + echo "Database is already up to date with $VER" + read -r -p "Are you sure you want to run this script? [y/N] " response + if [[ "$response" =~ ^([yY][eE][sS]|[yY])$ ]] + then + CONTINUE=1 + fi +fi + +if [ "$CONTINUE" == "1" ] +then + echo "Running database modifications" + DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/../.." && pwd )" + SCRIPTS="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + + if [ "$1" != "combined" ]; then + #upgrade plugins + nodejs "$DIR/scripts/install_plugins.js" + fi + + #add indexes + nodejs "$DIR/scripts/add_indexes.js" + + #run upgrade scripts + nodejs "$SCRIPTS/scripts/merge_events_collections.js" + + + if [ "$1" != "combined" ]; then + countly upgrade; + fi + + #call after check + countly check after upgrade db "$VER" +elif [ "$CONTINUE" == "0" ] +then + echo "Database is already upgraded to $VER" +elif [ "$CONTINUE" == "-1" ] +then + echo "Database is upgraded to higher version" +else + echo "Unknown ugprade state: $CONTINUE" +fi diff --git a/bin/upgrade/24.10/upgrade_fs.sh b/bin/upgrade/24.10/upgrade_fs.sh new file mode 100644 index 00000000000..f1b244ccf42 --- /dev/null +++ b/bin/upgrade/24.10/upgrade_fs.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +echo "Running filesystem modifications" + +VER="24.10" + +CONTINUE="$(countly check before upgrade fs "$VER")" + +if [ "$CONTINUE" != "1" ] && [ "$1" != "combined" ] +then + echo "Filesystem is already up to date with $VER" + read -r -p "Are you sure you want to run this script? [y/N] " response + if [[ "$response" =~ ^([yY][eE][sS]|[yY])$ ]] + then + CONTINUE=1 + fi +fi + +if [ "$CONTINUE" == "1" ] +then + DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/../.." && pwd )" + + #enable command line + bash "$DIR/scripts/detect.init.sh" + + #upgrade plugins + nodejs "$DIR/scripts/install_plugins.js" + + #get web sdk + countly update sdk-web + + + if [ "$1" != "combined" ]; then + countly upgrade; + else + countly task dist-all; + fi + + #call after check + countly check after upgrade fs "$VER" +elif [ "$CONTINUE" == "0" ] +then + echo "Filesystem is already upgraded to $VER" +elif [ "$CONTINUE" == "-1" ] +then + echo "Filesystem is upgraded to higher version" +else + echo "Unknown ugprade state: $CONTINUE" +fi