aboutsummaryrefslogtreecommitdiff
path: root/package_info/cli/__main__.py
blob: c524dd39be012242d4ac52a33692cd2a593fa8c2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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())