[stable-2.9] RoleRequirement - Include stderr in the error message (#66006) (#69486)

* RoleRequirement - Include stderr in the error message if there's a non-0 return code

* Don't try to concatenate str and bytes

Co-Authored-By: Sam Doran <sdoran@redhat.com>
(cherry picked from commit 1b3ca34)

Co-authored-by: Sloane Hertel <shertel@redhat.com>

Co-authored-by: Sloane Hertel <shertel@redhat.com>
pull/69409/head
Sam Doran 5 years ago committed by GitHub
parent 4744f31023
commit a9f5f45d45
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -0,0 +1,2 @@
bugfixes:
- RoleRequirement - include stderr in the error message if a scm command fails (https://github.com/ansible/ansible/issues/41336)

@ -145,11 +145,11 @@ class RoleRequirement(RoleDefinition):
except Exception as e: except Exception as e:
ran = " ".join(cmd) ran = " ".join(cmd)
display.debug("ran %s:" % ran) display.debug("ran %s:" % ran)
display.debug("\tstdout: " + stdout) display.debug("\tstdout: " + to_text(stdout))
display.debug("\tstderr: " + stderr) display.debug("\tstderr: " + to_text(stderr))
raise AnsibleError("when executing %s: %s" % (ran, to_native(e))) raise AnsibleError("when executing %s: %s" % (ran, to_native(e)))
if popen.returncode != 0: if popen.returncode != 0:
raise AnsibleError("- command %s failed in directory %s (rc=%s)" % (' '.join(cmd), tempdir, popen.returncode)) raise AnsibleError("- command %s failed in directory %s (rc=%s) - %s" % (' '.join(cmd), tempdir, popen.returncode, to_native(stderr)))
if scm not in ['hg', 'git']: if scm not in ['hg', 'git']:
raise AnsibleError("- scm %s is not currently supported" % scm) raise AnsibleError("- scm %s is not currently supported" % scm)

Loading…
Cancel
Save