#!/bin/bash

updlogpath="/var/log/apt/update_upgrade.log"
errlogpath="/var/log/apt/update_upgrade.err"


check_reboot_needed()
{
	varpath="/var/run/reboot-required"

	if [[ -f "${varpath}" ]]; then
    		echo "*******************"
    		echo "  REBOOT REQUIRED  "
    		echo "*******************"
    		reboot
	else
    		echo "*******************"
    		echo " NO REBOOT NEEDED  "
    		echo "*******************"
	fi
}

check_upgrade()
{
	ping -c2 -W2 apt.matelex.info
	if [ $? -eq 0 ];
	then
	  echo ">>------------------------------------------------$(date)---------------------------------------------<<" >> ${updlogpath}
	  echo ">>------------------errors------------------------$(date)------------------errors---------------------<<" >> ${errlogpath}
	  apt-get update -y
	  apt-get upgrade -y >> ${updlogpath} 2>> ${errlogpath}
	  apt-get clean
	else
	  exit 1
	fi
}

check_error_upgrade()
{
	ret=$(tail -1 ${errlogpath})

	if [[ $ret =~ .*configure.* ]]
	then
   	  dpkg --configure -a
	fi

	if [[ $ret =~ .*lock.* ]]
	then
   	  kill $(pidof apt-get)
	fi
}


export DEBIAN_FRONTEND=noninteractive
check_upgrade
check_error_upgrade
check_reboot_needed

exit 0

