Bug #8574
closedBug #8321: File edit methods return a kept class even when they repaired the file
File edit methods return a kept class even when they repaired the file
Description
According to https://github.com/Normation/ncf/pull/357/files#r63663063:
Even if we edit a file, and the repaired class is set, because the file already exists, CFEngine thinks the promise is kept, therefore defining both result classes. Reason is most of them create the file if not existing, but if the file is already there, part of this promise is kept, hence the kept result
We should look into a workaround to avoid this confusing and nasty kept class. If it comes from the "create => true" part of the promise, maybe just separate this into two promises, and report only on the second? If not, how about a checksum before and after the file edit promise, and if the checksum differs, then force the repaired class, if not force the kept class?