Sha256: b42de32ef4420827cab5237aad2841cb4257ef985202fc5f451dbe5d167250fe

Contents?: true

Size: 1.02 KB

Versions: 11

Compression:

Stored size: 1.02 KB

Contents

require 'geminstaller'

Capistrano::Configuration.instance(:must_exist).load do

  def pluck_accessor_hash(obj, attrs = [])
    ret = {}
    attrs.each do |attr|
      ret[attr] = obj.send(attr)
    end
    ret
  end

  alias :depend_without_gemfile :depend

  # Auxiliary helper method for the `deploy:check' task. Lets you set up your
  # own dependencies.
  def depend(location, type, *args)
    if type == :gemfile
      registry = GemInstaller::Registry.new
      config_builder = registry.config_builder
      path = args.pop
      config_builder.config_file_paths = path
      config = config_builder.build_config
      gems = config.gems
      
      gems.each do |agem|
        # gem() function defined in Capistrano's RemoteDependency class
        options = pluck_accessor_hash(agem, [:platform, :install_options, :check_for_upgrade, :no_autogem, :fix_dependencies])
        depend_without_gemfile(location, :gem, agem.name, agem.version, options)
      end
    else
      depend_without_gemfile(location, type, *args)
    end
  end
end

Version data entries

11 entries across 11 versions & 2 rubygems

Version Path
jtrupiano-capistrano-extensions-0.1.3 lib/capistrano-extensions/geminstaller_dependency.rb
jtrupiano-capistrano-extensions-0.1.4 lib/capistrano-extensions/geminstaller_dependency.rb
jtrupiano-capistrano-extensions-0.1.6 lib/capistrano-extensions/geminstaller_dependency.rb
jtrupiano-capistrano-extensions-0.1.7 lib/capistrano-extensions/geminstaller_dependency.rb
jtrupiano-capistrano-extensions-0.1.8 lib/capistrano-extensions/geminstaller_dependency.rb
jtrupiano-capistrano-extensions-0.1.9 lib/capistrano-extensions/geminstaller_dependency.rb
capistrano-extensions-0.1.9 lib/capistrano-extensions/geminstaller_dependency.rb
capistrano-extensions-0.1.4 lib/capistrano-extensions/geminstaller_dependency.rb
capistrano-extensions-0.1.3 lib/capistrano-extensions/geminstaller_dependency.rb
capistrano-extensions-0.1.8 lib/capistrano-extensions/geminstaller_dependency.rb
capistrano-extensions-0.1.5 lib/capistrano-extensions/geminstaller_dependency.rb