Google App Engine

Google wave API Challenge セットアップHackathonに参加するため、突貫でGoogle App Engineの環境整えてみました。
waveのbotを設置するための場所として、Google App Engineが必要となるわけです。

開発環境は、Debian

Google App Engine SDK
http://code.google.com/intl/ja-JP/appengine/downloads.html

実はJavaPythonも知らないので、今回は軽そうなPython環境を選択しました。

Google App Engine SDK for PythonLinux/その他のプラットフォームから、google_appengine_1.3.1.zipをダウンロードします。

google_appengineに以下のようなファイルが展開されます。

$ ls -F
BUGS README VERSION bulkload_client.py* demos/ google/ new_project_template/ templates/
LICENSE RELEASE_NOTES appcfg.py* bulkloader.py* dev_appserver.py* lib/ remote_api_shell.py* tools/

ローカルのテスト環境になります。

ここにサンプルをおいてもいいんですけど、混乱しそうなのでgoogle_appengineと同じ階層にテスト用のディレクトリを作ります。

ls -F
appengine/ wave/

wave以下にサンプル用のhelloworldディレクトリを置くことにします。

スタート ガイド: Python
http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/

上記のガイドを参考にして、動かしてみましょう。

helloworld.py

print 'Content-Type: text/plain'
print ''
print 'Hello, world!'

お約束のHello, world!を表示するリクエストハンドラです。

app.yaml

application: helloworld
version: 1
runtime: python
api_version: 1

handlers:
- url: /.*
  script: helloworld.py

Plagger使っている人にはおなじみのYAML形式の設定ファイルですね。

この二つのファイルで準備完了です。
さっそく動かしてみましょう。

$ ./appengine/dev_appserver.py /home/eros/wave/helloworld/

http://localhost:8080/
に接続して、Hello, world!と表示されれば成功です。

仕上げにGoogle App Engineに上げてみましょう。

./appengine/appcfg.py update ./wave/helloworld/


Linux上からだと毎回メアドとパスワード入力しなくちゃならないんですかねぇ。

さて、Google App Engine環境の用意ができたので、ようやくGoogle Wave Robots V2を試せるようになりました。