On 2014-19-07 10:51, David Schmitt wrote:

[...snip...]
We will have a new catalog model (the result built by the new catalog
builder slated to replace the current compiler). There we have a richer
model for defining the information about resources. We also have a new
loader system that knows where code came from. Thus, anything loaded at
the environment level (i.e. node definitions) knows it is in a higher
layer.

Slick. The next question then is: How does the user know? ;-) And How
fine-grained are "levels"? Each entry on the module path? Will I be able
to query the puppetmaster for a report on which sources influenced (or
did not influence) a specific value?


The model is borrowed from OSGi. Each "component" has visibility into its own things, and on the things it depends. A component may have private things that are not visible to other components. (OSGi also has a "friend" concept that we did not implement, and we have not (yet?) implemented "re-publish" (i.e. that one module (A) has visibility into another (B) and making its public loadable entities available to those who depend only on A). For that to make sense we need a way to alias the things in (B) or something in (C) can not address them because it only knows about things in the a:: namespace. (Either that or that a component may publish things in other name spaces under certain conditions).

For the purpose of loading, view the environment as a component that all modules have visibility into. There is also a system "component" (i.e. puppet runtime), and a static/internal (functions and things generated; like the logging functions, data types etc.) that is visible to all.


[snip]


Good hunting!


Spear in one hand, axe in the other...
- henrik

--

Visit my Blog "Puppet on the Edge"
http://puppet-on-the-edge.blogspot.se/

--
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-dev/lqe3nd%24mvi%241%40ger.gmane.org.
For more options, visit https://groups.google.com/d/optout.

Reply via email to