50 lines
1.5 KiB
Python
50 lines
1.5 KiB
Python
import click
|
|
from click_aliases import ClickAliasedGroup
|
|
from prompt_toolkit.key_binding import KeyBindings
|
|
|
|
from sdi_checker.app_cli.commands.cmd_check import cli_check as cmd_check
|
|
from sdi_checker.app_cli.commands.cmd_audits import cli_audits as cmd_audits
|
|
from sdi_checker.app_cli.commands.cmd_report import cli_report as cmd_report
|
|
from sdi_checker.app_cli.commands import cmd_clear_history as cmd_clear_history
|
|
from sdi_checker.app_cli.commands import cmd_clear as cmd_clear
|
|
from sdi_checker.app_cli.commands import cmd_logs as cmd_logs
|
|
from sdi_checker.app_cli.commands import cmd_quit as cmd_quit
|
|
from sdi_checker.app_cli.commands import cmd_test as cmd_test
|
|
from sdi_checker.app_cli.commands import cmd_version as cmd_version
|
|
|
|
|
|
bindings = KeyBindings()
|
|
|
|
@bindings.add('c-q')
|
|
def _(event, app):
|
|
"""Exit"""
|
|
commands.on_exit(app)
|
|
|
|
|
|
@click.group(cls=ClickAliasedGroup, invoke_without_command=True)
|
|
@click.pass_obj
|
|
@click.pass_context
|
|
def cli(ctx, app):
|
|
"""Pleasantries CLI"""
|
|
app.bindings = bindings
|
|
app.cli(ctx)
|
|
|
|
|
|
@cli.command()
|
|
@click.pass_obj
|
|
def repl(app):
|
|
"""Start an interactive session"""
|
|
app.cli_repl(app)
|
|
|
|
|
|
# Import commands from "./master/app_cli/commands" directory
|
|
cli.add_command(cmd_audits)
|
|
cli.add_command(cmd_check)
|
|
cli.add_command(cmd_report)
|
|
cli.add_command(cmd_clear.run)
|
|
cli.add_command(cmd_clear_history.run)
|
|
cli.add_command(cmd_logs.run)
|
|
cli.add_command(cmd_quit.run)
|
|
cli.add_command(cmd_test.run)
|
|
cli.add_command(cmd_version.run)
|