I was slightly surprised to see that there is no "gateway" fact. I
poked around and it seems easy enough to add but I'm running into a
problem... My gateway.rb looks like:

# gateway.rb

Facter.add("gateway") do
    setcode do
        begin
            Facter.lsbdistid
        rescue
            Facter.loadfacts()
        end
        distid = Facter.value('lsbdistid')
        if distid.match(/RedHatEnterprise|CentOS|Fedora/)
            gateway = %x{grep GATEWAY= /etc/sysconfig/network|sed -e
's/GATEWAY=//'}.chomp
        elsif distid.match(/Ubuntu|Debian/)
            gateway = %x{/bin/grep -E '^[     ]*gateway' /etc/network/
interfaces|/bin/sed -e 's/^[         ]*gateway[      ]//'}.chomp
        else
            gateway = "undefined"
        end
        gateway
    end
end

# end gateway.rb

I can see the fact on the client node (but only if I add "--puppet"):
# facter --puppet|grep gateway
gateway => 10.2.0.3
# facter|grep gateway
#

I can't seem to see the gateway fact for the client on the
puppetmasterd node though...

# grep gateway /var/lib/puppet/yaml/node/test.example.org.yaml
#

And when I run puppetd I get the following:
# puppetd -o -t
info: Retrieving plugin
err: Could not retrieve catalog from remote server: Error 400 on
SERVER: Failed to parse template syslog/syslog.conf.erb: Could not
find value for 'gateway' at /etc/puppet/modules/syslog/manifests/
init.pp:17 on node test.example.org
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run
#

I should note that syslog/syslog.conf.erb is a template that
references "<%= gateway %>".

Any ideas? I have "pluginsync = true" and I'm using 0.25.4 on both
nodes.

Scott

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-us...@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to