exec {'test':
  command => "/bin/ls /doesnotexit", 
}

fails as expected:

Error: /bin/ls /doesnotexit returned 1 instead of one of [0]
Error: /Stage[main]//Exec[test]/returns: change from notrun to 0 failed: 
/bin/ls /doesnotexit returned 1 instead of one of [0]

However, 
exec {'test':
  command => "/bin/ls /doesnotexit; /bin/echo hello", 
}

does not fail, because the last command did not return an error!

that's a problem, because there are many puppet modules which concatenate 
several commands in one puppet exec, and they do not explicitly handle the 
errors.

(inserting "set -e" at the head of the command line does not work, as it is 
bash script specific)

*I think that, by default, the puppet exec resource should fail if any of 
the "single commands" fail (as *
*in the second example).and if it is not by default, at least there should 
be an option in puppet exec to do so (equivalent to "set -e" in bash)*

(tested on puppet 3.3.2)


-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/fc8a32ca-1e7b-4376-ace7-a1c36dd665c3%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to