Alex A. Naanou bc9cabd50b ready for testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2025-01-14 20:43:52 +03:00

81 lines
2.1 KiB
Bash
Executable File

#!/usr/bin/bash
#----------------------------------------------------------------------
cd $(dirname $0)
PATH=$PATH:$(dirname "$(pwd)")
#----------------------------------------------------------------------
source ../.pct-helpers
#----------------------------------------------------------------------
readConfig
#----------------------------------------------------------------------
# CLI...
usage(){
echo "$0 FROM TO"
}
if [ $# != 2 ] ; then
usage
echo "Not enough arguments."
exit 1
fi
# XXX should we get FROm from config???
FROM=$1
TO=$2
# XXX should we build TO if it's not there???
#----------------------------------------------------------------------
@ lxc-attach $FROM -- turnkey-occ maintenance:mode --on
@ lxc-attach $TO -- turnkey-occ maintenance:mode --on
FROM_INSTANCEID=$(lxc-attach $FROM -- turnkey-occ config:system:get instanceid)
TO_INSTANCEID=$(lxc-attach $TO -- turnkey-occ config:system:get instanceid)
# XXX should we sleep here for a minute or 6 as is recommended in the docs???
# sql
@ lxc-attach $TO -- mysql -e "DROP DATABASE nextcloud"
@ lxc-attach $TO -- mysql -e "CREATE DATABASE nextcloud"
@@ "lxc-attach $FROM -- mysqldump --single-transaction nextcloud \
| lxc-attach $TO -- mysql nextcloud"
# files...
@ pct mount $FROM
@ pct mount $TO
# XXX need to also copy the logo and bg images...
# path seems to be:
# INSTANCEID=$(lxc-attach $ID -- turnkey-occ config:system:get instanceid)
# nextcloud-data/appdata_$INSTANCEID/theming/global/images/background
@ rsync -Aavx \
/var/lib/lxc/$FROM/rootfs/var/www/nextcloud-data/ \
/var/lib/lxc/$TO/rootfs/var/www/nextcloud-data
# migrate cache and background/logo images... (XXX TEST)
@ mv -f \
/var/lib/lxc/$TO/rootfs/var/www/nextcloud-data/appdata_$FROM_INSTANCEID{,.bak}
@ mv -f \
/var/lib/lxc/$TO/rootfs/var/www/nextcloud-data/appdata_{$FROM_INSTANCEID,$TO_INSTANCEID}
@ pct unmount $FROM
@ pct unmount $TO
@ lxc-attach $FROM -- turnkey-occ maintenance:mode --off
@ lxc-attach $TO -- turnkey-occ maintenance:mode --off
#----------------------------------------------------------------------
# vim:set ts=4 sw=4 nowrap :