Git Product home page Git Product logo

special_delivery's Introduction

Special Delivery

Special Delivery allows you to use Bundler's rake commands to release gems to your geminabox server. It is heavily inspired by Josh Krueger's bundler_geminabox gem.

Installation

Crack open your gemspec and add special_delivery as a development dependency:

Gem::Specification.new do |gem|
  # ...
  gem.add_development_dependency 'special_delivery'

end

And then execute:

$ bundle

In your gem's Rakefile, replace Bundler's gem tasks with Special Delivery's:

require "bundler/gem_tasks"

becomes

require "special_delivery/gem_tasks"

Usage

Use Special Delivery to release gems just like you would with Bundler:

$ rake release

The latest version of your gem will be tagged, built and pushed to your geminabox server.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

special_delivery's People

Contributors

liveh2o avatar

Stargazers

 avatar

Watchers

 avatar  avatar

special_delivery's Issues

ERROR: While executing gem ... (NoMethodError) undefined method `delete' for nil:NilClass

Problem:

I'm getting the error ERROR: While executing gem ... (NoMethodError) undefined method 'delete' for nil:NilClass while trying to run rake release.

Environment:

  • Ruby: 2.1.2
  • Bundler: 1.6.2

Steps:

  1. Added special_delivery to power_ranger.gemspec
  2. Run bundle install
  3. Added require "special_delivery/gem_tasks" to Rakefile
  4. Run rake release

And here's the output

power_ranger 0.0.1 built to pkg/power_ranger-0.0.1.gem.
Tag v0.0.1 has already been created.
rake aborted!
ERROR:  While executing gem ... (NoMethodError)
    undefined method `delete' for nil:NilClass
Pushing power_ranger-0.0.1.gem to gems.desh.es/...
/Users/film42/.rvm/gems/ruby-2.1.2@global/gems/bundler-1.6.2/lib/bundler/gem_helper.rb:149:in `sh'
/Users/film42/.rvm/gems/ruby-2.1.2/gems/special_delivery-1.0.0/lib/special_delivery/gem_helper.rb:26:in `rubygem_push'
/Users/film42/.rvm/gems/ruby-2.1.2@global/gems/bundler-1.6.2/lib/bundler/gem_helper.rb:77:in `release_gem'
/Users/film42/.rvm/gems/ruby-2.1.2/gems/special_delivery-1.0.0/lib/special_delivery/gem_helper.rb:18:in `block in install'
/Users/film42/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `eval'
/Users/film42/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => release
(See full trace by running task with --trace)

Setup Gemnasium

Since this is heavily dependent on Bundler, it would be nice to know when new versions are released that are incompatible with the latest version. Should probably setup [Gemnasium(]https://gemnasium.com).

Add some specs

There really should be some specs here. Testing a new release is tricky without actually attempting to release a gem.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.