Monitoring plugin to check Forgejo instance upgrade status
Find a file
Benjamin Renard 7bf258de8f
All checks were successful
Run tests / test-precommit (push) Successful in 1m11s
Use Codeberg API to retreive latest release info
2024-03-24 08:27:06 +01:00
.forgejo/workflows Use Codeberg API to retreive latest release info 2024-03-24 08:27:06 +01:00
debian Use Codeberg API to retreive latest release info 2024-03-24 08:27:06 +01:00
.gitignore Initial release 2023-01-19 12:54:08 +01:00
.pre-commit-config.yaml Upgrade pre-commit hooks 2024-03-13 23:33:46 +01:00
build.sh Improve pre-commit hooks & code cleaning 2024-01-22 01:50:13 +01:00
check_forgejo_upgrade Use Codeberg API to retreive latest release info 2024-03-24 08:27:06 +01:00
README.md Use Codeberg API to retreive latest release info 2024-03-24 08:27:06 +01:00

Monitoring plugin to check Forgejo instance upgrade status

This Icinga/Nagios check plugin permit to check Forgejo instance upgrade status by comparing the local forgejo binary version against the latest stable release.

Installation

apt install git python3-requests
git clone https://gitea.zionetrix.net/bn8/check_forgejo_upgrade.git /usr/local/src/check_forgejo_upgrade
mkdir -p /usr/local/lib/nagios/plugins
ln -s /usr/local/src/check_forgejo_upgrade/check_forgejo_upgrade /usr/local/lib/nagios/plugins/
echo "nagios ALL=NOPASSWD: /usr/local/lib/nagios/plugins/check_forgejo_upgrade" > /etc/sudoers.d/nagios-gitea
chmod 0400 /etc/sudoers.d/nagios-gitea
echo "command[check_forgejo_upgrade]=sudo /usr/local/lib/nagios/plugins/check_forgejo_upgrade" > /etc/nagios/nrpe.d/forgejo.cfg
service nagios-nrpe-server reload

Usage

usage: check_forgejo_upgrade [-h] [-d] [-p PATH] [-U URL] [--pre-release] [--draft] [-t TIMEOUT]

options:
  -h, --help            show this help message and exit
  -d, --debug
  -p PATH, --path PATH  Forgejo bin path
  -U URL, --url URL     Forgejo releases URL
  --pre-release         Allow pre-release (default: only stable release are considered)
  --draft               Allow draft release (default: only stable release are considered)
  -t TIMEOUT, --timeout TIMEOUT
                        Specify timeout for HTTP requests (default: 20)

Copyright (c) 2023-2024 Benjamin Renard brenard@zionetrix.net

License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.