はじめに
GoでGoogle App Engineを触るテストを 書いておきながら、諸般の事情により、Pythonで書きなおすことにしました。 書き直すと言っても、大した進んでいないので、また1から書き直しという感じですね。
準備
今回はMacで開発しているので、ライブラリはここからダウンロードし、インストール&実行すればOK。
Download the Google App Engine SDK – Google App Engine – Google Developers
Pythonはvirtualenv経由だとうまく動かないもようなので、Pyenvで特定の2.7系バージョンを作る。
開発環境はIntelliJ IDEAのPythonプラグイン + App Engineサポートを利用。 間違ってもFlaskを使いたいからと言って、Flask Templateを選んではいけない。あとで自分でライブラリを ダウンロードすること。そうしなければ、App EngineのライブラリがIntelliJ IDEA側で認識してくれなかった (別途不具合報告予定)。
書いてみる
ライブラリは requirements.txt あたりを用意し、下記コマンドを実行することで、 ライブラリがlibフォルダに置かれる。
1
|
|
また、appengine_config.py を用意し、上記のlibフォルダをライブラリフォルダとして認識するように、 下記を記述する。
1 2 3 4 5 |
|
その他コードは割愛するけれど、Flaskのフレームワークとしての薄さと 3rd-partyライブラリによる拡張性の高さは結構好み。 とは言えDjangoをまじめに学習したことがないので、別途 大阪Pythonユーザの集まり 2014/05の Djangoセッションで学習してみようかと思う。
デプロイ
デプロイは、ローカル&本番環境ともに、とりあえず簡単に、IntelliJ IDEAから試す。 ローカル環境の場合は、App Engine Serverから起動する事ができる。
本番環境は、メニューのToolsからGoogle App Engine → Upload App Engine app… から アップロードできる。簡単。
簡単だけど、継続的デリバリーができなくなるので、別途デプロイ方法を検討する。