On Wed, Oct 29, 2014 at 02:09:25AM -0700, Gavin Williams wrote: > Sounds like The Foreman [1] might be a good option if you want to manage > 'should', not 'is'... > > [1] http://theforeman.org/
*nod* Thanks, I should look at that again; it's been a while. Unfortunately our internal abstraction isn't host/VM/node based at all; it's based on sites (i.e. foo.company.com is a site, as is bar.company.com), which have one or more associated nodes. Having read https://docs.puppetlabs.com/puppet/latest/reference/subsystem_catalog_compilation.html and poking around a bit, I've had the following additional thoughts: 1. External Facts ( https://docs.puppetlabs.com/facter/latest/custom_facts.html#external-facts ) 2. generate() + stdlib's loadyaml() to just grab the values out of a bunch of on-disk files via a shell script or something 3. Mush all the values into one tree *in Hiera*. Currently all the values are in hiera but split up, so one node might see: sites: alice: premium: true And another might see: sites: bob: premium: false But certain parts of the code need to see: sites: alice: premium: true bob: premium: false I could simply de-hierachicalize (lol) all such information so that it's in one big blob in hiera somewhere. That gets ugly, though, just because it's one giant file; it's a lot easier on my users when each site is its own file. I wonder if there's a way to tell hiera "Please load every file in this directory for every node"? -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/20141030002856.GC6484%40stodi.digitalkingdom.org. For more options, visit https://groups.google.com/d/optout.