Browse Source

git-p4: add option to system() to return subshell status

Add an optional parameter ignore_error to the git-p4 system()
function. If used, it will return the subshell exit status
rather than throwing an exception.

Signed-off-by: Luke Diamand <luke@diamand.org>
Signed-off-by: Jeff King <peff@peff.net>
maint
Luke Diamand 9 years ago committed by Jeff King
parent
commit
cbff4b25e4
  1. 6
      git-p4.py

6
git-p4.py

@ -192,14 +192,16 @@ def p4_has_move_command():
# assume it failed because @... was invalid changelist # assume it failed because @... was invalid changelist
return True return True


def system(cmd): def system(cmd, ignore_error=False):
expand = isinstance(cmd,basestring) expand = isinstance(cmd,basestring)
if verbose: if verbose:
sys.stderr.write("executing %s\n" % str(cmd)) sys.stderr.write("executing %s\n" % str(cmd))
retcode = subprocess.call(cmd, shell=expand) retcode = subprocess.call(cmd, shell=expand)
if retcode: if retcode and not ignore_error:
raise CalledProcessError(retcode, cmd) raise CalledProcessError(retcode, cmd)


return retcode

def p4_system(cmd): def p4_system(cmd):
"""Specifically invoke p4 as the system command. """ """Specifically invoke p4 as the system command. """
real_cmd = p4_build_cmd(cmd) real_cmd = p4_build_cmd(cmd)

Loading…
Cancel
Save