Skip to content

Instantly share code, notes, and snippets.

@hassox
Created March 16, 2010 07:15
Show Gist options
  • Select an option

  • Save hassox/333723 to your computer and use it in GitHub Desktop.

Select an option

Save hassox/333723 to your computer and use it in GitHub Desktop.
require 'rubygems'
require 'rake'
task :bundler do
begin
# Require the preresolved locked set of gems.
require File.expand_path('../../.bundle/environment', __FILE__)
rescue LoadError
# Fallback on doing the resolve at runtime.
require "rubygems"
require "bundler"
Bundler.setup
end
envs = [:default]
envs << ENV['MY_ENV'].downcase.to_sym if ENV['MY_ENV']
Bundler.require *envs
end
begin
require 'jeweler'
Jeweler::Tasks.new do |gem|
Rake::Task["bundler"].invoke
gem.name = "my-gem"
gem.summary = %Q{TODO: one-line summary of your gem}
gem.description = %Q{TODO: longer description of your gem}
gem.email = "us@example.com"
gem.authors = ["Homer Simpson"]
bundle = Bundler.setup
bundle.dependencies_for(:default, :production).each do |dep|
gem.add_dependency dep.name, dep.requirement.to_s
end
bundle.dependencies_for(:test, :development, :doc).each do |dep|
gem.add_development_dependency dep.name, dep.requirement.to_s
end
end
Jeweler::GemcutterTasks.new
rescue LoadError
puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment