#!/bin/sh

## Copyright (C) 2006-2013 Daniel Baumann <mail@daniel-baumann.ch>
##
## This program comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
## This is free software, and you are welcome to redistribute it
## under certain conditions; see COPYING for details.


set -e

, /usr/share/lxc/lxc.functions

_LXC_DIRECTORY="${lxc_path}"
_CONTAINER="${1}"

if [ -n "${_CONTAINER}" ]
then
	shift
else
#	echo "Usage: ${0} CONTAINER [BACKUP_NUMBER]"
	echo "Usage: ${0} CONTAINER"
	exit 1
fi

if [ ! -x "$(which rsync 2>/dev/null)" ]
then
	echo "E: rsync - no such file" >&2
	exit 1
fi

if [ ! -x "$(which lxc-info 2>/dev/null)" ]
then
	echo "E: lxc-info - no such file" >&2
	exit 1
fi

if ! lxc-info -n ${_CONTAINER} 2>&1 | grep -qs "STOPPED"
then
	echo "E: ${_CONTAINER} - not stopped" >&2
	exit 1
fi

if [ -e "${_LXC_DIRECTORY}/${_CONTAINER}/rootfs" ]
then
#	if [ -n "${2}" ]
#	then
#		_BACKUP="${2}"
#	else
#		_BACKUP="1"
#
#		while [ -e "${_LXC_DIRECTORY}/${_CONTAINER}/rootfs.backup${_BACKUP}" ]
#		do
#			_BACKUP="$((${_BACKUP} + 1))"
#		done
#	fi

	rsync -aPHv --delete --progress ${_LXC_DIRECTORY}/${_CONTAINER}/rootfs/ ${_LXC_DIRECTORY}/${_CONTAINER}/rootfs.backup${_BACKUP}
else
	echo "E: ${_LXC_DIRECTORY}/${_CONTAINER}/rootfs - no such directory" >&2
	exit 1
fi
