Your IP : 3.22.216.30


Current Path : /usr/local/mgr5/sbin/
Upload File :
Current File : //usr/local/mgr5/sbin/pkgupgrade.sh

#!/bin/sh

if [ "$1" = "-T" ]; then
	echo -n "(c) ISPsystem.com"
	exit 0
fi
cd $(dirname $0)/../
PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin"
LD_LIBRARY_PATH=""

MGRDIR=/usr/local/mgr5
cd ${MGRDIR} || exit 1
. ${MGRDIR}/lib/pkgsh/core_pkg_funcs.sh || exit 1

# PREINST_HOOKS needs for repository add
UPGRADE_HOOKS=""
CORE_UPGRADE_PKGS=""
if [ -d ${MGRDIR}/lib/pkgsh/hooks/upgrade ]; then
	for hook_file in $(find ${MGRDIR}/lib/pkgsh/hooks/upgrade/ -type f); do
		# shellcheck source=/dev/null
		. "${hook_file}"
	done
fi


export DEBIAN_FRONTEND=noninteractive
if [ "$SSH_CONNECTION" = "" ]; then
	exec 1>>var/pkg.log
	echo
	echo -n "*** "
	date
	if [ "$1" = "" ]; then
		echo "*** UPGRADING PACKAGES"
	else
		echo "*** UPGRADING PACKAGE $1"
	fi
fi

for f in ispsystem ispsystem-base ; do
	fname=/etc/apt/sources.list.d/${f}.list
	if [ -f ${fname} ] && grep -q cdn.ispsystem.com ${fname} && ! grep -q '^###' ${fname} ; then
		echo "*** Replacing mirror url"
		cat ${fname} | sed -r 's|http://cdn.ispsystem.com|http://download.ispsystem.com|' > ${fname}.tmp || rm -f ${fname}.tmp
		test -f ${fname}.tmp && mv -f ${fname}.tmp ${fname}
	fi
done

check_df_all() {
	if ! CheckDF / 300 ; then echo "Too low disk space in /" ; return 1 ; fi
	if ! CheckDF /usr/local/mgr5 300 ; then echo "Too low disk space in /usr/local/mgr5" ; return 1 ; fi
}

/usr/bin/apt-get -qy update 2>&1
uexitcode=$?
if [ $uexitcode -eq 0 ]; then
	if [ -z "$1" ]; then
		cmdupgrade() {
			if [ -n "${1}" ]; then
				local arg="--download-only"
			fi
			/usr/bin/apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" -qy --allow-unauthenticated ${arg} upgrade 2>&1
		}
	else
		PKGS=""
		PKG=${1}
		if [ "$1" = "coremanager" ]; then
			PKGS="$PKGS $(apt-cache -q  --installed --no-suggests --recurse --no-enhances  rdepends coremanager | grep -E '^\s+' | sed -r 's/\s+\|*//' | xargs)"
			PKGS="${PKGS} ${CORE_UPGRADE_PKGS}"
		fi
		cmdupgrade() {
			if [ -n "${1}" ]; then
				local arg="--download-only"
			fi
			/usr/bin/apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" -qy --allow-unauthenticated ${arg} install ${PKG} $PKGS 2>&1
		}
	fi
	cmdupgrade 1 && check_df_all && cmdupgrade
	exitcode=$?
else
	exitcode=$uexitcode
fi
if [ -n "$2" ] && [ -n "$3" ]; then
	sbin/mgrctl -m "$2" "$3" elid="$1" result="$exitcode"
fi
exit $exitcode