Sha256: ded775c27acacfd0d58488392c30a9914efe2c1095b0ea7e47a3380dc276efc1

Contents?: true

Size: 1.97 KB

Versions: 11

Compression:

Stored size: 1.97 KB

Contents

module Berkshelf
  module Vagrant
    # @author Jamie Winsor <jamie@vialstudios.com>
    #
    # Middleware stacks for use with Vagrant
    module Middleware
      class << self
        # Return the Berkshelf install middleware stack. When placed in the action chain
        # this stack will find retrieve and resolve the cookbook dependencies describe
        # in your configured Berksfile.
        #
        # Cookbooks will installed into a temporary directory, called a Shelf, and mounted
        # into the VM. This mounted path will be appended to the chef_solo.cookbooks_path value.
        #
        # @return [::Vagrant::Action::Builder]
        def install
          @install ||= ::Vagrant::Action::Builder.new do
            use Berkshelf::Vagrant::Action::SetUI
            use Berkshelf::Vagrant::Action::Install
          end
        end

        # Return the Berkshelf upload middleware stack. When placed in the action chain
        # this stack will upload cookbooks to a Chef Server if the Chef-Client provisioner
        # is used. The Chef Server where the cookbooks will be uploaded to is the same Chef
        # Server used in the Chef-Client provisioner.
        #
        # Nothing will be done if the Chef-Solo provisioner is used.
        #
        # @return [::Vagrant::Action::Builder]
        def upload
          @upload ||= ::Vagrant::Action::Builder.new do
            use Berkshelf::Vagrant::Action::SetUI
            use Berkshelf::Vagrant::Action::Upload
          end
        end

        # Return the Berkshelf clean middleware stack. When placed in the action chain
        # this stack will clean up any temporary directories or files created by the other
        # middleware stacks.
        #
        # @return [::Vagrant::Action::Builder]
        def clean
          @clean ||= ::Vagrant::Action::Builder.new do
            use Berkshelf::Vagrant::Action::SetUI
            use Berkshelf::Vagrant::Action::Clean
          end
        end
      end      
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
berkshelf-1.0.0.rc1 lib/berkshelf/vagrant/middleware.rb
berkshelf-0.6.0.beta4 lib/berkshelf/vagrant/middleware.rb
berkshelf-0.6.0.beta3 lib/berkshelf/vagrant/middleware.rb
berkshelf-0.6.0.beta2 lib/berkshelf/vagrant/middleware.rb
berkshelf-0.5.1 lib/berkshelf/vagrant/middleware.rb
berkshelf-0.6.0.beta1 lib/berkshelf/vagrant/middleware.rb
berkshelf-0.5.0 lib/berkshelf/vagrant/middleware.rb
berkshelf-0.5.0.rc4 lib/berkshelf/vagrant/middleware.rb
berkshelf-0.5.0.rc3 lib/berkshelf/vagrant/middleware.rb
berkshelf-0.5.0.rc2 lib/berkshelf/vagrant/middleware.rb
berkshelf-0.5.0.rc1 lib/berkshelf/vagrant/middleware.rb