Hatena::Groupcatalyst

dann@catalyst このページをアンテナに追加 RSSフィード

2008-02-16

Shipwright

10:34 |  Shipwright - dann@catalyst を含むブックマーク はてなブックマーク -  Shipwright - dann@catalyst  Shipwright - dann@catalyst のブックマークコメント

これは、かなり使える気がする。cool!

http://search.cpan.org/~jesse/Shipwright-1.0/

  • CPANモジュールがバージョン管理できる。
  • モジュール間の依存関係、インストール順をyamlで管理することができる
  • モジュールのバージョンの更新が簡単にできる
  • cpanコマンドみたいに、何度もy押さなくていい!

といったことができるようになっている。

一回、CPANモジュールをバージョン管理下にいれてしまえば、後はどのサーバーでも同じバージョンのものが使えるようになるわけで、各サーバーでモジュールのバージョンが異なるなんてことは無くなりそう。

sudo shipwright create -r svk://mirror/acme-musume
sudo shipwright import -r svk://mirror/acme-musume Acme::MorningMusume

これでAcme::MorningMusumeに必要なものがバージョン管理下に。

以下でインストール。

sudo shipwright build -r svk://mirror/acme-musume

/tmp/* に必要なモジュール一式が生成される。インストールされる先は、--install-baseで指定できるようになっている。デフォルトは/tmp/*。forceを指定すればforce install.

多分、複数台のサーバーに同一のCPANモジュールをインストールするには、ディストリビューションのパッケージを作って、そのパッケージをバージョン管理する方法しかないような気がするのだけれど、その代替になりえそうだなぁという気がした。(複数台にデプロイだけであれば、ディスクイメージ丸ごとコピーして、そのディスクイメージだけ頑張って更新ってのもあるのかも。)

これで、アプリケーションのに必要なモジュールも、アプリケーション本体もバージョン管理できて、それらを一括でデプロイできるようになりそう。これは可能性を感じるなぁ。

そんなこんなで、Catalyst用のshipwright buildが作れるようにしておこうと思ったのでした。依存モジュールが多いCatalystは、cpanコマンドでインストールするの大変なんですよね。(Plaggerのも欲しい!)

ShelcyShelcy2012/10/30 22:21Thought it wuoldn't to give it a shot. I was right.

huhgqysvfohuhgqysvfo2012/11/01 01:23jAF3Eb <a href="http://sgebxcktvppi.com/">sgebxcktvppi</a>

rgukfswkrgukfswk2012/11/01 06:34syuiuf , [url=http://tcxhglztdxaa.com/]tcxhglztdxaa[/url], [link=http://vsssdqhlinam.com/]vsssdqhlinam[/link], http://wgthsyqwdlzk.com/

hbwepcntafahbwepcntafa2012/11/01 13:10QC20R0 <a href="http://sxlvgxikvans.com/">sxlvgxikvans</a>

ayaxcknayaxckn2012/11/02 02:00MCWowV , [url=http://lfxurgdvfssk.com/]lfxurgdvfssk[/url], [link=http://dfhlnklckjue.com/]dfhlnklckjue[/link], http://audqpmbmroqf.com/

トラックバック - http://catalyst.g.hatena.ne.jp/dann/20080216