Let user define how many previous installations to preserve
This commit is contained in:
@@ -29,6 +29,9 @@ LOGFILE="$(dirname $0)/xo-install.log"
|
|||||||
# NodeJS and Yarn are automatically updated when running update. Switch this option to false if you want to disable it.
|
# NodeJS and Yarn are automatically updated when running update. Switch this option to false if you want to disable it.
|
||||||
AUTOUPDATE="true"
|
AUTOUPDATE="true"
|
||||||
|
|
||||||
|
# Define the number of previous installations you want to keep
|
||||||
|
PRESERVE="3"
|
||||||
|
|
||||||
### End of editable variables ###
|
### End of editable variables ###
|
||||||
|
|
||||||
function CheckUser {
|
function CheckUser {
|
||||||
@@ -332,10 +335,10 @@ function UpdateXO {
|
|||||||
|
|
||||||
InstallXO
|
InstallXO
|
||||||
|
|
||||||
# remove old builds. leave 3 latest
|
# remove old builds. leave as many as defined in PRESERVE variable
|
||||||
echo
|
echo
|
||||||
echo -n "Removing old installations (leaving 3 latest)..."
|
echo -n "Removing old installations (leaving $PRESERVE latest)..."
|
||||||
find $INSTALLDIR/xo-builds/ -maxdepth 1 -type d -name "xen-orchestra*" -printf "%T@ %p\n" | sort -n | cut -d' ' -f2- | head -n -3 | xargs -r rm -r
|
find $INSTALLDIR/xo-builds/ -maxdepth 1 -type d -name "xen-orchestra*" -printf "%T@ %p\n" | sort -n | cut -d' ' -f2- | head -n -$PRESERVE | xargs -r rm -r
|
||||||
echo "done"
|
echo "done"
|
||||||
|
|
||||||
} 2>$LOGFILE
|
} 2>$LOGFILE
|
||||||
@@ -493,7 +496,7 @@ echo
|
|||||||
echo "- Option 2. actually creates a new build from sources but works as an update to installations originally done with this tool"
|
echo "- Option 2. actually creates a new build from sources but works as an update to installations originally done with this tool"
|
||||||
echo " NodeJS and Yarn packages are updated automatically. Check AUTOUPDATE variable to disable this"
|
echo " NodeJS and Yarn packages are updated automatically. Check AUTOUPDATE variable to disable this"
|
||||||
echo " Data stored in redis and /var/lib/xo-server/data will not be touched during update procedure."
|
echo " Data stored in redis and /var/lib/xo-server/data will not be touched during update procedure."
|
||||||
echo " 3 latest installations will be preserved and older ones are deleted after successful update. Fresh installation is symlinked as active"
|
echo " X (defined in PRESERVE variable) number of latest installations will be preserved and older ones are deleted after successful update. Fresh installation is symlinked as active"
|
||||||
echo " Rollback to another installation with --rollback"
|
echo " Rollback to another installation with --rollback"
|
||||||
echo
|
echo
|
||||||
echo "- To run option 2. without interactive mode (as cronjob for automated updates for example) use --update"
|
echo "- To run option 2. without interactive mode (as cronjob for automated updates for example) use --update"
|
||||||
@@ -512,6 +515,7 @@ fi
|
|||||||
echo "Port: $PORT"
|
echo "Port: $PORT"
|
||||||
echo "Git Branch for source: $BRANCH"
|
echo "Git Branch for source: $BRANCH"
|
||||||
echo "Following plugins will be installed: "$PLUGINS""
|
echo "Following plugins will be installed: "$PLUGINS""
|
||||||
|
echo "Number of previous installations to preserve: $PRESERVE"
|
||||||
echo
|
echo
|
||||||
echo "Errorlog is stored to $LOGFILE for debug purposes"
|
echo "Errorlog is stored to $LOGFILE for debug purposes"
|
||||||
echo "-----------------------------------------"
|
echo "-----------------------------------------"
|
||||||
|
Reference in New Issue
Block a user