Guillaume RYCKELYNCK c6c2ee9c04 first commit
2024-06-22 22:00:42 +02:00

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)