tsucchi’s diary(元はてなダイアリー)

はてなダイアリー(d.hatena.ne.jp/tsucchi1022)から移行したものです

ShipIt::Step::Copy というものを書いてみた

表記のとおりです。「既に誰かが作ってそうだなー」とか、「むしろコアの機能でできちゃったりしそうだな」とか思ったのですが、ざっと調べた限りはどちらもなさそうなので、試しに書いてみたら意外と簡単にできた。

.shipit に Copy というステップが書けるようになるプラグインです。copy.dir に書いたディレクトリにモジュールのディストリビューションがコピーされます。(なので、Copy は MakeDist の後に書いてね)

steps = ..., Copy
copy.dir = ~/Dropbox/Public/My-Module

何がしたいかというと、この例にもあるみたいに、Dropbox のフォルダにディストリビューションを置けたら便利かなー、と思ったのです。

CPAN に上げてるやつは普通に CPAN に上げちゃえばいいと思うのですが、上げる気がないやつ*1なんかは、そのまま github とかに置いてもいいのですが、github に置いてる状態だと*2、AuthorTest で使うモジュールとか入ってないとインストールできないとかあって、そういうの面倒くさいなー、と。

なので、最近はそういう微妙なやつは Dropbox に置いてたのですが、手動で置くのもめんどいので、ShipIt のプラグインを書いてみた次第です。よろしければお使いください。

https://github.com/tsucchi/p5-ShipIt-Step-Copy
https://www.dropbox.com/sh/2a8u7yq1w41z4fv/RB_2lwQ008/ShipIt-Step-Copy

*1:将来的には上げたいけど、まだそのクォリティーに達してないなー、と思うやつとか

*2:何を git で管理するかによって多少差異はありますが