has-module/hasmodule/cli.py

32 lines
749 B
Python

#!/usr/bin/env python
from sys import exit
import argparse
def check(module, version=None):
m = __import__(module)
if version is not None:
assert m.__version__ == version, "Wrong version"
def main():
parser = argparse.ArgumentParser(description="simple tool for checking if a python module is installed")
parser.add_argument('module', help='python module to test for')
parser.add_argument('version', nargs='?', help='version string to check against module.__version__')
args = parser.parse_args()
try:
check(args.module, args.version)
except Exception as e:
# module is missing or wrong version
print(str(e))
exit(1)
exit(0)
if __name__ == '__main__':
main()