2016-06-23 02:08:02 +00:00
|
|
|
module VagrantPlugins
|
|
|
|
module GuestLinux
|
|
|
|
module Cap
|
|
|
|
class NetworkInterfaces
|
|
|
|
# Get network interfaces as a list. The result will be something like:
|
|
|
|
#
|
|
|
|
# eth0\nenp0s8\nenp0s9
|
|
|
|
#
|
|
|
|
# @return [Array<String>]
|
2016-06-26 15:41:16 +00:00
|
|
|
def self.network_interfaces(machine, path = "/sbin/ip")
|
2016-06-23 02:08:02 +00:00
|
|
|
s = ""
|
2016-06-26 15:41:16 +00:00
|
|
|
machine.communicate.sudo("#{path} -o -0 addr | grep -v LOOPBACK | awk '{print $2}' | sed 's/://'") do |type, data|
|
2016-06-23 02:08:02 +00:00
|
|
|
s << data if type == :stdout
|
|
|
|
end
|
|
|
|
s.split("\n")
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|