class Bundler::GemHelper

def install

def install
  built_gem_path = nil
  desc "Build #{name}-#{version}.gem into the pkg directory."
  task "build" do
    built_gem_path = build_gem
  end
  desc "Build and install #{name}-#{version}.gem into system gems."
  task "install" => "build" do
    install_gem(built_gem_path)
  end
  desc "Build and install #{name}-#{version}.gem into system gems without network access."
  task "install:local" => "build" do
    install_gem(built_gem_path, :local)
  end
  desc "Create tag #{version_tag} and build and push #{name}-#{version}.gem to Rubygems\n" \
       "To prevent publishing in Rubygems use `gem_push=no rake release`"
  task "release", [:remote] => ["build", "release:guard_clean",
                                "release:source_control_push", "release:rubygem_push"] do
  end
  task "release:guard_clean" do
    guard_clean
  end
  task "release:source_control_push", [:remote] do |_, args|
    tag_version { git_push(args[:remote]) } unless already_tagged?
  end
  task "release:rubygem_push" do
    rubygem_push(built_gem_path) if gem_push?
  end
  GemHelper.instance = self
end