Sha256: 0e8f3230714531b07055038f45933d710ba634673f0f5fa3d7d7b61ae5a0ae60

Contents?: true

Size: 1.1 KB

Versions: 1

Compression:

Stored size: 1.1 KB

Contents

begin
  require "vagrant"
rescue LoadError
  raise "The Vagrant Berkshelf plugin must be run within Vagrant."
end

require 'berkshelf'
require 'berkshelf/vagrant/version'
require 'berkshelf/vagrant/errors'
require 'tmpdir'
require 'fileutils'

module Berkshelf
  # @author Jamie Winsor <reset@riotgames.com>
  module Vagrant
    autoload :Action, 'berkshelf/vagrant/action'
    autoload :Config, 'berkshelf/vagrant/config'
    autoload :Env, 'berkshelf/vagrant/env'
    autoload :EnvHelpers, 'berkshelf/vagrant/env_helpers'

    class << self
      # The path to where shelfs are created on the host machine to be mounted in
      # Vagrant guests
      #
      # @return [String]
      def shelf_path
        File.join(Berkshelf.berkshelf_path, 'vagrant')
      end

      # Generate a new shelf to be mounted in a Vagrant guest
      #
      # @return [String]
      #   path to the generated shelf
      def mkshelf
        unless File.exist?(shelf_path)
          FileUtils.mkdir_p(shelf_path)
        end

        Dir.mktmpdir('berkshelf-', shelf_path)
      end
    end
  end
end

require 'berkshelf/vagrant/plugin'

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
vagrant-berkshelf-1.2.0 lib/berkshelf/vagrant.rb