X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FsalomeTools.py;h=a49524b24c465199efc051015dc06bed564dd2f7;hb=c76437f0fb9f7f66bfca0eb10674fbdd3d22ba6c;hp=1ad0b02ae5aa24d35d9101922d17d3a1277e4adc;hpb=105d3f8dbb6e9bc5149d53a7d8f0851ad3d001c8;p=tools%2Fsat.git diff --git a/src/salomeTools.py b/src/salomeTools.py index 1ad0b02..a49524b 100755 --- a/src/salomeTools.py +++ b/src/salomeTools.py @@ -89,9 +89,9 @@ parser.add_option('v', 'verbose', 'int', "output_verbose_level", parser.add_option('b', 'batch', 'boolean', "batch", _("batch mode (no question).")) parser.add_option('t', 'all_in_terminal', 'boolean', "all_in_terminal", - _("All traces in the terminal (for example compilation logs).")) + _("all traces in the terminal (for example compilation logs).")) parser.add_option('l', 'logs_paths_in_file', 'string', "logs_paths_in_file", - _("Put the command result and paths to log files in .")) + _("put the command results and paths to log files.")) ######################################################################## @@ -234,11 +234,14 @@ class Sat(object): def setInternals(self, opt=None, datadir=None): """set the commands by calling the dedicated function etc...""" options, remaindersArgs = parser.parse_args(opt) + if options.debug_mode: + DBG.push_debug(True) self.arguments = opt self.options = options # the generic options passed to salomeTools self.remaindersArgs = remaindersArgs # the command and their options self.datadir = datadir # default value will be /data self._setCommands(cmdsdir) + DBG.write("Sat.options", self.options, self.options.debug_mode) def getConfig(self): return self.cfg @@ -345,7 +348,6 @@ class Sat(object): ''' # loop on the commands name for nameCmd in lCommand: - DBG.write("load module command '%s.py'" % nameCmd, "") # Exception for the jobs command that requires the paramiko module if nameCmd == "jobs": try: @@ -461,7 +463,12 @@ class Sat(object): src.printcolors.printcWarning(msg), str(e))) self.options.logs_paths_in_file = None - + + + # do nothing more if help is True + if self.options.help: + return 0 + options_launched = "" res = None try: @@ -473,23 +480,25 @@ class Sat(object): if res is None: res = 0 - except Exception as e: - # Get error + except src.SatException as e: + # for sat exception do not display the stack, unless debug mode is set logger_command.write("\n***** ", 1) logger_command.write(src.printcolors.printcError( - "salomeTools ERROR:"), 1) - logger_command.write("\n" + str(e) + "\n\n", 1) - # get stack - __, __, exc_traceback = sys.exc_info() - fp = tempfile.TemporaryFile() - traceback.print_tb(exc_traceback, file=fp) - fp.seek(0) - stack = fp.read() - verbosity = 5 + "salomeTools ERROR: sat %s" % __nameCmd__), 1) + logger_command.write(" *****\n", 1) + print(e.message) if self.options.debug_mode: - verbosity = 1 - logger_command.write("TRACEBACK: %s" % stack.replace('"',"'"), - verbosity) + logger_command.write("\n" + DBG.format_exception("") + "\n", 1) + + except Exception as e: + # here we print the stack in addition + logger_command.write("\n***** ", 1) + logger_command.write(src.printcolors.printcError( + "salomeTools ERROR: sat %s" % __nameCmd__), 1) + + logger_command.write("\n" + DBG.format_exception("") + "\n", 1) + + finally: # set res if it is not set in the command if res is None: @@ -696,7 +705,7 @@ def get_version(): cfgManager = CONFIG.ConfigManager() cfg = cfgManager.get_config() # print the key corresponding to salomeTools version - msg = (src.printcolors.printcHeader( _("Version: ") ) + cfg.INTERNAL.sat_version) + msg = (src.printcolors.printcHeader( _("Version: ") ) + src.get_salometool_version(cfg)) return msg @@ -707,7 +716,7 @@ def get_help(): ''' msg = "\n" + get_version() + "\n\n" msg += src.printcolors.printcHeader( _("Usage: ") ) + \ - "sat [sat_options] [product] [command_options]\n\n" + "sat [sat_options] [application] [command_options]\n\n" msg += parser.get_help() + "\n" @@ -719,7 +728,7 @@ def get_help(): msg += "\n" # Explain how to get the help for a specific command msg += src.printcolors.printcHeader( - _("Getting the help for a specific command: ")) + \ + _("Get help for a specific command:")) + \ "\n>> sat --help \n" return msg