Sha256: a7bfc251c5e3bea1568b3b164779e70a01e53b5b8ce45f55d7452d4ca7f637e4

Contents?: true

Size: 1.21 KB

Versions: 11

Compression:

Stored size: 1.21 KB

Contents

module Luffa
  class Gem

    def self.update_rubygems(unix_command_opts={})
      default_opts = {:pass_msg => 'Updated rubygems',
                      :fail_msg => 'Could not update rubygems'}

      Luffa.unix_command('gem update --system',
                         default_opts.merge(unix_command_opts))
    end

    def self.uninstall_gem(gem_name, unix_command_opts={})
      default_opts = {:pass_msg => "Uninstalled '#{gem_name}'",
                      :fail_msg => "Could not uninstall '#{gem_name}'"}
      Luffa.unix_command("gem uninstall -Vax --force --no-abort-on-dependent #{gem_name}",
                         default_opts.merge(unix_command_opts))
    end

    def self.install_gem(gem_name, opts={})
      default_opts = {:prerelease => false,
                      :no_document => true,
                      :pass_msg => "Installed '#{gem_name}'",
                      :fail_msg => "Could not install '#{gem_name}'"}

      merged_opts = default_opts.merge(opts)

      pre = merged_opts[:prerelease] ? '--pre' : ''
      no_document = merged_opts[:no_document] ? '--no-document' : ''

      Luffa.unix_command("gem install #{no_document} #{gem_name} #{pre}",
                         merged_opts)
    end

  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
luffa-2.1.0 lib/luffa/gem.rb
luffa-2.0.0 lib/luffa/gem.rb
luffa-1.1.0 lib/luffa/gem.rb
luffa-1.0.7 lib/luffa/gem.rb
luffa-1.0.6 lib/luffa/gem.rb
luffa-1.0.5 lib/luffa/gem.rb
luffa-1.0.4 lib/luffa/gem.rb
luffa-1.0.3 lib/luffa/gem.rb
luffa-1.0.2 lib/luffa/gem.rb
luffa-1.0.1 lib/luffa/gem.rb
luffa-1.0.0 lib/luffa/gem.rb