diff --git a/executor/__main__.py b/executor/__main__.py index 6376a18..1efb19e 100644 --- a/executor/__main__.py +++ b/executor/__main__.py @@ -2,3 +2,59 @@ __author__ = 'RemiZOffAlex' __email__ = 'remizoffalex@mail.ru' print('EXECUTOR') + +__author__ = 'RemiZOffAlex' +__email__ = 'remizoffalex@mail.ru' + +import os +import sys +import argparse +import traceback + +from executor.cli.execute import handle_execute + + +def main(): + parser = argparse.ArgumentParser( + description='CLI', + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + parser._optionals.title = "Необязательные аргументы" + parser.add_argument( + "--debug", + default=True, + action='store_true', + help="Отладочная информация" + ) + parser.add_argument( + "--config", + default='.wrench.yml', + help="Файл конфигурации" + ) + + subparsers = parser.add_subparsers( + title='subcommands', + required=True, + description='valid subcommands', + help='additional help' + ) + + group_execute = subparsers.add_parser('execute') + group_execute.add_argument( + '--order', + default='common' + ) + group_execute.set_defaults(func=handle_execute) + + args = parser.parse_args() + + args.func(args) + + +try: + main() +except Exception as err: + traceback.print_exc(file=sys.stdout) + sys.exit(1) + +sys.exit(0)