def __run(self, args):
        """
        run self.cmd adding args as additional arguments

        Be verbose about errors and encode them in the return value, don't pass
        on exceptions.
        """
        try:
            retcode = self.__call(args)
            if retcode < 0:
                err_detail = "%s was terminated by signal %d" % (self.cmd,
                                                                 -retcode)
            elif retcode > 0:
                err_detail = "%s returned %d" % (self.cmd, retcode)
        except OSError as err:
            err_detail = "Execution failed: %s" % err
            retcode = 1
        if retcode:
            log.err("%s: %s" % (self.run_error, err_detail))
        self.retcode = retcode
        return retcode
    def __run(self, args, quiet=False):
        """
        run self.cmd adding args as additional arguments

        @param quiet: don't log errors to stderr Mostly useful during unit testing.

        Be verbose about errors and encode them in the return value, don't pass
        on exceptions.
        """
        try:
            retcode = self.__call(args)
            if retcode < 0:
                err_detail = "it was terminated by signal %d" % -retcode
            elif retcode > 0:
                err_detail = "it exited with %d" % retcode
        except OSError as err:
            err_detail = "execution failed: %s" % err
            retcode = 1
        if retcode and not quiet:
            log.err("%s: %s" % (self.run_error, err_detail))
        self.retcode = retcode
        return retcode
Example #3
0
    def __run(self, args, quiet=False):
        """
        run self.cmd adding args as additional arguments

        @param quiet: don't log errors to stderr Mostly useful during unit testing.

        Be verbose about errors and encode them in the return value, don't pass
        on exceptions.
        """
        try:
            retcode = self.__call(args)
            if retcode < 0:
                err_detail = "it was terminated by signal %d" % -retcode
            elif retcode > 0:
                err_detail = "it exited with %d" % retcode
        except OSError as err:
            err_detail = "execution failed: %s" % err
            retcode = 1
        if retcode and not quiet:
            log.err("%s: %s" % (self.run_error, err_detail))
        self.retcode = retcode
        return retcode
 def _log_err(self):
     "Log an error message"
     log.err(self._format_err())