Uploaded image for project: 'Puppet'
  1. Puppet
  2. PUP-2715

custom facts in module's facts.d directory should only be distributed to clients that use the module

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Normal
    • Resolution: Won't Fix
    • Affects Version/s: PUP 3.6.1
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Environment:

      CentOS 6.5, puppet 3.6.1, ruby 1.8.7

    • Template:

      Description

      Custom facts placed in environments/production/mymodule/facts.d are distributed to all nodes even if the node does not use module in its node definition. It seems to me that this behavior doesn't make sense, nor is it (in my opinion) what would be the intuitive behavior.

      I have a custom fact that assumes the presence of vpn addresses that returns an empty set when there isn't one. This is obviously only needed on nodes that use the my vpn module. But on all servers that don't have a vpn address I get the warning:

      Fact file /var/lib/puppet/facts.d/vpn_addresses was parsed but returned an empty data set

      Why not have a global facts.d directory here:
      environments/production/facts.d

      And a per module facts.d directory here:
      environments/production/modules/mymodule/facts.d

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                kylo Kylo Ginsberg
                Reporter:
                ranamalo Banio Carpenter
                QA Contact:
                Kurt Wall
              • Votes:
                2 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Zendesk Support