icinga-plugins/checks/check_nextcloud_update

63 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
if [ "$#" = 0 ]
then
app_root="/var/www/"
else
app_root=$1
fi
/usr/bin/which lynx > /dev/null 2>&1
if [ ! $? = 0 ]
then
echo "lynx ist nicht installiert"
exit 1
fi
if [ -e "$app_root"/version.php ]
then
# echo "nextcloud Version 6 oder hoeher erkannt"
version_full=$(grep OC_VersionString "$app_root"/version.php | cut -d "'" -f2)
else
echo "$app_root/version.php does not exist. exit"
exit 1
fi
#Debugging-Schalter
#Versionspruefung
#echo version_full: $version_full
if [ "$version_full" = "8.0" ]
then
version_full="8.0.0"
fi
if [ "$version_full" = "10.0" ]
then
version_full="10.0.0"
fi
#echo nachbearbeitet version_full: $version_full
version_short=$(echo $version_full | cut -d "." -f1-2)
#Debugging-Schalter
#echo version_short: $version_short
version_website=$(lynx -dump https://download.nextcloud.com/server/releases/ | grep "tar.bz2.sha512" | grep "]" | grep -- "-$version_short" | tail -n 1 | cut -d "]" -f 3 |awk '{print $1}' | cut -d "-" -f 2 | cut -d "." -f 1-3)
#Debugging-Schalter
#echo version_website: $version_website
if [ "$version_full" = "$version_website" ]
then
echo "nextcloud ist up-to-date - installed version: $version_full; newest version: $version_website"
exit 0
#Debugging-Schalter
#elif [ $version_full -lt $version_website ]
# echo Version ist kleiner
else
#Warnung wird ausgegeben
echo "different version - installed version: $version_full; newest version: $version_website"
exit 1
fi