rubyベストプラクティスchapter8.5

rakeについて。

あんまり目新しいものがないので、本当に感想だけ。

最近気づいたけど、公開されているライブラリのRakefileを見ると
「こんなものまで?」って思える作業でさえrakeタスクにしてるのが
わかります。
プログラマーが知るべき97のこと」にも「可能ならなんでも自動化」
とかいう趣旨のことも書いてあったのでもっと自動化について意識高めないと
いけないんですな。

rubyforgeへのアップロードとかrdocタスクとかっていうのはライブラリを
入れるとそれなりのrakeタスクを追加しているので、そっちを見た方が
いいと思います。

大体必要なファイルを取得して、それを1つづつコマンドにわたして仕事を
させるっていう作業が多いと思うので、1つ作ると理解が早いんだろうなぁ。
本にのっているのはこんなサンプルでした。

task :convert_all do
  FileList[File.join(File.dirname(__FILE__), 'manuscript', '*.txt')].each do |src|
    target = File.join target_dir, File.basename(src).sub(".txt", ".xml")
    chap = File.basename(target)
    sh "asciidoc -d book -b docbook -a sectids! -o ch_#{chap} -s #{src}"
  end

  task :build => [:convert_all] do
    sh "dblatex book.xml"
    sh "open book.pdf"
  end
end

Rubyベストプラクティス -プロフェッショナルによるコードとテクニック

Rubyベストプラクティス -プロフェッショナルによるコードとテクニック