class Vagrant::Plugin::V1::Host

Base class for a host in Vagrant. A host class contains functionality that is specific to a specific OS that is running Vagrant. This abstraction is done because there is some host-specific logic that Vagrant must do in some cases.

Public Class Methods

match?() click to toggle source

This returns true/false depending on if the current running system matches the host class.

@return [Boolean]

# File lib/vagrant/plugin/v1/host.rb, line 13
def self.match?
  nil
end
new(ui) click to toggle source

Initializes a new host class.

The only required parameter is a UI object so that the host objects have some way to communicate with the outside world.

@param [UI] ui UI for the hosts to output to.

# File lib/vagrant/plugin/v1/host.rb, line 34
def initialize(ui)
  @ui = ui
end
precedence() click to toggle source

The precedence of the host when checking for matches. This is to allow certain host such as generic OS’s (“Linux”, “BSD”, etc.) to be specified last.

The hosts with the higher numbers will be checked first.

If you’re implementing a basic host, you can probably ignore this.

# File lib/vagrant/plugin/v1/host.rb, line 24
def self.precedence
  5
end

Public Instance Methods

nfs?() click to toggle source

Returns true of false denoting whether or not this host supports NFS shared folder setup. This method ideally should verify that NFS is installed.

@return [Boolean]

# File lib/vagrant/plugin/v1/host.rb, line 43
def nfs?
  false
end
nfs_export(id, ip, folders) click to toggle source

Exports the given hash of folders via NFS.

@param [String] id A unique ID that is guaranteed to be unique to

match these sets of folders.

@param [String] ip IP of the guest machine. @param [Hash] folders Shared folders to sync.

# File lib/vagrant/plugin/v1/host.rb, line 53
def nfs_export(id, ip, folders)
end
nfs_prune(valid_ids) click to toggle source

Prunes any NFS exports made by Vagrant which aren’t in the set of valid ids given.

@param [Array<String>] valid_ids Valid IDs that should not be

pruned.
# File lib/vagrant/plugin/v1/host.rb, line 61
def nfs_prune(valid_ids)
end