On Sat, Sep 21, 2013 at 1:00 PM, John Julien <[email protected]> wrote:

> I'd like to start some discussion around how to implement
> https://projects.puppetlabs.com/issues/9546 (Plugin sync support for
> external facts)
>
> Since external facts can be any type of executable and additionally
> straight json and yaml, i'm not sure putting then under lib/ is the best
> place to make the pluginsync magic happen.   I was thinking it might make
> sense to add an extfact/ directory to the module structure that gets
> synchronized to $vardir/extfact which is then added to facters directory
> loader during the puppet run.
>
>
I think that sounds like the right approach. Is there a case where we
shouldn't copy certain external facts to a machine because either they
won't work or they would be unsafe (I'm specifically thinking windows vs
unix type things)? Based on the reasoning that you gave, maybe calling the
directories simply "facts/" and "$vardir/facts" would be better to promote
those as the way of adding new facts.


> So that's how to get the plugin magic to happen, now about providing
> expected results for facter.  If a user has external facts that are being
> synced with puppet, they are going to probably expect "facter --puppet" to
> show those facts.  So that's an update to load_puppet in facter.
>
>
Yep.

On a side question, should facter deprecate the "--puppet" option and
instead we should fix up "puppet facts" to be more useful? That has the
deployment advantage of removing the dependency cycle between puppet and
facter and I think for new users would make more sense (why do I have to
run facter to see what the puppet facts are?).


> There's also then the question of compatibility.  External facts were not
> supported in facter until 1.7.  Is there currently a compatibility
> relationship between puppet and facter, or would this be the first one?
>  What's the best way to handle this?  Hard code the pluginsync to provide a
> warning that external facts will not be available until they upgrade to
> facter 1.7+?
>
>
I would expect that anyone running a puppet that has this feature would
also be running a new facter. Is it a common occurrence to update puppet
but not facter? It is also possible that puppet just increases the version
of puppet it needs to >= 1.7.0.


> John
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Puppet Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/puppet-dev.
> For more options, visit https://groups.google.com/groups/opt_out.
>



-- 
Andrew Parker
[email protected]
Freenode: zaphod42
Twitter: @aparker42
Software Developer

*Join us at PuppetConf 2014, September 23-24 in San Francisco*

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-dev.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to