Affects Version/s: None
Fix Version/s: FACT 3.0.2
This ticket went through some evolution, so I'll attempt to summarize.
The '--puppet' option to facter introduces a circular dependency between facter and puppet, so we had plans to break that cycle. Specifically, in 2.4.4 we introduced a deprecation notice for 'facter --puppet', and in facter 3.0 we removed it (by not reimplementing it). Our recommendation was to use 'puppet facts' instead.
However, as raised in this ticket and in some conversations in IRC and meatspace, there are a couple concerns with that deprecation and removal:
- 'puppet facts' doesn't implement the full set of functionality, especially the ability to specify a single fact to retrieve
- there's a fair bit of scripting around the current behavior, and we really need to have the full replacement behavior in place for an overlapping period of time to support an easy transition away from the deprecated behavior
- deprecation or not, we haven't addressed additional functionality such as specifying elements of a structured fact from the CLI
So for the time being, we're restoring 'facter --puppet'. Ultimately, we still want to break the circular dependency between facter and puppet, but we won't do so until we have a clear path forward for how the two interact.
Original description below.
So while I understand the goal behind
FACT-96. there's a significant loss of functionality there. I see no method of retrieving a single value, which is very highly used within external scripts which make use of puppet plugin-synced facts.
Note in this context, just from my personal source archives I found more than 1000 uses of this exact functionality, and I can attest to tens of thousands more uses at companies where I am not allowed to take their source offsite on my laptop.
Resolution: we're restoring `facter -p` in Facter 3.0.2, with plans to address
FACT-96 more completely in the future.