librenms/scripts/check_requirements.py
Tony Murray 257d596c3b
Add python validation fix suggestions (#11563)
* add python fixes

* re-order python requirements so most important deps show first.

* Only check dependencies if we are running as the poller user
2020-05-08 09:54:30 -05:00

30 lines
693 B
Python
Executable File

#! /usr/bin/env python3
import os
import sys
import pkg_resources
from pkg_resources import DistributionNotFound, VersionConflict
args = sys.argv
# verbose flag
verbose = '-v' in args
target = os.path.realpath(os.path.dirname(__file__) + '/../requirements.txt')
with open(target, 'r') as file:
requirements = file.read().rstrip().split("\n")
requirements.reverse() # reverse so the most important ones show first
try:
pkg_resources.require(requirements)
except DistributionNotFound as req:
if verbose:
print(req)
exit(1)
except VersionConflict as req:
if verbose:
print(req)
exit(2)
exit(0)
exit(3)