47 lines
1.0 KiB
Python
47 lines
1.0 KiB
Python
import getopt
|
|
import sys
|
|
import logging
|
|
|
|
import core.utils
|
|
from core.sheerka.Sheerka import Sheerka
|
|
|
|
|
|
def usage():
|
|
print("Sheerka v0.1\n")
|
|
print("usage:")
|
|
print(sys.argv[0] + "[-hdl:] command ")
|
|
|
|
|
|
def main(argv):
|
|
try:
|
|
opts, args = getopt.getopt(argv, "hdl:", ["help", "debug", "logger="])
|
|
debug = False
|
|
loggers = set()
|
|
for o, a in opts:
|
|
if o in ('-h', "--help"):
|
|
usage()
|
|
return True
|
|
if o in ('-d', "--debug"):
|
|
debug = True
|
|
if o in ('-l', '-logger'):
|
|
loggers.add(a)
|
|
|
|
sheerka = Sheerka(debug=debug, loggers=loggers)
|
|
sheerka.initialize()
|
|
|
|
_in = core.utils.sysarg_to_string(args)
|
|
result = sheerka.evaluate_user_input(_in)
|
|
|
|
for res in result:
|
|
logging.info(res)
|
|
|
|
return result[-1].status if len(result) > 0 else 1
|
|
except getopt.GetoptError:
|
|
usage()
|
|
sys.exit(2)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
res = main(sys.argv[1:])
|
|
exit(0 if res else 1)
|