def run(self, line): """ Wrapper function for help main function :param line: command line input :type line: string. """ try: (_, args) = self._parse_arglist(line) except (InvalidCommandLineErrorOPTS, SystemExit): if ("-h" in line) or ("--help" in line): return ReturnCodes.SUCCESS else: raise InvalidCommandLineErrorOPTS("") if not args or not line: RdmcOptionParser().print_help() if self._rdmc: cmddict = self._rdmc.get_commands() sorted_keys = sorted(list(cmddict.keys())) for key in sorted_keys: if key[0] == '_': continue else: sys.stdout.write('\n%s\n' % key) for cmd in cmddict[key]: cmd.print_summary() else: if self._rdmc: cmddict = self._rdmc.get_commands() sorted_keys = list(cmddict.keys()) for key in sorted_keys: for cmd in cmddict[key]: if cmd.ismatch(args[0]): cmd.print_help() return ReturnCodes.SUCCESS raise InvalidCommandLineError("Command '%s' not found." % args[0]) #Return code return ReturnCodes.SUCCESS
def __init__(self, Args=None): RdmcCommandBase.__init__(self, \ name=versioning.__shortname__, \ usage=versioning.__shortname__ +' [command]', \ summary='Redfish Utility', \ aliases=[versioning.__shortname__], \ optparser=RdmcOptionParser()) Args.append('--showwarnings') self._commands = collections.OrderedDict() self.commandsDict = extensions._Commands self.interactive = False self._progname = '%s : %s' % (versioning.__shortname__, \ versioning.__longname__) self.opts = None self.config_file = None self.app = redfish.ris.RmcApp(Args=Args) self.retcode = 0 self.candidates = dict() self.commlist = list() self._redobj = None Args.remove('--showwarnings')
def __init__(self, Args=None): RdmcCommandBase.__init__(self, \ name=versioning.__shortname__, \ usage=versioning.__shortname__ +' [command]', \ summary='HPE RESTful Interface Tool', \ aliases=[versioning.__shortname__], \ argparser=RdmcOptionParser()) self._commands = collections.OrderedDict() self.commands_dict = extensions.Commands self.interactive = False self._progname = '%s : %s' % (versioning.__shortname__, \ versioning.__longname__) self.opts = None self.encoding = None self.config = RdmcConfig() self.app = redfish.ris.RmcApp(showwarnings=True) self.retcode = 0 self.candidates = dict() self.commlist = list() self._redobj = None
break if not found_help and default: exarglist.insert(0, 'default') return checkargs(cmdinstance.parser.parse_known_args(exarglist)) if __name__ == '__main__': # Initialization of main command class ARGUMENTS = sys.argv[1:] RDMC = RdmcCommand(Args=ARGUMENTS, name=versioning.__shortname__, usage=versioning.__shortname__ + ' [command]', summary='HPE RESTful Interface Tool', aliases=[versioning.__shortname__], argparser=RdmcOptionParser()) # Main execution function call wrapper if "setproctitle" in sys.modules: FOUND = False VARIABLE = setproctitle.getproctitle() for items in VARIABLE.split(" "): if FOUND: VARIABLE = VARIABLE.replace(items, "xxxxxxxx") break if items == "--password" or items == "-p": FOUND = True setproctitle.setproctitle(VARIABLE)