mirror of
https://github.com/RasppleII/a2server.git
synced 2024-06-12 22:29:28 +00:00
36 lines
820 B
Plaintext
36 lines
820 B
Plaintext
|
#! /usr/bin/env python3
|
||
|
# vim: set tabstop=4 shiftwidth=4 noexpandtab filetype=python:
|
||
|
|
||
|
import sys
|
||
|
from pkg_resources import parse_version
|
||
|
|
||
|
def usage():
|
||
|
print("Usage: compare_version <version> <operator> <version>")
|
||
|
print(" where operator is one of lt, le, eq, ge, gt, or ne")
|
||
|
sys.exit(2)
|
||
|
|
||
|
if len(sys.argv) != 4:
|
||
|
usage()
|
||
|
|
||
|
ver1 = parse_version(sys.argv[1])
|
||
|
ver2 = parse_version(sys.argv[3])
|
||
|
|
||
|
# I suppose you could do something clever with meta-method mapping here
|
||
|
result = False
|
||
|
if sys.argv[2] == 'lt':
|
||
|
result = ver1 < ver2
|
||
|
elif sys.argv[2] == 'le':
|
||
|
result = ver1 <= ver2
|
||
|
elif sys.argv[2] == 'eq':
|
||
|
result = ver1 == ver2
|
||
|
elif sys.argv[2] == 'ge':
|
||
|
result = ver1 >= ver2
|
||
|
elif sys.argv[2] == 'gt':
|
||
|
result = ver1 > ver2
|
||
|
elif sys.argv[2] == 'ne':
|
||
|
result = ver1 != ver2
|
||
|
else:
|
||
|
usage()
|
||
|
|
||
|
sys.exit(0 if result else 1)
|