On Wed, Aug 15, 2012 at 2:28 AM, André Fernandes <andree...@gmail.com> wrote:
> I am customizing an existing puppet installation (with facter) and I think I
> ran into an issue understanding the scope of custom facts.
>
> I have several modules that are mapped exclusively to different classes of
> hosts within a nodes.pp file. What I'd like to achieve would be to have
> custom facts limited by module, for example hosts in module1would execute
> custom_fact_1 and hosts in module2 would only execute custom_fact_2.
>
> According to the facter/puppet docs, the custom facts go into a
> <module-name>/lib/facterdirectory, and are tied to that module.
>
> I have made it gather a few custom facts already, by adding the ruby scripts
> to a single module'slib/facter dir, but strangely they are not limiting
> themselves to the hosts to which the module is assigned. What is happening
> is that all custom facts are ran for all hosts (even the ones that don't
> have any relationship to that module), which is not exactly what I intended.
>
> Did I misunderstand the documentation? Is this type of fact-module mapping
> possible?
>
> Note: I have achieved a similar behaviour by using confine instructions in
> the custom facts scripts, but this goes against the intended purpose, since
> I'd like to tie the custom facts to the modules themselves and not have the
> mapping in the scripts.

Pluginsync distributes all modules lib dir in modulepath to the
client. It's not based on whether a class in a module is assigned to
the client. So yes custom facts get shipped to every system in that
environment.

Nan

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to