@nqounetです。
ウェブアプリなどのプログラムを作っている時は、同じコマンドを何度も何度も入力することになります。
そういう面倒な手順をもっと簡単なコマンドにしたい、という野望を叶えるモジュールがDaiku
です。
daiku install
例えば、開発用のサーバーを立ち上げたり、データベースを初期化したり。
そういう時は、そういう処理をまとめてシェルスクリプトに書いておいて、用途に応じて実行したりすると思います。
私はシェルスクリプトが苦手なので、ちょっと難しいことをしようと思っても書けません。
また、例えば設定ファイルだけ活かした処理を手動で実行したいときは、設定ファイルの読み込みなどは既存のプログラムを利用できたほうが良いと思います。
既存のプログラムがPerlの場合、シェルスクリプトではそういう手続きを書くことが面倒になってきます。
Daikuを使うと、シェルスクリプトと同様のことだけでなく、既存のPerlプログラムを活かした手続きを簡潔に書くことができるのでとても助かっています。
インストールはとても簡単。
|
|
command not found
というエラーがでた人は、先に↓のコマンドを実行すると良いです。
|
|
簡単な使用例
Daiku
をインストールすると、daiku
コマンドが使えるようになります。
daiku
コマンドを実行すると、そのディレクトリにあるDaikufile
というファイルを読み込んで、そのファイルに書いてあるtask
を実行してくれます。
私がどんな感じで使っているかというと、例えばdaiku install
で、そのプロジェクトのcpanfile
に書いてあるモジュールを全部インストールする、みたいなことをしています。
|
|
desc
は、その後に書いたtask
の説明文です。
sh
はシェルコマンドを示します。
なので、この例では単純なシェルスクリプトと何ら変わりありません。
複雑な使用例
プロジェクトの設定ファイルなどを活かした例としては、以下の記事が非常に役立つでしょう。
また、Amon2
のようなPSGI
なフレームワークを使っている場合、環境変数のPLACK_ENV
を設定して実行するようなことがあれば楽になります。
|
|
この場合、開発環境の場合はdaiku migrate:development
、ステージング環境の場合はdaiku migrate:staging
のようになります。
namespace
とtask
の関係が間違っている気がしますが、書いているとこの書き方がしっくりと来るのでいつもこんな感じです。
まとめ
daiku
は便利ですよ。
特に、Perlのプログラムを作っているときはね。