diff options
author | Joseph Hunkeler <jhunkeler@gmail.com> | 2020-09-27 23:33:53 -0400 |
---|---|---|
committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2020-09-27 23:33:53 -0400 |
commit | b0a757c9621bf094f1c522da04c979f67533e28d (patch) | |
tree | a40f390b37146099d00d4503f26d53970133e2f4 /package_info/cli/__main__.py | |
parent | 7f7c8f952d9b1408d22ffd69bce37d05b7c85f00 (diff) | |
download | package_info-master.tar.gz |
Diffstat (limited to 'package_info/cli/__main__.py')
-rw-r--r-- | package_info/cli/__main__.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/package_info/cli/__main__.py b/package_info/cli/__main__.py new file mode 100644 index 0000000..c524dd3 --- /dev/null +++ b/package_info/cli/__main__.py @@ -0,0 +1,28 @@ +import sys +import json +from argparse import ArgumentParser +from ..package_info import get_package_info + + +def main(): + parser = ArgumentParser() + parser.add_argument("package", nargs="*") + args = parser.parse_args() + + name = args.package[0] + result = get_package_info(name) + + if len(args.package) < 2: + # Dump all data as JSON + print(json.dumps(result, indent=4)) + else: + # Dump the value of a key as JSON + pattern = args.package[1] + try: + print(json.dumps(result[pattern], indent=4)) + except KeyError: + print("{}") + return 1 + +if __name__ == "__main__": + sys.exit(main()) |