vagrant/plugins/guests/linux/cap/shell_expand_guest_path.rb

27 lines
728 B
Ruby
Raw Normal View History

2013-04-04 06:01:43 +00:00
module VagrantPlugins
module GuestLinux
module Cap
class ShellExpandGuestPath
def self.shell_expand_guest_path(machine, path)
real_path = nil
machine.communicate.execute("printf #{path}") do |type, data|
2013-04-04 06:01:43 +00:00
if type == :stdout
real_path ||= ""
real_path += data
end
end
if !real_path
# If no real guest path was detected, this is really strange
# and we raise an exception because this is a bug.
raise LinuxShellExpandFailed
2013-04-04 06:01:43 +00:00
end
# Chomp the string so that any trailing newlines are killed
return real_path.chomp
end
end
end
end
end