Skip to content
Snippets Groups Projects
Select Git revision
  • master default
  • golang
  • v0.1.6
  • v0.1.5
  • v0.1.4
  • v0.1.3
  • v0.1.2
  • v0.1.1
  • 0.1.0-dev5
  • 0.1.0-dev4
  • 0.1.0-dev3
  • 0.1.0-dev2
12 results

mnpw

  • Clone with SSH
  • Clone with HTTPS
  • Adar Nimrod's avatar
    nimrod authored
    - Update from the git skeleton files.
    - Fix some newly found issues.
    a70e63a4
    History

    My Nagios plugin wrapper

    pipeline status latest release

    The goal of this project is running Nagios plugins without a monitoring system. It is intended for my personal use as the warning and critical alerts go to my notification mechanism. There is a small-ish binary that is created in the CI pipeline that doesn't have any external dependencies (like the Python VM or any 3rd party Python packages). The latest binary is available at https://git.shore.co.il/shore/mnpw/-/jobs/artifacts/master/raw/dist/mnpw?job=build-executable and should work all Linux distro with glibc 2.17 or newer.

    Usage

    usage: mnpw [-h] [-v] [-V] [-c] [-d] [-q] [-w] [-u] [-e] [-t TIMEOUT]
                command [arguments ...]
    
    My Nagios plugin wrapper.
    
    positional arguments:
      command               Plugin command
      arguments             Command arguments
    
    optional arguments:
      -h, --help            show this help message and exit
      -v, --verbose         Verbose output
      -V, --version         show program's version number and exit
      -c, --chain           Echo the check output and exit with the same exit
                            code, allow for chaining with plugin handlers.
      -d, --dry-run         Dry-run, don't notify
      -q, --quiet, --silent
                            No output, except for errors.
      -w, --warn            Notify when the check status is WARNING.
      -u, --unknown         Notify when the check status is UNKNOWN.
      -e, --errors          Notify on check errors.
      -t TIMEOUT, --timeout TIMEOUT
                            Command timeout (in seconds), defaults to 10

    Usage as library

    Although the CLI is of little use to anybody but me, you may find the Nagios plugin handling useful and would want to use it. The package is not published to PyPI so your best option is getting a direct download of the wheel package from the releases pages.

    Development

    For local development, the following is required:

    To run all of the tests locally:

    poetry install
    poetry run pre-commit run --all-files
    poetry run pytest
    poetry run make bats

    All of those tests (and more) run in the CI pipeline on each push.

    To release a new version:

    poetry run bumpversion major|minor|patch
    git push --follow-tags

    This will commit the version change, tag and push it and the pipeline will release a new version.

    License

    This software is licensed under the MIT license (see the LICENSE.txt file).

    Author

    Nimrod Adar, contact me or visit my website. Patches are welcome via git send-email. The repository is located at: https://git.shore.co.il/nimrod/.