で、tumblpyが、python2.7ベースで出来てることもあり、
https://github.com/michaelhelmick/python-tumblpy
ヨクヨク見たら、appengine もpython2.7で稼働できるらしく、
じゃあ移行してみようかと。
結論から言うと、ハマりますね。オフィシャルドキュメントを読んでも散漫でよくわからない。情報量は足りてるのですが。
- アプリケーションインスタンス設定
- High Replication Datastoreである必要があります。
- そんな難しい話じゃなくて、https://appengine.google.com/ のStorage Schemeの欄を参照。
- 残念ながら駄目だった場合、新規にアプリケーションを作成する必要があります。1個損した気分。
- 同じ個数をDisable/Deleteそれば、総数は相殺するらしい。
- ドキュメントには application idに"-hrd"を付けてね!とか書いてあるけど、これは移行するときに、id名の重複を懸念してのアドバイスであって、本質的には「設定」の問題。
- 新規(Create Application )の場合でのみ、Storage Optionが選択できる。
- High Replication(default) と Master/Slave
が選べるらしい。 - 前者がdefaultになってるし、後者はdeprecatedなので、わざわざ選び直す意味はないと思われる。
- app.yaml
- runtime: python27
- threadsafe: false
- 無論、trueが望ましいと思われるが、実装に依存する可能性もあり、怖気づいたので。
- wsgiref
- os.path.dirname(__file__) != "."
- テンプレートの読み込み等で、カレントディレクトリ前提に書いちゃってる部分は、フルパスを補う必要があり。
- self.respone.writeの引数に、strしか受け付けない
- assert type(data) is StringType,"write() argument must be string" AssertionError: write() argument must be string とか面妖なエラーメッセージに化けて迷宮入りします。
- self.response.write( str(html1) ) とかで解決することはする

