Gemify はとってもとっても素晴らしいと思います!
Gemify のあまりの素晴らしさに感動しました。これはRubyのgemパッケージをとってもとっても信じられないくらい簡単に作れちゃうツールです。NewGemもHoeももう忘れちゃいたい!と思える簡単さでgemを作成できます。
http://dojo.rubyforge.org/gemify/
gem作成の手順は次のようになります。
インストール
インストールはいつものようにgemで。
% sudo gem install gemify
使い方
まずgemパッケージの中に入れておきたいファイルの一覧を Manifest.txt(もしくは Manifest. .manifest など) に書いておきます。
次に、プロジェクトのホームで以下のようにして gemify を呼び出します。
% gemify
すると、以下のように表示されると思います。
Welcome to Gemify! Which task would you like to invoke? 1) Set name (required) 2) Set summary (required) 3) Set version (required) 4) Set author 5) Set email 6) Set homepage 7) Set RubyForge project 8) Toogle documentation = false 9) Set dependencies s) Save i) Show included files b) Build gem x) Exit
この1から9までを指示に従ってちまちまと入力しましょう。とっても簡単ですね。さて、入力が終わったらもう用意は完璧です。お手元には .gemified というファイルが作成されているものと思います。では最後に"b"を押せば、それだけでgemが生成されます。
以上です。分かり易いし簡単!素晴らしい!
gemのリリースをとっても簡単にする RTask を作りました
Gemifyがあまりに素晴らしいので、こんなに簡単にgemを作れるのならば、gemのリリースだって簡単でなければならないだろう、と思いました。そこでRubyForgeへのリリースをとってもとっても簡単に行なうための RTask というライブラリ/ツールを作成しました。
http://github.com/keita/rtask/tree/master
インストール
このプロジェクトはRubyForgeに申請したばかりなのでまだ承認が降りていませんので、残念ながらまだgemをリリースできていないのですが、皆様がご覧になる頃には次のようにしてインストールが出来るようになっているものと思います。
% sudo gem install rtask
リリースまでの手順
RTask の使い方は次のようになります。
まず rubyforge コマンドで login などを済ませておきます。この辺の設定はNewGemをこれまで使ったことのある人は既に済ませているかと思います。
次に、gemifyの設定を行ない、.gemified ファイルを作成しておきます。この手順は「Gemify はとってもとっても素晴らしいと思います!」をご覧下さい。ただしここでは"b"でgemを作っておいても作っておかなくても結構です。
これで下準備が整いました。まずはパッケージを作成します。
% rtask -p # もしくは rtask --package
これでお手元には #{package_name}-#{version}.gem 及び .tgz なパッケージが作成されていると思います。ここでリリースするバージョンを目で確認しておいて下さい。では最後の仕上げです。
% rtask -r # もしくは rtask --release
これでリリース作業が完了しました。rubyforge, gemify コマンドを除けば、たった二回コマンドを打ち込むだけでリリース完了です!簡単!
Rakefileに仕込む
以上でRTaskによるリリース作業は終わりなのですが、こうした作業をRakeを使って行ないたい場合もあると思います。こっちの方も簡単ですし、もっと色々なことが出来ます。
まず、Rakefileに次のように書いておきます。
require "rubygems" require "rtask" RTask.new
こうすると、
% rake -T rake clean # Remove any temporary products. rake clobber # Remove any generated file. rake clobber_rdoc # Remove rdoc products rake gem # Create the gem package rake publish # Upload API documentation rake rdoc # Build the rdoc HTML Files rake release # Release new gem version rake rerdoc # Force a rebuild of the RDOC files rake tgz # Create the tgz package
のように task が追加されます。リリースの手順は rake gem tgz の次に rake release するだけで、これは先程とほとんど変わりません。ただし、Rake版ではAPIドキュメントを作成するのも簡単です。
% rake rdoc
とすると、htmlというディレクトリが作成され、また
% rake publish
とすると、プロジェクトのホームにAPIドキュメントをアップロードします。これならドキュメントの公開まで簡単です。以上です、何から何まで簡単でしょ?
ちなみに
RTask は Release Task を縮めたものです。最初はそのままReleaseTasksとかいう名前にしようかと思ったんですが、どうせこういうツールが欲しい人は面倒くさがり屋さんに違いないから一文字でも短い方が良いだろうと思ってRTaskになりました。gemパッケージのアップロードが面倒な人は是非使ってみて下さい。まだまだ荒削りなツールなので細かいところで不備があろうかと思いますが、地味に改良して行く予定ですので、なにとぞよろしく。