7
0
mirror of https://github.com/ChristianLight/tutor.git synced 2024-06-27 00:53:30 +00:00
tutor/tutor/cli.py
Régis Behmo d65a7a1b38 Fix version information in bundle
`./dist/tutor --version` raises an error:

Traceback (most recent call last):
  File "main", line 4, in <module>
  File "tutor/cli.py", line 21, in main
  File "click/core.py", line 764, in __call__
  File "click/core.py", line 716, in main
  File "click/core.py", line 641, in make_context
  File "click/core.py", line 1089, in parse_args
  File "click/core.py", line 940, in parse_args
  File "click/core.py", line 1477, in handle_parse_result
  File "click/core.py", line 96, in invoke_param_callback
  File "click/decorators.py", line 270, in callback
RuntimeError: Could not determine version
[1659] Failed to execute script main

To address this, we pass the version value directly to click.

This is for issue #156.
2019-02-10 19:29:37 +01:00

53 lines
1.1 KiB
Python
Executable File

#! /usr/bin/env python3
import sys
import click
import click_repl
from .__about__ import __version__
from .android import android
from .config import config
from .dev import dev
from .images import images
from .k8s import k8s
from .local import local
from .ui import ui
from .webui import webui
from . import exceptions
from . import fmt
def main():
try:
cli()
except exceptions.TutorError as e:
sys.stderr.write(fmt.error("Error: {}\n".format(e.args[0])))
sys.exit(1)
@click.group(context_settings={'help_option_names': ['-h', '--help', 'help']})
@click.version_option(version=__version__)
def cli():
pass
@click.command(
help="Print this help",
name="help",
)
def print_help():
with click.Context(cli) as context:
click.echo(cli.get_help(context))
click_repl.register_repl(cli, name="ui")
cli.add_command(images)
cli.add_command(config)
cli.add_command(local)
cli.add_command(dev)
cli.add_command(android)
cli.add_command(k8s)
cli.add_command(ui)
cli.add_command(webui)
cli.add_command(print_help)
if __name__ == "__main__":
main()