report_preview.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #!/bin/env python3
  2. import os
  3. import sys
  4. import argparse
  5. import random
  6. try:
  7. from grip import serve
  8. except Exception as exc:
  9. print("Import Error: %s" % (exc))
  10. print("Please install requried package grip using: pip3 install grip")
  11. sys.exit(1)
  12. if __name__ == '__main__':
  13. parser = argparse.ArgumentParser(description="Preview SDK CLI Report in web")
  14. parser.add_argument('--logdir', required=True, help="The root directory of cli report")
  15. parser.add_argument('--port', help="port to listen to")
  16. args = parser.parse_args()
  17. report_md = os.path.join(args.logdir, "report.md")
  18. if os.path.isfile(report_md) == False:
  19. print("ERROR: Can't find report.md in %s provided in --logdir option" %(args.logdir))
  20. sys.exit(1)
  21. lisport = random.randint(10000, 65000)
  22. if args.port:
  23. lisport = int(args.port)
  24. print("Listen to port %d(specified by --port)" % (lisport))
  25. else:
  26. print("Listen to port %d(random generated)" % (lisport))
  27. serve(path=report_md, host="0.0.0.0", port=lisport)
  28. sys.exit(0)