In holo-files/impl.TargetFile.Apply() if there is an error, it is logged to os.Stderr, then discarded.
if err != nil {
fmt.Fprintf(os.Stderr, "!! %s\n", err.Error())
}
This seems to me to contradict holo-plugin-interface(7), which says
The apply operation
...
If an error occurred during provisioning, the plugin shall exit with non-zero exit code.
So if holo-files/impl.TargetFile.Apply() encounters an error, shouldn't avoid having a zero exit code? Or is this a bug in the documentation?
Note that if holo-files is modified to have a non-zero exit code in this case, then the test suite would need adjusted, as holo would start spitting out !! exit status 1 lines in response; and the test suite won't be expecting them.