Redmine 1.1.0

エラー情報と並べて書くのはどうかと思ったけど、

Redmine 1.1.0が出てた。1.0.xでREST APIが死んでて
余所からの自動登録に使いたいなーという希望が絶たれてたけどこれで行けるかな?

Redmine 1.1.0 リリース | Redmine.JP
http://redmine.jp/redmine_today/2011/01/11/redmine-1_1_0-released/

あと、既に障害も登録されてた。男前だな。
Redmine - 1.1.1 - Redmine
http://www.redmine.org/projects/redmine/versions/30

Redmineでロックエラー

今朝Redmineを立ち上げてみたら、なんかログインでエラーが出てる。
面倒だけど、ログ(./log/production.log)を見てみたら、

ログインの認証処理でデータベースのロックがかかってるようだ。
SQLite3::BusyException: database is locked:

直接コマンドラインで(sqlite3 ./db/redmine.db)見てみたら普通に見られた。
なんか、ロックとかそういう問題じゃないんじゃないの?と思って、
passengerを再起動(touch ./tmp/restart.txt)してみたり、
apache2を再起動(svcadm restart apache2)してみたりしたけど改善せず。

なんだかなぁと思いつつ最終手段のサーバー再起動したら復帰した。
プロセスまで見なかったけど、結局だれか中途半端に掴んだまま死んでたんだろう。
なんか釈然としない。

Python入門3日目

CGIが動いてれば、普通にpython入ってれば動くみたいなので、試したら動いた。
httpd.confの"AddHandler"に".py"を足して拡張子がpyのものも動くようにした。

mod_wsgiはWerkzeug(ヴェルクツォィグ)みたいなアプリケーションエンジンを動かす必要が無ければ必要ないのか。
とりあえず、フレームワーク無しでやってみよう。

Python入門2日目

いや、もう本当にこんなことしてる時間は無いんだけども。
Flaskのチュートリアル見てたら、関数とかクラスとかの仕様が分かんなかった。
見たらおおよその雰囲気は分かるんだけど、一応通った方がよさそうだ。
てことで、別のチュートリアル

python入門から応用までの学習サイトを追ってみる。

基礎編

応用編

外部モジュール

cgi

mod_wsgi

後半はざっと見たけど、充実してんなぁ。
とりあえず、mod_wsgiだけ入れればやりたいことが出来そうな気がしてきた。

Pythonのフレームワーク

最近プログラムから離れてきていますが、ちょっとチャンスを見つけたのでPythonを弄ってみる。
ついでなのでフレームワークベースで触ってみることにする。

Pythonフレームワークで興味を持ったのは

  • Django … 老舗。ドキュメント充実
  • Pylons … 新鋭で人気
  • Flask … 軽量

とりあえず軽いのでいいので、Flaskを弄ってみたい。その前にPythonの簡単な入門をざっと通すか。
取りかかろうと思ったら、FlaskをホスティングしているBitbusket(Python用のコードハブ/GitHubみたいなやつ)
が落ちてて出鼻をくじかれる。

Python入門してみる

上記サイトのPythonの簡単な入門をやっておこう。

チュートリアル終わり。書式のスタイルは理解した。

Androidアプリも作れる

android-scripting - Project Hosting on Google Codeなんてのが出てた。

Flaskに着手

日本語のチュートリアルがあるのでトライしてみる。
Flaskへ ようこそ — Flask v0.5.1 documentation

やっぱりデプロイ環境は特殊になるのか。フレームワーク使う宿命なのかね。
FlaskではWerkzeug(ヴェルクツォィグ)というWSGI共通のIFを利用したアプリケーションフレームワーク
Jinja2というテンプレートエンジンを使ってるらしい。
ってここまで調べてFlask作った人のことにたどり着いた。Werkzeug作った人と一緒なのか。しかも今20歳ぐらいっぽい。スゲエ

Projects | Armin Ronacher's Thoughts and Writings

他の作業の合間にやってるが、virtualenv環境の敷居が高いな。動いているSolarisApache環境にデプロイしたいんですけど。

DropboxのAPI

AirDropper - Request a file from anyone.を使ってみて
DropboxのOAuth機能があることに気がついたのですが、てことは、、と思って調べたら

Development Kitが出ていて、Google App Engineからも使える状況になっているようです。これは凄いな。
Google App Engine で dropbox API を使うにあたって - かずぽんのブログ

Androidとかのモバイルアプリを出した時期に5月頃?にAPIも公開していたみたい。気がつかなかった。