puppetlabs-toy-chest/wash

Failure in volume.FS List is ignored

Closed this issue · 1 comments

If find in volume.FS's List fails, the error is logged but the ls call still succeeds (exits 0) and reports the directory as empty. It should fail and return the error.

A little more context on this: volume.FS swallown the error because we may get useful output even if find exits non-zero due to lack of permissions on some targets. However, we also ignore stderr. Some possible improvements here are

  • warn instead of info for errors when we get some entries back
  • error if we get non-zero exit and no entries
  • capture stderr; on failure, stdout probably doesn't contain the cause

Specific test was ls on the filesystem for a Bolt target that doesn't exist.