Cygwin で App Engine 開発環境を構築する

zsh を使うために Cygwin を導入したので、App Engine の開発環境も Cygwin 上に構築することにしました。
簡単に構築できると思ってたら、結構苦労したので、作業内容をメモしておきます。

Python 2.5 と Mercurial をインストール

Cygwin の setup.exe を起動し、Python 2.5 と Mercurial のパッケージをインストールします。
f:id:griefworker:20110214211241p:image
f:id:griefworker:20110214211242p:image
Mercurial は Kay Framework のインストールに使います。

App Engine SDK for Python をインストール

AppEngine 公式サイトから LinuxSDK をダウンロードします。

ダウンロードが終わったら、/usr/local/gae に解凍。

Kay Framework をインストール

Mercurial を使って、Kay Framework をダウンロードします。AppEngine のインストールディレクトリ(今回の場合 /usr/local/gae)で、下のコマンドを実行。

hg clone https://kay-framework.googlecode.com/hg/ kay

Kay Framework プロジェクトサイトの Download ページにあるアーカイブは古いので、リポジトリから最新のソースコードを入手した方がいいです。

パスの設定

シェルに App Engine SDK と Kay Framework のパスを設定します。私は Cygwin のシェルを zsh にしているので、.zshrc に下記の設定を追加しました。

gaedir=/usr/local/gae
if [ -d ${gaedir} ]; then
    kaydir=${gaedir}/kay
    export PATH=${PATH}:${gaedir}:${kaydir}
    export PYTHONPATH=${PYTHONPATH}:${gaedir}:${gaedir}/lib/antlr3:${gaedir}/lib/cacerts:${gaedir}/lib/django_0_96:${gaedir}/lib/django_1_2:${gaedir}/lib/fancy_urllib:${gaedir}/lib/graphy:${gaedir}/lib/ipaddr:${gaedir}/lib/simplejson:${gaedir}/lib/webob:${gaedir}/lib/yaml/lib
fi

AppEngine が使うライブラリのパスも設定する必要があります。忘れやすいので注意!

あとはシェルで

dev_appserver --help

manage.py --help

のコマンドを実行できれば OK。

これで Cygwin でも App Engine アプリがバリバリ開発できます。