Skip to content
Snippets Groups Projects
Commit a744fd32 authored by Erik Reid's avatar Erik Reid
Browse files

initial cli.py

parent 30f7b42a
No related branches found
No related tags found
No related merge requests found
...@@ -3,5 +3,6 @@ requests ...@@ -3,5 +3,6 @@ requests
sqlalchemy sqlalchemy
alembic alembic
mysqlclient mysqlclient
click
pytest pytest
\ No newline at end of file
import json
import click
from jsonschema.exceptions import ValidationError
def _validate_config(_unused_ctx, _unused_param, file):
try:
params = json.loads(file.read())
return params
except (json.JSONDecodeError, ValidationError):
raise click.BadParameter('config file is not valid json')
@click.command()
@click.option(
'--config',
required=True,
type=click.File('r'),
help='config filename',
callback=_validate_config)
@click.option(
'--fqdn',
required=True,
type=click.STRING,
help='config filename')
def cli(config, fqdn):
print(config)
print(fqdn)
if __name__ == '__main__':
cli()
...@@ -13,6 +13,7 @@ setup( ...@@ -13,6 +13,7 @@ setup(
'requests', 'requests',
'sqlalchemy', 'sqlalchemy',
'alembic', 'alembic',
'mysqlclient' 'mysqlclient',
'click'
] ]
) )
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment