refactor template
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import Annotated
|
||||
|
||||
import typer
|
||||
|
||||
from {{ cookiecutter.package_name }}.cli.config import app as config_app
|
||||
from {{ cookiecutter.package_name }}.cli.hello import app as hello_app
|
||||
from {{ cookiecutter.package_name }}.utils.logging import setup_logging
|
||||
|
||||
app = typer.Typer(no_args_is_help=True)
|
||||
app.add_typer(config_app, name="config")
|
||||
app.add_typer(hello_app, name="hello")
|
||||
|
||||
|
||||
@app.callback(invoke_without_command=True)
|
||||
def main(
|
||||
version: Annotated[
|
||||
bool,
|
||||
typer.Option("--version", "-v", help="Show version and exit."),
|
||||
] = False,
|
||||
) -> None:
|
||||
"""Run the CLI application."""
|
||||
setup_logging()
|
||||
if version:
|
||||
from importlib.metadata import version as get_version
|
||||
|
||||
print(get_version("{{ cookiecutter.project_slug }}"))
|
||||
raise typer.Exit()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
app()
|
||||
Reference in New Issue
Block a user