From e8632f41a4eb9d326402c917e1fc5e550c285157 Mon Sep 17 00:00:00 2001 From: "James E. Blair" Date: Fri, 16 Sep 2016 15:37:27 -0700 Subject: [PATCH] Don't set detailed-exitcodes when noop Change-Id: I3819ad5920a0a88b0b52ecb9b77a58c6d588fbdc --- library/puppet | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/library/puppet b/library/puppet index 3f53f96..9fe120d 100644 --- a/library/puppet +++ b/library/puppet @@ -193,13 +193,13 @@ def main(): if not p['manifest']: cmd = ("%(base_cmd)s agent --onetime" " --ignorecache --no-daemonize --no-usecacheonfailure" - " --no-splay --detailed-exitcodes --verbose") % dict( + " --no-splay --verbose") % dict( base_cmd=base_cmd, ) if p['puppetmaster']: cmd += " --server %s" % pipes.quote(p['puppetmaster']) else: - cmd = "%s apply --detailed-exitcodes " % base_cmd + cmd = "%s apply " % base_cmd cmd += pipes.quote(p['manifest']) if p['logdest'] != 'stdout': cmd += " --logdest %s" % p['logdest'] @@ -208,9 +208,12 @@ def main(): if p['environment']: cmd += " --environment '%s'" % p['environment'] if module.check_mode or p['noop']: + # Noop causes detailed-exitcodes to sometimes erroneously + # return failures, so we only set detailed-exitcodes when + # running for real. cmd += " --noop" else: - cmd += " --no-noop" + cmd += " --no-noop --detailed-exitcodes" if p['debug']: cmd += " --debug" rc, stdout, stderr = module.run_command(cmd)