2011年11月27日日曜日

CPAN Authorになるまでのまとめ

先の記事で報告した通り、今年の個人的な目標の1つの「CPAN Author」になれましたので、簡単にまとめておきたいと思います。

    1. PAUSEへ登録
      これは数ヶ月前に登録済でした。これは自分の登録だけなので、まだライブラリ作成前でもok。
      ***@cpan.orgのmail addressをもらえます。
      しかし、登録時に自分のmail addressへの転送設定をちゃんとしておかないと、最初のvalidationができず、せっかくもらったmail addressが使えません。
    2. CPAN searchで事前確認
      自分が作成しようとするライブラリが存在しないことを確認。
    3. ライブラリの作成
      module::starterというツールを使うと、CPANに必要なファイルの雛形を容易してくれます。
      皆、こういうの使っていたんですね。
    4. PAUSEへ名前空間の登録
      DNSと似たような階層構造で名前をつけるのが一般的のようです。あまりtopレベルの名前空間は取得しないものらしい。
      今回は「Net::CloudStack」としました。
      (Net::Amazon::EC2やNet::OpenStack::Computeというライブラリがあったので、同様にNet::を使うことにしました)
    5. PAUSEからライブラリのupload
      下記の2パターン。
      1. 手動でPerl Makefile.PL;make;make test;make distして、tar.gzを作成し、pauseからuploadする
      2. shipitコマンド
        コマンドラ一発で、gitとmakeとuploadしてくれます。便利。
        こちらを参考にやっと使えるようになりました。
    6. CPANでライブラリ公開
      5,6から数時間で、公開されてました。
      http://search.cpan.org/dist/Net-CloudStack/
  • 学んだこと
    上記のCPAN公開までの手順以外に下記を学びました。
    • オブジェクト型Perl
      Mooseを使いました。Perl4時代の書き方しか知らなかったので新鮮でした。
    • バージョン管理
      gitを使うようになりました。
  • 今後
    モダンPerlのスマートな書き方、運用の仕方を学んでいきたいと思います。
    また、javascriptも挑戦したいと思います。Firefox、chromeなどの拡張や、node.jsなどやってみたいですね。node ninjaで遊んでみたいです。

### 2012/1/29追記 ###
shipitについて追記しました。


このエントリーをはてなブックマークに追加