Skip to content

Commit

Permalink
show archivy version (#219)
Browse files Browse the repository at this point in the history
  • Loading branch information
ddoyaguez committed Jun 25, 2023
1 parent 78e262f commit 634b5bb
Showing 1 changed file with 43 additions and 3 deletions.
46 changes: 43 additions & 3 deletions archivy/cli.py
@@ -1,10 +1,10 @@
from pathlib import Path
from os import environ
from pkg_resources import iter_entry_points
from pkg_resources import iter_entry_points, require

import click
from click_plugins import with_plugins
from flask.cli import FlaskGroup, load_dotenv, shell_command
from flask.cli import FlaskGroup, load_dotenv, shell_command, get_version

from archivy import app
from archivy.config import Config
Expand All @@ -18,8 +18,48 @@ def create_app():
return app


# function that shows Archivy version before Flask version
def get_archivy_version(ctx, param, value):
version = require("archivy")[0].version
print("Archivy %s" % version)
get_version(ctx, param, value)


version_option = click.Option(
["--version"],
help="Show the Archivy version",
expose_value=False,
callback=get_archivy_version,
is_flag=True,
is_eager=True,
)


# subclass FlaskGroup class to show the archivy version
class ArchivyGroup(FlaskGroup):

def __init__(
self,
add_default_commands=True,
create_app=None,
add_version_option=True,
load_dotenv=True,
set_debug_flag=True,
**extra
):
extra["params"].append(version_option)
super().__init__(
self,
create_app=create_app,
add_version_option=False,
load_dotenv=load_dotenv,
set_debug_flag=set_debug_flag,
**extra
)


@with_plugins(iter_entry_points("archivy.plugins"))
@click.group(cls=FlaskGroup, create_app=create_app)
@click.group(cls=ArchivyGroup, create_app=create_app)
def cli():
pass

Expand Down

0 comments on commit 634b5bb

Please sign in to comment.