gem の作成を支援する rake タスクを提供
-
bundle exec rake gem:release : 現在のバージョンを gem サーバーに公開
-
gemspec ファイルに add_development_dependency “ans-gem-builder” を追加して bundle
-
Rakefile に require と設定を追加
# gemspec Gem::Specification.new do |s| ... s.add_development_dependency "ans-gem-builder" end # Rakefile require "ans-gem-builder/install_tasks" module Ans::Gem::Builder::Config ... end
module Ans::Gem::Builder::Config def gem_host "gem.host.domain" # gem を push するホスト名 end def gem_root "/path/to/gems/dir" # generate_index を走らせるディレクトリ(この下に gems ディレクトリがある) end def remote_rvm_path "/usr/local/rvm" # リモートホストの rvm_path end def remote_ruby_version "1.9.2" # generate_index を走らせる rvm のバージョン end end
デフォルトはそれぞれ書いてある値
現在のバージョンを gem サーバーに公開する
-
gem のバージョン番号で git tag を作成
-
pkg/ の下に gem を作成
-
作成した gem を $gem_host:$gem_dir にコピー
bundle の release タスクに似ているが、最後に gem を push する先が private ホスト
gem をインストールするためには、 Gemfile に source 行を追加する必要がある
source "http://$gem_host/..."