(FACT-2799) Fix fact loading for nested fact calls #2108
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem:
Custom fact i18ndemo_fact was not executed on ubuntu 16.04.
Solution
The fallowing flow happened:
Puppet -> Facter (-> FactLoader -> custom fact(that called puppet again)) -> Puppet -> Facter -> (-> FactLoader -> cached custom facts (this is the reason why it was not an infinit loop))
Because Facter was called from within another Facter run,
@external_facts
object was replaced and the concat was done on an object thaw was discarded.With the fix
Ubuntu 16.04
Ubuntu 20.04