Nigel Kersten wrote:

On Thu, Feb 24, 2011 at 1:29 PM, Thomas Bellman <bell...@nsc.liu.se> wrote:

I think not using 'source => "puppet:///..."' references, but instead
using 'content => file(...)' or 'content => template(...)' everywhere,
would do the trick.

Except you end up shipping the file contents *every* time in the
catalog. This kind of sucks.

Well, you got to pick your poison: either that, or risk a (possibly
compromised and malicious) client managing to trick the master into
giving out information from an environment that client should not
get information from.


Except if you have custom facts that differ between environments,
or custom type providers that differ between environments.  Then
you are screwed.

No you're not? If you're using modules properly with environments, the
facts/types/providers are all pluginsync'd from the lib/ subdirectory
contents of all the modules in your environment.

Of all the modules in the environment the *client* asks for.  Not
the environment the external node classifier says the client should
be provided from.  The master does not run the classifier when the
client requests to download plugins, and thus cannot override the
environment the client specifies.

Or are the file requests for downloading plugins different from
other file requests, so they *do* trigger the external classifier?
I'll admit that I haven't actually tested this or looked at what
the code does in this case, but I haven't gotten the impression
it *is* run in that case.

The facts have no bearing on specifying content instead of source.

Exactly.  Using content=> instead of source=> is not a workaround
for bug 3910 when dealing with per-environment plugins.  So if you
*do* have different plugins in different environments, and those
contain secrets the wrong client must not know, then I believe you
*are* screwed, because I don't think there is any workaround for
that.  (Except actually fixing bug 3910 properly, by running the
external node classifier for each and every client request...)

Am I missing something?


        /Bellman

--
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