On Mon, Oct 22, 2012 at 9:31 AM, Hong <[email protected]> wrote: > Thanks for the reply from Daniel Pittman! Below are the details for my > questions.
No worries. Happy to help. :) >> 1. Is there available Razor object relationship diagram that describes >> relationships between Razor slices? > > Since Mongodb is schemaless, we want to know if there is any existing > relationship diagram or where to look for schema in the source code of > Razor. OK. You would have to look at the code and, please, be warned that the content *in the database* is pretty much guaranteed to change as we head toward 1.0. If you want to interact with the data Razor manages, you should do that through the REST API. >> 2. Does Razor make use of Mongo's JSON doc store features like >> automatic secondary indexing on all JSON attributes? > > The reason I asked this question is that we want to find more info on > the implementation of the inventory db underneath razor. We'd like to > understand it a bit more and sort of wondering if puppet may use it > directly as a fact terminus. Well, that is simple to answer: 1. Razor doesn't implement an inventory database, or any other sort of public database. It has some internal, private data that it uses to manage the provisioning life-cycle of nodes prior to handing them off to a broker. 2. Not really, depending on what you mean by "fact terminus": If you mean "can Puppet use that data when compiling catalogs", the answer is no: the Puppet master requires that fact data be submitted as part of the "REST" API when asking for a catalog for a node. You can't direct it to obtain that data from somewhere else. If you mean "can Puppet store and retrieve facts from the Razor database", then ... no, in the sense that Razor doesn't expose an API for that - but that is because that doesn't really make sense: Razor wants to hand a node off to Puppet, and is *finished* with it at that point. So, but the time Puppet could support fact data Razor is already done with it. If you could explain why you wanted to do that it might help give a better answer, but at a guess you really want to be using PuppetDB which *does* store and retrieve facts in a way that "inventory database" often describes. -- Daniel Pittman ⎋ Puppet Labs Developer – http://puppetlabs.com ♲ Made with 100 percent post-consumer electrons -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/puppet-dev?hl=en.
