Bug #38070
openFacts for operating system to not get updated
Description
I have an installation of Foreman 3.12.1 on Rocky Linux 9. I also installed puppetserver community v 8.7 and puppetdb 8.8.1. On all my agents there is puppet agent 8.10 installed.
If I update some agent, the os related facts are not updated in foreman. Facter does report the facts correctly, in puppetdb I also can validate, the values are correct. Only foreman refuses to set the new values. Checking the settings, "ignore facts for operating system" is not enabled.
Checking the logs does not give any hint.
What can I do to get back the expected behaviour, that all facts are updated after puppet agent runs?
Updated by Andreas Haase 3 months ago
- Found in Releases 3.13.0 added
Just updated to Foreman v3.13.0, which shows the same error.
Updated by Roger MÃ¥rtensson 14 days ago
I had a similar problem. After a new install no facts where imported.
Same foreman versions as you. Am using Puppet Server 7.
After some time (and with a bit less hair on my head) I finally found a notice about Puppet Server 7 having a new way to store facts. Previously it was YAML and now they also support JSON.
Those facts are in different directories and after looking I noticed that foreman was configured to look for JSON but my agents/server was storing them as YAML.
The solution for me was to change fact_extension in foreman.yaml from json to yaml and restart the Puppet Server.
Test this and see if it's the same for you?
My installation was a clean install from a 3.11-nightly since I had to be able to install on Ubuntu 22.04/jammy and afterwards it was upgraded to 3.11, 3.12 and 3.13.
Updated by Andreas Haase 14 days ago
This helps. Works like a charm now. Thank you very much.