From 237641aa90e4d57296e9a4a2d22122c857db0dbf Mon Sep 17 00:00:00 2001 From: Christian MOMON Date: Sat, 5 Feb 2022 15:38:58 +0000 Subject: [PATCH] Add new file --- check_forgechalecorg_update | 70 +++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 check_forgechalecorg_update diff --git a/check_forgechalecorg_update b/check_forgechalecorg_update new file mode 100644 index 0000000..98de402 --- /dev/null +++ b/check_forgechalecorg_update @@ -0,0 +1,70 @@ +#!/bin/bash +# GNU AGPLv3+ +# Nagios plugin to check Gitea version + +function usage() +{ + echo "Usage : $0" +} + + +function getCurrentVersion +{ + local result + + local json=$(curl -s -X GET "https://forge.chalec.org/api/v1/version" -H "accept: application/json") + #echo "[$json]" + + # {"version":"1.11.1"} + local regexp='\{"version":"(.*)"}' + if [[ $json =~ $regexp ]]; then + result=${BASH_REMATCH[1]} + else + result= + fi + + echo "$result" +} + +function getLastVersionFromGithub +{ + local result + + local owner="$1" + local repo="$2" + + local json=$(curl -s -X GET https://api.github.com/repos/$owner/$repo/releases/latest |grep tag_name) + #echo "[$json]" + + # [ "tag_name": "v1.11.1",] + local regexp='.*"tag_name": "v(.+)".*' + + if [[ $json =~ $regexp ]]; then + result=${BASH_REMATCH[1]} + else + result= + fi + + echo "$result" +} + + +# +if [ "$#" -ne 0 ]; then + usage +else + currentVersion=$(getCurrentVersion) + #echo "Current version = $currentVersion" + + lastVersion=$(getLastVersionFromGithub "go-gitea" "gitea") + #echo "Last version = $lastVersion" + + if [ $currentVersion = $lastVersion ]; then + echo "OK" + result=0 + else + echo "WARNING : new version available, current is $currentVersion, last is $lastVersion." + result=1 + fi +fi +exit $result