Fantastic !
Thanks, Gary. I knew it had to be some bone-head boo-boo like that.
I trimmed it down further:
#Return the broadcast address of eth0
require 'facter'
Facter.add("broadcast") do
setcode ("ipcalc -s -b #{Facter.value('ipaddress')}
#{Facter.value('netmask')} | cut -d= -f2")
end
“Sometimes I think the surest sign that intelligent life exists elsewhere in
the universe is that none of it has tried to contact us.”
Bill Waterson (Calvin & Hobbes)
----- Gary Larizza <[email protected]> wrote:
> On Tue, May 29, 2012 at 8:55 AM, Dan White <[email protected]> wrote:
>
> > I'm a custom fact n00b :(
> >
> > ---broadcast.rb:
> > #Return the broadcast address of eth0
> > require 'facter'
> >
> > Facter.add("broadcast") do
> > ipaddr = Facter.value('ipaddress')
> > nmask = Facter.value('netmask')
> > setcode do
> > Facter::Util::Resolution.exec{"ipcalc -s -b #{ipaddr} #{nmask} |
> > cut -d= -f2"}
> >
>
> Try using parenthesis instead of curly braces in
> Facter::Util::Resolution.exec ()
>
> You could ALSO do: setcode("ipcalc -s -b #{ipaddr} #{nmask} | cut -d=
> -f2")
> Passing a string to setcode instead of a block pipes the command to
> Facter::Util::Resolution.exec()
>
>
> end
> > end
> >
> > ...and when I run puppet apply, I get:
> >
> > Could not retrieve broadcast: wrong number of arguments (0 for 1)
> >
> > Puppet 2.7.12
> > ruby 1.8.7 (patchlevel 352) [x86_64-linux]
> >
>
> --
>
> Gary Larizza
> Professional Services Engineer
> Puppet Labs
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" 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-users?hl=en.