Sha256: eb6bb6b0e8c8478a6847d13467de2492fd7058ba3d354720488c33bfa43fb3d2

Contents?: true

Size: 1.98 KB

Versions: 40

Compression:

Stored size: 1.98 KB

Contents

module Vagrant
  module Hosts
    # Interface for classes which house behavior that is specific
    # to the host OS that is running Vagrant.
    #
    # By default, Vagrant will attempt to choose the best option
    # for your machine, but the host may also be explicitly set
    # via the `config.vagrant.host` parameter.
    class Base
      # This returns true/false depending on if the current running system
      # matches the host class.
      #
      # @return [Boolean]
      def self.match?
        nil
      end

      # 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.
      def self.precedence
        5
      end

      # 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.
      def initialize(ui)
        @ui = ui
      end

      # 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]
      def nfs?
        false
      end

      # 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.
      def nfs_export(id, ip, folders)
      end

      # 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.
      def nfs_prune(valid_ids)
      end
    end
  end
end

Version data entries

40 entries across 40 versions & 6 rubygems

Version Path
bmhatfield-vagrant-1.0.10 lib/vagrant/hosts/base.rb
bmhatfield-vagrant-1.0.9 lib/vagrant/hosts/base.rb
bmhatfield-vagrant-1.0.8 lib/vagrant/hosts/base.rb
bmhatfield-vagrant-1.0.7 lib/vagrant/hosts/base.rb
vagrantup-1.0.7 lib/vagrant/hosts/base.rb
vagrantup-1.0.6 lib/vagrant/hosts/base.rb
vagrantup-1.0.5 lib/vagrant/hosts/base.rb
vagrantup-1.0.4 lib/vagrant/hosts/base.rb
vagrantup-1.0.3 lib/vagrant/hosts/base.rb
vagrantup-1.0.2 lib/vagrant/hosts/base.rb
vagrantup-1.0.1 lib/vagrant/hosts/base.rb
vagrantup-1.0.0 lib/vagrant/hosts/base.rb
vagrantup-0.9.99.2 lib/vagrant/hosts/base.rb
vagrantup-0.9.99.1 lib/vagrant/hosts/base.rb
vagrantup-0.9.7 lib/vagrant/hosts/base.rb
vagrantup-0.9.6 lib/vagrant/hosts/base.rb
vagrantup-0.9.5 lib/vagrant/hosts/base.rb
vagrantup-0.9.4 lib/vagrant/hosts/base.rb
vagrantup-0.9.3 lib/vagrant/hosts/base.rb
vagrantup-0.9.2 lib/vagrant/hosts/base.rb