Advertisement
Guest User

Untitled

a guest
Jul 21st, 2012
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.75 KB | None | 0 0
  1. INTERFACE_MAP = {
  2. :linux => {
  3. :methods => {
  4. :ifconfig => {
  5. :exec => '/sbin/ifconfig',
  6. :token => 'inet addr: ',
  7. },
  8. :ip => {
  9. :exec => '/sbin/ip addr show',
  10. :token => 'inet ',
  11. },
  12. },
  13. },
  14. }
  15.  
  16. def self.find_exec
  17.  
  18. kernel = Facter.value(:kernel).downcase.to_sym
  19. unless map = INTERFACE_MAP[kernel] || INTERFACE_MAP.values.find { |tmp| tmp[:aliases] and tmp[:aliases].include?(kernel)
  20. }
  21. return []
  22. end
  23. methods = map[:methods]
  24. methods.each do |method|
  25. # Strip back to just the file
  26. file = method[:exec].split(' ').first
  27. if FileTest.exists?(file)
  28. return method
  29. break
  30. end
  31. end
  32. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement