Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require 'facter'
- alias_lines = `ip addr | grep secondary`.split("\n")
- # facts will be will be an array of arrays in the form of ["10.10.41.113", "0", "3"]
- # where f[0] = ip, f[1] = interface, f[2] = alias
- ipdata = /^.*inet (.*)\/.*eth([0-9]+):([0-9]+)$/
- facts = alias_lines.map {|a| ipdata.match(a).captures}
- facts.each do |f|
- Facter.add("ipaddress_eth#{f[1]}_#{f[2]}") do
- setcode {f[0]}
- end
- #puts "ipaddress_eth#{f[1]}_#{f[2]} = " + Facter["ipaddress_eth#{f[1]}_#{f[2]}"].value
- end
Add Comment
Please, Sign In to add comment