vagrant/plugins/hosts/gentoo/cap/nfs.rb

47 lines
1.2 KiB
Ruby
Raw Normal View History

2014-01-08 05:11:59 +00:00
require "vagrant/util/subprocess"
require "vagrant/util/which"
2014-01-08 05:11:59 +00:00
module VagrantPlugins
module HostGentoo
module Cap
class NFS
def self.nfs_check_command(env)
if systemd?
2014-08-31 08:40:28 +00:00
return "#{systemctl_path} status nfs-server.service"
2014-01-08 05:11:59 +00:00
else
return "/etc/init.d/nfs status"
end
end
def self.nfs_start_command(env)
if systemd?
2014-08-31 08:40:28 +00:00
return "#{systemctl_path} start rpcbind nfs-server.service"
2014-01-08 05:11:59 +00:00
else
return "/etc/init.d/nfs restart"
end
end
protected
# This tests to see if systemd is used on the system. This is used
# in newer versions of Arch, and requires a change in behavior.
def self.systemd?
result = Vagrant::Util::Subprocess.execute("ps", "-o", "comm=", "1")
return result.stdout.chomp == "systemd"
end
def self.systemctl_path
path = Vagrant::Util::Which.which("systemctl")
return path if path
folders = ["/usr/bin", "/usr/sbin"]
folders.each do |folder|
path = "#{folder}/systemctl"
return path if File.file?(path)
end
end
2014-01-08 05:11:59 +00:00
end
end
end
end