#!/bin/sh
#
# Univention Updater
#  univention-updater-umc-dist-upgrade
#
# SPDX-FileCopyrightText: 2010-2025 Univention GmbH
# SPDX-License-Identifier: AGPL-3.0-only
#

if [ "$1" = "-h" ] || [ "$1" = "--help" ] ; then
	echo "${0##*/} [<logfile>] [<statusfile>]"
	echo ""
	echo "${0##*/} performs a dist-upgrade "
	exit 1
fi

LOGFILE="/var/log/univention/updater.log"
STATUSFILE="/var/lib/univention-updater/umc-dist-upgrade.status"

if [ -n "$1" ] ; then
	LOGFILE="$1"
fi
if [ -n "$2" ] ; then
	STATUSFILE="$2"
fi

eval "$(ucr shell)"

echo "Starting dist-upgrade at $(date)" >> "$LOGFILE";
echo "status=RUNNING" > "$STATUSFILE"
export DEBIAN_FRONTEND=noninteractive
if ! ${update_commands_distupgrade:-false} >> "$LOGFILE" 2>&1
then
	echo "status=FAILED" > "$STATUSFILE"
	echo
	echo "ERROR: An error occurred during update. Please check the logfiles."
	date
	exit 1
fi >> "$LOGFILE"

echo "status=DONE" > "$STATUSFILE"
echo >> "$LOGFILE"
echo "The update has been finished successfully at $(date)."  >> "$LOGFILE"

exit 0
