Checking pip uninstall output in both stdout and stderr

This commit is contained in:
Yuhui Huang 2015-07-21 16:07:25 -07:00 committed by Matt Clay
parent 6231a9d52f
commit 621b396bd9

View file

@ -155,7 +155,7 @@ def _get_cmd_options(module, cmd):
words = stdout.strip().split() words = stdout.strip().split()
cmd_options = [ x for x in words if x.startswith('--') ] cmd_options = [ x for x in words if x.startswith('--') ]
return cmd_options return cmd_options
def _get_full_name(name, version=None): def _get_full_name(name, version=None):
if version is None: if version is None:
@ -356,7 +356,8 @@ def main():
rc, out_pip, err_pip = module.run_command(cmd, path_prefix=path_prefix, cwd=this_dir) rc, out_pip, err_pip = module.run_command(cmd, path_prefix=path_prefix, cwd=this_dir)
out += out_pip out += out_pip
err += err_pip err += err_pip
if rc == 1 and state == 'absent' and 'not installed' in out_pip: if rc == 1 and state == 'absent' and \
('not installed' in out_pip or 'not installed' in err_pip):
pass # rc is 1 when attempting to uninstall non-installed package pass # rc is 1 when attempting to uninstall non-installed package
elif rc != 0: elif rc != 0:
_fail(module, cmd, out, err) _fail(module, cmd, out, err)