1#!/usr/bin/env python 2import sys 3import argparse 4from os import getuid 5from configshell_fb import ConfigShell 6from spdkcli import UIRoot 7 8 9def main(): 10 """ 11 Start SPDK CLI 12 :return: 13 """ 14 shell = ConfigShell("~/.scripts") 15 16 parser = argparse.ArgumentParser(description="SPDK command line interface") 17 parser.add_argument("-s", dest="socket", help="RPC socket path", default="/var/tmp/spdk.sock") 18 parser.add_argument("commands", metavar="command", type=str, nargs="*", default="", 19 help="commands to execute by SPDKCli as one-line command") 20 args = parser.parse_args() 21 22 root_node = UIRoot(args.socket, shell) 23 try: 24 root_node.refresh() 25 except BaseException: 26 pass 27 28 if len(args.commands) > 0: 29 shell.run_cmdline(" ".join(args.commands)) 30 sys.exit(0) 31 32 shell.con.display("SPDK CLI v0.1") 33 shell.con.display("") 34 shell.run_interactive() 35 36 37if __name__ == "__main__": 38 main() 39