Re: [Puppet Users] Help writing a custom fact

Michael Stahnke
2012-11-26T07:18:14Z

On Sun, Nov 25, 2012 at 11:00 PM, Walter Heck <walterheck@gmail.com>
wrote:
> I think you might be using the wrong tool for the job, but we need a
> little bit more information to determine that: What do you want to do
> with these facts once you have them in puppet?
>
> If you are managing websites with puppet, you should probably manage
> the folders themselves with puppet, removing your need for the fact.
>
> cheers,
>
> Walter
>
> On Sun, Nov 25, 2012 at 10:16 PM, frap <lee@brig.gs> wrote:
>> I''m trying to write a custom fact for Puppet, but I have next
to no Ruby
>> experience. I think what I''m trying to do is straightforward,
but because of
>> Facter''s key => value pairs model, it''s kind of
difficult.

Could you do something like website_count => XXXX ? Then you might not
need to list them out.  Either way, you can comma separate strings and
use things like split in Puppet (and maybe stdlib) to do some things.
I used dozens of custom facts in my environment in the past, so I
can''t tell you if this is *wrong* way per say.  It''s a way. Go
for it
until you find something better.

Also note, if you''re not really into writing ruby facts, you could use
something in facts.d that is provided via stdlib. That just reads
values from files.  You could write your fact in whatever language you
want, run it in cron or something and then have it dump results from
/etc/facter/facts.d or /etc/puppetlabs/facter/facts.d.

stdlib: http://forge.puppetlabs.com/puppetlabs/stdlib

>>
>> Each hosts I want the fact for has websites in /var/www/html/ - I want
to be
>> able to do the following:
>>
>> Have a fact called "websites" that will tell me how many
folders there are
>> under /var/www/html
>>
>> Have a list of facts called website_1, website_2, website_3 which will
tell
>> me the names of these sites. Either that or have an array (if
that''s even
>> possible) called website_names which will then list all the websites
under
>> that key.
>>
>> If possible, I''d like the fact to be able to figure out how
many websites
>> there are with the original "websites" fact and limit the
number of websites
>> underneath.
>>
>> Any help gratefully appreciated.
>>
>> --
>> You received this message because you are subscribed to the Google
Groups
>> "Puppet Users" group.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msg/puppet-users/-/XBkAAkifbZ4J.
>> To post to this group, send email to puppet-users@googlegroups.com.
>> To unsubscribe from this group, send email to
>> puppet-users+unsubscribe@googlegroups.com.
>> For more options, visit this group at
>> http://groups.google.com/group/puppet-users?hl=en.
>
>
>
> --
> Walter Heck
>
> --
> Check out my startup: Puppet training and consulting @
http://www.olindata.com
> Follow @olindata on Twitter and/or ''Like'' our Facebook
page at
> http://www.facebook.com/olindata