1
0
mirror of https://github.com/mail-in-a-box/mailinabox.git synced 2025-04-21 03:02:09 +00:00

Add upgrade path from 8.1.1. Only do an upgrade check if owncloud was previously installed.

This commit is contained in:
Michael Kroes 2016-07-30 07:11:31 +02:00
parent abe6bc743f
commit 3f65c7133f

View File

@ -95,39 +95,47 @@ if [ ! -d /usr/local/lib/owncloud/ ] \
cp /home/user-data/owncloud/owncloud.db /tmp cp /home/user-data/owncloud/owncloud.db /tmp
fi fi
# If we are upgrading from 8.2.x we should go to 9.0 first. Owncloud doesn't support skipping minor versions # We only need to check if we do upgrades when owncloud was previously installed
if grep -q "8.2.[0-9]" /usr/local/lib/owncloud/version.php; then if [ -e /usr/local/lib/owncloud/version.php ]; then
echo "We are running version 8.2.3, upgrading to 9.0.2 first" if grep -q "8.1.[0-9]" /usr/local/lib/owncloud/version.php; then
echo "We are running 8.1.x, upgrading to 8.2.3 first"
InstallOwncloud 8.2.3 bfdf6166fbf6fc5438dc358600e7239d1c970613
fi
# We need to disable memcached and go with APC, the upgrade and install fails # If we are upgrading from 8.2.x we should go to 9.0 first. Owncloud doesn't support skipping minor versions
# with memcached if grep -q "8.2.[0-9]" /usr/local/lib/owncloud/version.php; then
CONFIG_TEMP=$(/bin/mktemp) echo "We are running version 8.2.x, upgrading to 9.0.2 first"
php <<EOF > $CONFIG_TEMP && mv $CONFIG_TEMP $STORAGE_ROOT/owncloud/config.php;
<?php
include("$STORAGE_ROOT/owncloud/config.php");
\$CONFIG['memcache.local'] = '\OC\Memcache\APC'; # We need to disable memcached and go with APC, the upgrade and install fails
# with memcached
CONFIG_TEMP=$(/bin/mktemp)
php <<EOF > $CONFIG_TEMP && mv $CONFIG_TEMP $STORAGE_ROOT/owncloud/config.php;
<?php
include("$STORAGE_ROOT/owncloud/config.php");
echo "<?php\n\\\$CONFIG = "; \$CONFIG['memcache.local'] = '\OC\Memcache\APC';
var_export(\$CONFIG);
echo ";"; echo "<?php\n\\\$CONFIG = ";
?> var_export(\$CONFIG);
echo ";";
?>
EOF EOF
chown www-data.www-data $STORAGE_ROOT/owncloud/config.php chown www-data.www-data $STORAGE_ROOT/owncloud/config.php
# We can now install owncloud 9.0.2 # We can now install owncloud 9.0.2
InstallOwncloud 9.0.2 72a3d15d09f58c06fa8bee48b9e60c9cd356f9c5 InstallOwncloud 9.0.2 72a3d15d09f58c06fa8bee48b9e60c9cd356f9c5
# The owncloud 9 migration doesn't migrate calendars and contacts # The owncloud 9 migration doesn't migrate calendars and contacts
# The option to migrate these are removed in 9.1 # The option to migrate these are removed in 9.1
# So the migrations should be done when we have 9.0 installed # So the migrations should be done when we have 9.0 installed
sudo -u www-data php /usr/local/lib/owncloud/occ dav:migrate-addressbooks sudo -u www-data php /usr/local/lib/owncloud/occ dav:migrate-addressbooks
# The following migration has to be done for each owncloud user # The following migration has to be done for each owncloud user
for directory in $STORAGE_ROOT/owncloud/*@*/ ; do for directory in $STORAGE_ROOT/owncloud/*@*/ ; do
username=$(basename "${directory}") username=$(basename "${directory}")
sudo -u www-data php /usr/local/lib/owncloud/occ dav:migrate-calendar $username sudo -u www-data php /usr/local/lib/owncloud/occ dav:migrate-calendar $username
done done
sudo -u www-data php /usr/local/lib/owncloud/occ dav:sync-birthday-calendar sudo -u www-data php /usr/local/lib/owncloud/occ dav:sync-birthday-calendar
fi
fi fi
InstallOwncloud $owncloud_ver 82aa7f038e2670b16e80aaf9a41260ab718a8348 InstallOwncloud $owncloud_ver 82aa7f038e2670b16e80aaf9a41260ab718a8348