Sha256: 2b4102f9e517bb587728d801feab7d39aef4e205309c65be2affbc3632afcd8a

Contents?: true

Size: 780 Bytes

Versions: 3

Compression:

Stored size: 780 Bytes

Contents

require 'digest/sha1'
require 'knife-solo/cookbook_manager'
require 'knife-solo/tools'

module KnifeSolo
  class Berkshelf
    include CookbookManager

    def self.gem_libraries
      %w[berkshelf]
    end

    def self.conf_file_name
      'Berksfile'
    end

    def install!
      path = berkshelf_path
      ui.msg "Installing Berkshelf cookbooks to '#{path}'..."
      ::Berkshelf::Berksfile.from_file('Berksfile').install(:path => path)
      path
    end

    def berkshelf_path
      KnifeSolo::Tools.config_value(config, :berkshelf_path) || default_path
    end

    def default_path
      File.join(::Berkshelf.berkshelf_path, 'knife-solo',
        Digest::SHA1.hexdigest(File.expand_path('.')))
    end

    def initial_config
      'site :opscode'
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
knife-solo-0.3.0 lib/knife-solo/berkshelf.rb
knife-solo-0.3.0.pre5 lib/knife-solo/berkshelf.rb
knife-solo-0.3.0.pre4 lib/knife-solo/berkshelf.rb