箱が…

Amazon箱ストラクチャーが崩れてきそうです。ダンボー作ろうかな。

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は動作します。
WindowsUNIX文化を実践している鋼の心をお持ちの方にも朗報です。BuildoutはWindowsでも問題なく動作します!

しかし残念なことに、Buildoutを使ってPythonのアプリケーションを開発するにはEggについての知識が不可欠です。Eggの書き方さえ理解すれば、Buildoutの環境下で開発を始めるのにさほど苦労はしないでしょう。

次回のEgg基礎編ではこのEggを使ったり、作ったりするのに必要なsetuptoolsやsetup.pyについて書きたいと思います。