Add two more failure conditions to unarchive (#51914)

pull/52189/head
Kevin 7 years ago committed by Sam Doran
parent cdb53ff1a4
commit c512471428

@ -0,0 +1,2 @@
bugfixes:
- unarchive - add two more error conditions to unarchive to present more accurate error message (https://github.com/ansible/ansible/issues/51848)

@ -172,6 +172,8 @@ MOD_TIME_DIFF_RE = re.compile(r': Mod time differs$')
EMPTY_FILE_RE = re.compile(r': : Warning: Cannot stat: No such file or directory$')
MISSING_FILE_RE = re.compile(r': Warning: Cannot stat: No such file or directory$')
ZIP_FILE_MODE_RE = re.compile(r'([r-][w-][SsTtx-]){3}')
INVALID_OWNER_RE = re.compile(r': Invalid owner')
INVALID_GROUP_RE = re.compile(r': Invalid group')
def crc32(path):
@ -730,6 +732,10 @@ class TgzArchive(object):
out += line + '\n'
if MISSING_FILE_RE.search(line):
out += line + '\n'
if INVALID_OWNER_RE.search(line):
out += line + '\n'
if INVALID_GROUP_RE.search(line):
out += line + '\n'
if out:
unarchived = False
return dict(unarchived=unarchived, rc=rc, out=out, err=err, cmd=cmd)

Loading…
Cancel
Save