middlemanでbuild後に何か処理を行いたい


訳あってビルド後に/build/nantoka/を消す必要がありました。
extentionを使用する方法もあるようですが、
検索したところ上記を解決する方法が別にあったので紹介。

方法

config.rbのconfigure :build doの中にafter_build doを追加し、
systemで実行したいコマンドを書く。
コマンドが実行される場所はプロジェクトのルートになるようです。

config.rb
configure :build do
  after_build do
    system 'rm -d build/nantoka/'
    system 'echo hoge'
    system './hoge.sh'
  end
end

参考になったやりとり:
http://forum.middlemanapp.com/t/execute-ruby-file-after-build/1170/4

あとでわかったこと

単にnantokaディレクトリをbuild内に残したくないだけであれば、
configure :build do 内にignoreでフォルダを指定するほうがシンプルですね。

config.rb
configure :build do
  ignore 'nantoka/*'
end

参考になったやりとり:
http://forum.middlemanapp.com/t/ignore-folder-when-build/1162/4