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 [email protected].
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.

Reply via email to