Buildoutを使う 概要編
Buildout(zc.buildout)はPythonで書かれた、アプリケーションのビルドシステムです。
任意の場所にオペレーティングシステムにインストールされたPythonから隔離された箱庭環境を作り、そこに設定ファイルに書かれたパーツと呼ばれる構成要素を組み合わせて、そのアプリケーションのためだけの環境を構築します。
同じく箱庭環境を作るvirtualenvというものもありますが、virtualenvがシェルから必要なPythonのパッケージを手動でインストールしなければならないのに対し、Buildoutは設定ファイルに従って必要なパッケージを自動でインストールしてくれます。
Buildoutのいいところは、設定ファイルとわずかな時間さえあれば全く同じ箱庭環境を、2つか3つのコマンドを叩くだけで再現できるところでしょう。
wget "http://svn.zope.org/*checkout*/zc.buildout/trunk/bootstrap/bootstrap.py" python bootstrap.py init bin/buildout
例にwgetコマンドが出てきましたが、Linuxだけではなく*BSDなど他のUNIX系のOSでもBuildoutは動作します。
WindowsでUNIX文化を実践している鋼の心をお持ちの方にも朗報です。BuildoutはWindowsでも問題なく動作します!
しかし残念なことに、Buildoutを使ってPythonのアプリケーションを開発するにはEggについての知識が不可欠です。Eggの書き方さえ理解すれば、Buildoutの環境下で開発を始めるのにさほど苦労はしないでしょう。
次回のEgg基礎編ではこのEggを使ったり、作ったりするのに必要なsetuptoolsやsetup.pyについて書きたいと思います。