Bug #1129

Facts distributed via plugins in modules method are sync'd but not evaluated

Added by micah - over 2 years ago. Updated about 2 years ago.

Status:Closed Start:
Priority:Normal Due date:
Assigned to:Puppet Community % Done:

0%

Category:unknown
Target version:0.25.0
Affected version: Branch:
Keywords:
Votes: 0

Description

Using the methodology described in PluginsInModules, I find that puppet syncs the facts properly, but doesn’t use those facts on that run, but requires you to re-run:

root@albatross:~# puppetd --test
info: Loading fact acpi_available
info: Loading fact interfaces
info: Loading fact private_ip
info: Loading fact netmask
info: Loading fact virtual
info: Loading fact vserver
info: Loading fact public_ip
info: Retrieving plugins
notice: /File[/var/lib/puppet/lib/facter/in_colo.rb]/ensure: created
notice: Ignoring cache
err: Could not retrieve catalog: Failed to parse template bind9/named.conf.options: Could not find value for 'in_colo' at /etc/puppet/manifests/classes/bind.pp:54 on node albatross
warning: Not using cache on failed catalog
root@albatross:~# 

As you can see, the fact was created, but then it ailed to parse the template, which requires that fact. If I re-run puppet, it loads that fact properly.

Isn’t the point of the PluginsInModules that the sync happens first, then facts are loaded, so that this doesn’t happen?

I’m using 0.24.x

History

Updated by Luke Kanies over 2 years ago

For now, you can use factsync as a workaround. I doubt I’ll get around to fixing this until I refactor the client code as part of 0.25.0.

Updated by Redmine Admin about 2 years ago

  • Status changed from 1 to Accepted

Updated by Luke Kanies about 2 years ago

  • Status changed from Accepted to Closed

Duplicate of #1114.

Also available in: Atom PDF