Facter.add("bonding") do
  confine :kernel => :linux
  setcode do
    "present" if File.directory?('/proc/net/bonding')
  end
end

Facter.add("bondedinterfaces") do
  confine :bonding => :present
  setcode do
    bonded_interfaces = Dir.entries('/proc/net/bonding').collect do | file |
      file unless file == "." or file == ".."
    end
    bonded_interfaces.compact.join(" ")
  end
end

