diff --git a/lib/vagrant/action/vm/nfs.rb b/lib/vagrant/action/vm/nfs.rb index 0bb171e45..861c3ef3e 100644 --- a/lib/vagrant/action/vm/nfs.rb +++ b/lib/vagrant/action/vm/nfs.rb @@ -60,19 +60,19 @@ module Vagrant # task. def extract_folders # Load the NFS enabled shared folders - @folders = @env[:vm].config.vm.shared_folders.inject({}) do |acc, data| - key, opts = data - + @folders = {} + @env[:vm].config.vm.shared_folders.each do |name, opts| if opts[:nfs] # Duplicate the options, set the hostpath, and set disabled on the original # options so the ShareFolders middleware doesn't try to mount it. - acc[key] = opts.dup - acc[key][:hostpath] = File.expand_path(opts[:hostpath], @env[:root_path]) + opts = opts.dup + opts[:hostpath] = File.expand_path(opts[:hostpath], @env[:root_path]) opts[:disabled] = true + @folders[key] = opts end - - acc end + + @folders end # Prepares the settings for the NFS folders, such as setting the diff --git a/lib/vagrant/hosts/bsd.rb b/lib/vagrant/hosts/bsd.rb index 0e8c85800..da79a3422 100644 --- a/lib/vagrant/hosts/bsd.rb +++ b/lib/vagrant/hosts/bsd.rb @@ -56,14 +56,10 @@ module Vagrant return if !File.exist?("/etc/exports") retryable(:tries => 10, :on => TypeError) do - system("cat /etc/exports | grep 'VAGRANT-BEGIN: #{id}' > /dev/null 2>&1") - - if $?.to_i == 0 - # Use sed to just strip out the block of code which was inserted - # by Vagrant, and restart NFS. - system("sudo sed -e '/^# VAGRANT-BEGIN: #{id}/,/^# VAGRANT-END: #{id}/ d' -ibak /etc/exports") - system(@nfs_restart_command) - end + # Use sed to just strip out the block of code which was inserted + # by Vagrant, and restart NFS. + system("sudo sed -e '/^# VAGRANT-BEGIN: #{id}/,/^# VAGRANT-END: #{id}/ d' -ibak /etc/exports") + system(@nfs_restart_command) end end end diff --git a/lib/vagrant/hosts/linux.rb b/lib/vagrant/hosts/linux.rb index f7107d2cf..c6e4a755d 100644 --- a/lib/vagrant/hosts/linux.rb +++ b/lib/vagrant/hosts/linux.rb @@ -52,13 +52,10 @@ module Vagrant def nfs_cleanup(id) return if !File.exist?("/etc/exports") - system("cat /etc/exports | grep 'VAGRANT-BEGIN: #{id}' > /dev/null 2>&1") - if $?.to_i == 0 - # Use sed to just strip out the block of code which was inserted - # by Vagrant - system("sudo sed -e '/^# VAGRANT-BEGIN: #{id}/,/^# VAGRANT-END: #{id}/ d' -ibak /etc/exports") - end + # Use sed to just strip out the block of code which was inserted + # by Vagrant + system("sudo sed -e '/^# VAGRANT-BEGIN: #{id}/,/^# VAGRANT-END: #{id}/ d' -ibak /etc/exports") end end end