Luke Kanies <[email protected]> writes:
> On May 28, 2010, at 4:46 AM, Daniel Pittman wrote:
>> Luke Kanies <[email protected]> writes:
>>
>>> External data (that is, data specified outside of Puppet manifests) seems
>>> to keep coming up.
>>
>> If you forgive me banging my own drum, it isn't just /external/ data; access
>> to data that puppet knows, like facts of other nodes, is equally valuable in
>> some use cases.
>>
>> eg: "give me an array of fqdn facts for hosts including example::service"
>>
>> I hit that when I run into trying to build multi-system services, for
>> availability or scalability, but questions of this sort are relatively
>> common
>> in the user list too.
>
> This is a pretty different use case, but it's one I'm interested in solving,
> also. However, I want to make sure it's not just a case of 'make a database
> call and stick the results in an array'. You say you're banging your own
> drum here - do you solve this now?
Sorry, that was a poor choice of words. I meant "agitating for a solution to
my problem, which is similar-but-not-identical to the one being discussed."
Which is to say: I don't currently have a solution to this other than this
horror:
1. on the source of each bit of information export a file tagged
"cross-host-info", which is imported on the puppetmaster. It includes an
extra "tag" in the target path that is used later. (separate from the
puppet storeconfig tag stuff.)
2. in the ERB template for each target machine scan those imported files on
the puppetmaster, then build the template based on that.
(...or use generate to extract the data the same way.)
This gives me, in essence:
$array = get_cross_host_fact('hostname', 'some-useful-tag')
I think the things I would want are "get the hostname fact of everything that
matches this expression", and "get the hostname, ipaddress, and foo facts
of..."
The last would be an obvious "return an array of hashes" thing, and probably
when that lands.
I don't /think/, right now, that I have a use-case for anything more
complicated than that. I certainly could just use the extlookup tool and CSV
files to achieve the same results — just without the "dynamic" part.
Regards,
Daniel
--
✣ Daniel Pittman ✉ [email protected] ☎ +61 401 155 707
♽ 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.