Installing Merlot のドキュメントに書いてある通りで動くけど、せっかく日本語にしたので開発ブランチを使ってみましょう。
Google CodesにあるMercurialリポジトリをミラーして、VirtualEnvを組んで、buildoutを叩いたらインストール終わり。
一応コマンドリストだけでも書いておく:
$ hg clone https://merlot.googlecode.com/hg/ merlot
$ virtualenv --distribute --no-site-packages merlot
$ cd merlot
$ source bin/activate
$ python bootstrap.py
$ buildout
ここで、なぜかmechanizeのインストールに失敗することがある。エラーを見るにアーカイブをダウンロードしているときのレスポンスヘッダでContent-Lengthが"382313, 382313"みたいな感じでカンマ区切りで2個帰ってくるのがパースできないらしい。
RFC2616を見てみたところ、Content-Lengthヘッダは1*DIGITで書かなきゃいけないので、まあ、お行儀の悪いWebサーバーなのだろうけど、インストールプロセスが止まっちゃうのは困る。
なので、distributeのコードにパッチして無理やり通してしまった。virtualenvだと、こういう時にためらわずできていいね。
--- eggs/distribute-0.6.14-py2.7.egg/setuptools/package_index.py.orig 2011-03-26 15:00:28.000000000 +0900
+++ eggs/distribute-0.6.14-py2.7.egg/setuptools/package_index.py 2011-03-26 15:23:07.000000000 +0900
@@ -566,7 +566,10 @@
bs = self.dl_blocksize
size = -1
if "content-length" in headers:
- size = int(headers["Content-Length"])
+ try:
+ size = int(headers["Content-Length"])
+ except ValueError:
+ size = int(headers["Content-Length"].split(",")[0])
self.reporthook(url, filename, blocknum, bs, size)
tfp = open(filename,'wb')
while True:
で、パッチしたらもう一度buildoutを打つ。
$ buildout
$ merlot
merlotコマンドを打つと、grokフレームワークの簡易サーバが立ち上がるので、Webブラウザで 127.0.0.1:8080 にアクセスする。基本認証を聞かれるので、admin:adminで突破。このページはgrokフレームワークの管理画面らしくて、ホスティングするアプリケーションを追加、削除するためのもののよう。
"Name and create a new Merlot application" の所に適当に名前を入れて"Create"すると、インスタンスができる。名前はURLのトップディレクトリに使われるので、そこだけ気にすればよさそう。
とりあえずmerlotという名前で作ったことにする。
"Installed Applications" に新しくできたリンクをたどるとMerlotの世界へ。
こんな感じのトップページが来る。
この状態だと、rootディレクトリで打ったadminユーザーの基本認証を引き継いで動いているので、"ユーザー"タブから新しいユーザーを追加して、一旦ブラウザーを閉じてしまう。"ログアウト"はフォームで認証したときにCookieを消すだけなので、基本認証では効かない。次からのアクセスでは基本認証を使いたくないので、URLには 127.0.0.1:8080/merlot を使うこと。
この後は、"クライアント"を作って、"プロジェクト"を作って、"タスク"を作って、"ログ"を記録する。という流れになるんだけど、くわしくは次の記事で。
ところでWindowsを持っていないので動かしていないけど、誰か環境つくって手順もあるなら教えてください。
0 件のコメント:
コメントを投稿