Initial
This commit is contained in:
55
install/upgrade/manual/migrate_roundcube.sh
Executable file
55
install/upgrade/manual/migrate_roundcube.sh
Executable file
@@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
# info: Disconnect Roundcube from APT and solving issues with Roundcube accidental updates from ATP
|
||||
|
||||
#----------------------------------------------------------#
|
||||
# Variable&Function #
|
||||
#----------------------------------------------------------#
|
||||
|
||||
# Includes
|
||||
source $HESTIA/func/main.sh
|
||||
# get current Roundcube version
|
||||
source $HESTIA/install/upgrade/upgrade.conf
|
||||
source $HESTIA/conf/hestia.conf
|
||||
|
||||
#----------------------------------------------------------#
|
||||
# Verifications #
|
||||
#----------------------------------------------------------#
|
||||
|
||||
if [ ! -d "/usr/share/roundcube/" ]; then
|
||||
echo "ERROR: Roundcube is not managed by apt."
|
||||
exit 2
|
||||
fi
|
||||
|
||||
#----------------------------------------------------------#
|
||||
# Action #
|
||||
#----------------------------------------------------------#
|
||||
|
||||
echo "To remove Roundcube you will need use the root password. Password can be found in /usr/local/hestia/conf/mysql.conf"
|
||||
read -p 'Would you like to continue? [y/n]' -n 1 -r
|
||||
echo # (optional) move to a new line
|
||||
if [[ $REPLY =~ ^[Yy]$ ]]; then
|
||||
version=$(cat /usr/share/roundcube/index.php | grep -o -E '[0-9].[0-9].[0-9]+' | head -1)
|
||||
# Backup database
|
||||
echo "#version $version" >> ~/roundcube.sql
|
||||
echo "SET FOREIGN_KEY_CHECKS = 0;" >> ~/roundcube.sql
|
||||
mysqldump --add-drop-table roundcube >> ~/roundcube.sql
|
||||
echo "SET FOREIGN_KEY_CHECKS = 1;" >> ~/roundcube.sql
|
||||
echo '[ * ] Remove Roundcube via ATP'
|
||||
apt-get autoremove roundcube-core roundcube-mysql roundcube-plugins
|
||||
echo '[ * ] Delete possible trail'
|
||||
# make sure everything is deleted
|
||||
rm -f -r /usr/share/roundcube
|
||||
rm -f -r /etc/roundcube
|
||||
rm -f -r /var/lib/roundcube/
|
||||
|
||||
# Install Roundcube
|
||||
$BIN/v-add-sys-roundcube
|
||||
# restore backup
|
||||
echo "SET FOREIGN_KEY_CHECKS = 0;" > ~/drop_all_tables.sql
|
||||
(mysqldump --add-drop-table --no-data -u root roundcube | grep 'DROP TABLE') >> ./drop_all_tables.sql
|
||||
echo "SET FOREIGN_KEY_CHECKS = 1;" >> ~/drop_all_tables.sql
|
||||
mysql -u root roundcube < ./drop_all_tables.sql
|
||||
|
||||
mysql roundcube < ~/roundcube.sql
|
||||
/var/lib/roundcube/bin/update.sh --version "$version"
|
||||
fi
|
||||
Reference in New Issue
Block a user