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.

Reply via email to