Files
VPS-scripts_Web-V2/PhpUpdater.sh
Bram Prieshof e07d0ea7b5 fixed oopsie
2020-08-14 15:09:01 +02:00

91 lines
2.8 KiB
Bash

#sysCheck
if [ ! -f "/etc/ICTM/selopts.list" ] || [ ! -f "/etc/ICTM/mainvar.list" ] ; then echo 'This system is not yet setup, please run the main installer first' && exit ; fi
PKGI="${PKGM} install -y --no-install-recommends"
#Getting variables
source /etc/ICTM/mainvar.list
PPAversion=`apt list php | egrep -o "([0-9]{1,}.)+[0-9]{1,}" | cut -c 3-` && PPAversion=`echo $PPAversion | awk '{print $1; }' | cut -f1 -d"+"`
msg () {
if [ $IMODE = n ]; then
TERM=ansi whiptail --title "Info" --msgbox "$1" 8 52
fi
if [ $IMODE = l ]; then
echo "$1"
fi
}
msg "Current php version: $phpver"
if [ $IMODE = n ]; then
# Legacy/Main Menu
PKGP="debconf-apt-progress -- apt purge -y"
#Menu
if (whiptail --title "Set new php version?" --yesno "Install php version $PPAversion ?" 8 78); then
newphpver=$PPAversion
else
newphpver=$(whiptail --inputbox "Please enter the version to install" --title "Custom" 8 39 3>&1 1>&2 2>&3)
fi
#Install
apt list --installed | less | grep php$phpver | cut -f1 -d"/" | sed "s/$phpver/$newphpver/" | xargs $PKGI
#Config
cp /etc/php/$phpver/fpm/pool.d/* /etc/php/$newphpver/fpm/pool.d/
#Purge
if (whiptail --title "Set new php version?" --yesno "Remove php $phpver ?" 8 78); then
PhpPurge=1
$PKGP -y php$phpver*
else
PhpPurge=0
fi
fi
if [ $IMODE = l ]; then
# Legacy/Main Menu
PKGP="apt purge -y"
#Menu
while true; do
read -p "Set phpversion to version $PPAversion ? -> yes/no?" yn
case $yn in
[Yy]* ) newphpver=$PPAversion
break;;
[Nn]* ) echo "";
echo "Please enter php version to install:";read newphpver
break;;
* ) echo "Choose yes or no.";;
esac
done
#Install
apt list --installed | less | grep php$phpver | cut -f1 -d"/" | sed "s/$phpver/$newphpver/" | xargs $PKGI
#Config
cp /etc/php/$phpver/fpm/pool.d/* /etc/php/$newphpver/fpm/pool.d/
#Purge
while true; do
read -p "Remove php $phpver ? -> yes/no?" yn
case $yn in
[Yy]* ) PhpPurge=1 ; $PKGP php$phpver*
break;;
[Nn]* ) PhpPurge=0 ; echo ""
break;;
* ) echo "Choose yes or no.";;
esac
done
fi
for f in /etc/php/$newphpver/fpm/pool.d/*; do
sed -i "s/$phpver/$newphpver/" $f
done
systemctl reload php$newphpver-fpm
sed -i "/phpver/c\phpver=\"$newphpver\"" /etc/ICTM/mainvar.list
if curl --retry 2 --retry-delay 1 --output /dev/null --silent --head --fail "$repo"/raw/branch/"$branch"/CoreModules/"$webserv"/phpupdate-handeler.sh; then
source <(curl --retry 7 --retry-delay 5 -s "$repo"/raw/branch/"$branch"/CoreModules/"$webserv"/phpupdate-handeler.sh)
fi