many more hosts converted
This commit is contained in:
parent
4cec8b48d9
commit
4d47dae5b9
|
@ -18,11 +18,6 @@ module VagrantPlugins
|
||||||
|
|
||||||
# Linux-specific helpers we need to determine paths that can
|
# Linux-specific helpers we need to determine paths that can
|
||||||
# be overriden.
|
# be overriden.
|
||||||
host_capability("arch", "nfs_apply_command") do
|
|
||||||
require_relative "cap/nfs"
|
|
||||||
Cap::NFS
|
|
||||||
end
|
|
||||||
|
|
||||||
host_capability("arch", "nfs_check_command") do
|
host_capability("arch", "nfs_check_command") do
|
||||||
require_relative "cap/nfs"
|
require_relative "cap/nfs"
|
||||||
Cap::NFS
|
Cap::NFS
|
||||||
|
|
|
@ -0,0 +1,34 @@
|
||||||
|
require "vagrant/util/subprocess"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module HostGentoo
|
||||||
|
module Cap
|
||||||
|
class NFS
|
||||||
|
def self.nfs_check_command(env)
|
||||||
|
if systemd?
|
||||||
|
return "/usr/sbin/systemctl status nfsd"
|
||||||
|
else
|
||||||
|
return "/etc/init.d/nfs status"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.nfs_start_command(env)
|
||||||
|
if systemd?
|
||||||
|
return "/usr/sbin/systemctl start nfsd rpc-mountd rpcbind"
|
||||||
|
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
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -1,39 +1,10 @@
|
||||||
require "vagrant"
|
require "vagrant"
|
||||||
require "vagrant/util/subprocess"
|
|
||||||
|
|
||||||
require Vagrant.source_root.join("plugins/hosts/linux/host")
|
|
||||||
|
|
||||||
module VagrantPlugins
|
module VagrantPlugins
|
||||||
module HostGentoo
|
module HostGentoo
|
||||||
class Host < VagrantPlugins::HostLinux::Host
|
class Host < Vagrant.plugin("2", :host)
|
||||||
def self.match?
|
def self.detect?(env)
|
||||||
return File.exists?("/etc/gentoo-release")
|
File.exists?("/etc/gentoo-release")
|
||||||
end
|
|
||||||
|
|
||||||
# Normal, mid-range precedence.
|
|
||||||
def self.precedence
|
|
||||||
5
|
|
||||||
end
|
|
||||||
|
|
||||||
def initialize(*args)
|
|
||||||
super
|
|
||||||
|
|
||||||
@nfs_apply_command = "/usr/sbin/exportfs -r"
|
|
||||||
if systemd?
|
|
||||||
@nfs_check_command = "/usr/bin/systemctl status nfsd"
|
|
||||||
@nfs_start_command = "/usr/bin/systemctl start nfsd rpc-mountd rpcbind"
|
|
||||||
else
|
|
||||||
@nfs_check_command = "/etc/init.d/nfs status"
|
|
||||||
@nfs_start_command = "/etc/init.d/nfs restart"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
protected
|
|
||||||
|
|
||||||
# Check for systemd presence from current processes.
|
|
||||||
def systemd?
|
|
||||||
result = Vagrant::Util::Subprocess.execute("ps", "-o", "comm=", "1")
|
|
||||||
return result.stdout.chomp == "systemd"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -6,10 +6,23 @@ module VagrantPlugins
|
||||||
name "Gentoo host"
|
name "Gentoo host"
|
||||||
description "Gentoo host support."
|
description "Gentoo host support."
|
||||||
|
|
||||||
host("gentoo") do
|
host("gentoo", "linux") do
|
||||||
require File.expand_path("../host", __FILE__)
|
require_relative "host"
|
||||||
Host
|
Host
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Linux-specific helpers we need to determine paths that can
|
||||||
|
# be overriden.
|
||||||
|
host_capability("gentoo", "nfs_check_command") do
|
||||||
|
require_relative "cap/nfs"
|
||||||
|
Cap::NFS
|
||||||
|
end
|
||||||
|
|
||||||
|
host_capability("gentoo", "nfs_start_command") do
|
||||||
|
require_relative "cap/nfs"
|
||||||
|
Cap::NFS
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
module VagrantPlugins
|
||||||
|
module HostOpenSUSE
|
||||||
|
module Cap
|
||||||
|
class NFS
|
||||||
|
def self.nfs_check_command(env)
|
||||||
|
"service nfsserver status"
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.nfs_start_command(env)
|
||||||
|
"service nfsserver start"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -2,12 +2,10 @@ require "pathname"
|
||||||
|
|
||||||
require "vagrant"
|
require "vagrant"
|
||||||
|
|
||||||
require Vagrant.source_root.join("plugins/hosts/linux/host")
|
|
||||||
|
|
||||||
module VagrantPlugins
|
module VagrantPlugins
|
||||||
module HostOpenSUSE
|
module HostOpenSUSE
|
||||||
class Host < VagrantPlugins::HostLinux::Host
|
class Host < Vagrant.plugin("2", :host)
|
||||||
def self.match?
|
def self.detect?(env)
|
||||||
release_file = Pathname.new("/etc/SuSE-release")
|
release_file = Pathname.new("/etc/SuSE-release")
|
||||||
|
|
||||||
if release_file.exist?
|
if release_file.exist?
|
||||||
|
@ -18,19 +16,6 @@ module VagrantPlugins
|
||||||
|
|
||||||
false
|
false
|
||||||
end
|
end
|
||||||
|
|
||||||
# Normal, mid-range precedence.
|
|
||||||
def self.precedence
|
|
||||||
5
|
|
||||||
end
|
|
||||||
|
|
||||||
def initialize(*args)
|
|
||||||
super
|
|
||||||
|
|
||||||
@nfs_apply_command = "/usr/sbin/exportfs -r"
|
|
||||||
@nfs_check_command = "service nfsserver status"
|
|
||||||
@nfs_start_command = "service nfsserver start"
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -6,10 +6,22 @@ module VagrantPlugins
|
||||||
name "OpenSUSE host"
|
name "OpenSUSE host"
|
||||||
description "OpenSUSE host support."
|
description "OpenSUSE host support."
|
||||||
|
|
||||||
host("opensuse") do
|
host("opensuse", "linux") do
|
||||||
require File.expand_path("../host", __FILE__)
|
require_relative "host"
|
||||||
Host
|
Host
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Linux-specific helpers we need to determine paths that can
|
||||||
|
# be overriden.
|
||||||
|
host_capability("opensuse", "nfs_check_command") do
|
||||||
|
require_relative "cap/nfs"
|
||||||
|
Cap::NFS
|
||||||
|
end
|
||||||
|
|
||||||
|
host_capability("opensuse", "nfs_start_command") do
|
||||||
|
require_relative "cap/nfs"
|
||||||
|
Cap::NFS
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,45 @@
|
||||||
|
require "pathname"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module HostRedHat
|
||||||
|
module Cap
|
||||||
|
class NFS
|
||||||
|
def self.nfs_check_command(env)
|
||||||
|
"#{nfs_server_binary} status"
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.nfs_start_command(env)
|
||||||
|
"#{nfs_server_binary} start"
|
||||||
|
end
|
||||||
|
|
||||||
|
protected
|
||||||
|
|
||||||
|
def self.nfs_server_binary
|
||||||
|
nfs_server_binary = "/etc/init.d/nfs"
|
||||||
|
|
||||||
|
# On Fedora 16+, systemd replaced init.d, so we have to use the
|
||||||
|
# proper NFS binary. This checks to see if we need to do that.
|
||||||
|
release_file = Pathname.new("/etc/redhat-release")
|
||||||
|
begin
|
||||||
|
release_file.open("r:ISO-8859-1:UTF-8") do |f|
|
||||||
|
fedora_match = /Fedora.* release ([0-9]+)/.match(f.gets)
|
||||||
|
if fedora_match
|
||||||
|
version_number = fedora_match[1].to_i
|
||||||
|
if version_number >= 16
|
||||||
|
# "service nfs-server" will redirect properly to systemctl
|
||||||
|
# when "service nfs-server restart" is called.
|
||||||
|
nfs_server_binary = "/usr/sbin/service nfs-server"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
rescue Errno::ENOENT
|
||||||
|
# File doesn't exist, not a big deal, assume we're on a
|
||||||
|
# lower version.
|
||||||
|
end
|
||||||
|
|
||||||
|
nfs_server_binary
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -2,12 +2,10 @@ require "pathname"
|
||||||
|
|
||||||
require "vagrant"
|
require "vagrant"
|
||||||
|
|
||||||
require Vagrant.source_root.join("plugins/hosts/linux/host")
|
|
||||||
|
|
||||||
module VagrantPlugins
|
module VagrantPlugins
|
||||||
module HostRedHat
|
module HostRedHat
|
||||||
class Host < VagrantPlugins::HostLinux::Host
|
class Host < Vagrant.plugin("2", :host)
|
||||||
def self.match?
|
def self.detect?(env)
|
||||||
release_file = Pathname.new("/etc/redhat-release")
|
release_file = Pathname.new("/etc/redhat-release")
|
||||||
|
|
||||||
if release_file.exist?
|
if release_file.exist?
|
||||||
|
@ -15,47 +13,17 @@ module VagrantPlugins
|
||||||
contents = f.gets
|
contents = f.gets
|
||||||
return true if contents =~ /^Fedora/ # Fedora
|
return true if contents =~ /^Fedora/ # Fedora
|
||||||
return true if contents =~ /^CentOS/ # CentOS
|
return true if contents =~ /^CentOS/ # CentOS
|
||||||
return true if contents =~ /^Enterprise Linux Enterprise Linux/ # Oracle Linux < 5.3
|
|
||||||
return true if contents =~ /^Red Hat Enterprise Linux/ # Red Hat Enterprise Linux and Oracle Linux >= 5.3
|
# Oracle Linux < 5.3
|
||||||
|
return true if contents =~ /^Enterprise Linux Enterprise Linux/
|
||||||
|
|
||||||
|
# Red Hat Enterprise Linux and Oracle Linux >= 5.3
|
||||||
|
return true if contents =~ /^Red Hat Enterprise Linux/
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
false
|
false
|
||||||
end
|
end
|
||||||
|
|
||||||
# Normal, mid-range precedence.
|
|
||||||
def self.precedence
|
|
||||||
5
|
|
||||||
end
|
|
||||||
|
|
||||||
def initialize(*args)
|
|
||||||
super
|
|
||||||
|
|
||||||
nfs_server_binary = "/etc/init.d/nfs"
|
|
||||||
|
|
||||||
# On Fedora 16+, systemd replaced init.d, so we have to use the
|
|
||||||
# proper NFS binary. This checks to see if we need to do that.
|
|
||||||
release_file = Pathname.new("/etc/redhat-release")
|
|
||||||
begin
|
|
||||||
release_file.open("r:ISO-8859-1:UTF-8") do |f|
|
|
||||||
fedora_match = /Fedora.* release ([0-9]+)/.match(f.gets)
|
|
||||||
if fedora_match
|
|
||||||
version_number = fedora_match[1].to_i
|
|
||||||
if version_number >= 16
|
|
||||||
# "service nfs-server" will redirect properly to systemctl
|
|
||||||
# when "service nfs-server restart" is called.
|
|
||||||
nfs_server_binary = "/usr/sbin/service nfs-server"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
rescue Errno::ENOENT
|
|
||||||
# File doesn't exist, not a big deal, assume we're on a
|
|
||||||
# lower version.
|
|
||||||
end
|
|
||||||
@nfs_apply_command = "/usr/sbin/exportfs -r"
|
|
||||||
@nfs_check_command = "#{nfs_server_binary} status"
|
|
||||||
@nfs_start_command = "#{nfs_server_binary} start"
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -6,10 +6,22 @@ module VagrantPlugins
|
||||||
name "Red Hat host"
|
name "Red Hat host"
|
||||||
description "Red Hat host support."
|
description "Red Hat host support."
|
||||||
|
|
||||||
host("redhat") do
|
host("redhat", "linux") do
|
||||||
require File.expand_path("../host", __FILE__)
|
require File.expand_path("../host", __FILE__)
|
||||||
Host
|
Host
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Linux-specific helpers we need to determine paths that can
|
||||||
|
# be overriden.
|
||||||
|
host_capability("redhat", "nfs_check_command") do
|
||||||
|
require_relative "cap/nfs"
|
||||||
|
Cap::NFS
|
||||||
|
end
|
||||||
|
|
||||||
|
host_capability("redhat", "nfs_start_command") do
|
||||||
|
require_relative "cap/nfs"
|
||||||
|
Cap::NFS
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
module VagrantPlugins
|
||||||
|
module HostSlackware
|
||||||
|
module Cap
|
||||||
|
class NFS
|
||||||
|
def self.nfs_check_command(env)
|
||||||
|
"pidof nfsd >/dev/null"
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.nfs_start_command(env)
|
||||||
|
"/etc/rc.d/rc.nfsd start"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -1,25 +1,11 @@
|
||||||
require "vagrant"
|
require "vagrant"
|
||||||
|
|
||||||
require Vagrant.source_root.join("plugins/hosts/linux/host")
|
|
||||||
|
|
||||||
module VagrantPlugins
|
module VagrantPlugins
|
||||||
module HostSlackware
|
module HostSlackware
|
||||||
class Host < VagrantPlugins::HostLinux::Host
|
class Host < Vagrant.plugin("2", :host)
|
||||||
def self.match?
|
def self.detect?(env)
|
||||||
return File.exists?("/etc/slackware-release") || Dir.glob("/usr/lib/setup/Plamo-*").length > 0
|
return File.exists?("/etc/slackware-release") ||
|
||||||
end
|
!Dir.glob("/usr/lib/setup/Plamo-*").empty?
|
||||||
|
|
||||||
# Normal, mid-range precedence.
|
|
||||||
def self.precedence
|
|
||||||
5
|
|
||||||
end
|
|
||||||
|
|
||||||
def initialize(*args)
|
|
||||||
super
|
|
||||||
|
|
||||||
@nfs_apply_command = "/usr/sbin/exportfs -r"
|
|
||||||
@nfs_check_command = "pidof nfsd > /dev/null"
|
|
||||||
@nfs_start_command = "/etc/rc.d/rc.nfsd start"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -6,10 +6,22 @@ module VagrantPlugins
|
||||||
name "Slackware host"
|
name "Slackware host"
|
||||||
description "Slackware and derivertives host support."
|
description "Slackware and derivertives host support."
|
||||||
|
|
||||||
host("slackware") do
|
host("slackware", "linux") do
|
||||||
require File.expand_path("../host", __FILE__)
|
require File.expand_path("../host", __FILE__)
|
||||||
Host
|
Host
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Linux-specific helpers we need to determine paths that can
|
||||||
|
# be overriden.
|
||||||
|
host_capability("slackware", "nfs_check_command") do
|
||||||
|
require_relative "cap/nfs"
|
||||||
|
Cap::NFS
|
||||||
|
end
|
||||||
|
|
||||||
|
host_capability("slackware", "nfs_start_command") do
|
||||||
|
require_relative "cap/nfs"
|
||||||
|
Cap::NFS
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue