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>
This commit is contained in:
parent
74b6fe9202
commit
cbff4b25e4
@ -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…
Reference in New Issue
Block a user