読者です 読者をやめる 読者になる 読者になる

opamp_sando's blog

クソザコが割りと適当なことを書くためにある備忘録です。あとたまに普通の日記も書きます

RhodeCodeも再度試してみたり

ArchLinuxでRhodeCodeを再度試してみた。現状たくさん問題がある。
やり方は以前の記事

http://d.hatena.ne.jp/opamp_sando/20120814/1344914629

の通りでほぼおk。(最近pipが不調なのでeasy_installを使うといいかもね)
違うところと言えば、今回はSSLを利用してるのでhttpsを使うところくらいか。
前のowncloudを立ち上げたときの記事の最初の方にhttpsの有効化についてはリンクを貼ったりしている。


で、設定したのはいいんだけどまず、apacheからrhodecodeにアクセスできるようにする。
それ自体は大して難しくはない。apacheの設定ファイルに

<Location /rhodecode > #Rhodecode
	ProxyPass http://127.0.0.1:5000/rhodecode
	ProxyPassReverse http://127.0.0.1:5000/rhodecode
	SetEnvIf X-Url-Scheme https HTTPS=1
</Location>

例えばこんな感じの記述を追加して...

rhodecodeのproducition.iniは

#一部抜粋したもの...
#use = egg:Paste#http

#WAITRESS
threads = 5
use = egg:waitress#main

host = localhost #localhostでおk
port = 5000 #ここは適当に。apacheの設定と合わせてね。

[filter:proxy-prefix]
# prefix middleware for rc
use = egg:PasteDeploy#prefix
prefix = /rhodecode #確かこれも必要なはず

という具合に設定すると「rhodecode -> httpd」の順番で起動すればhttps://xxxxxxx/rhodecodeでアクセス可能に。

問題は、rhodecodeとhttpdが別々に動いてるので、rhodecodeを起動してhttpdを起動するという2段階を行わないといけないということ。
もちろんrhodecodeのプロセスが落ちればhttpdが生きていても接続不可能になってしまう。
このへんを自動でなんとかできるようにして、systemctlコマンドだけで起動できるようにしたい。



問題はまだあったりする。rhodecodeでrepositoryを作ってクライアンとのOSXでcloneするのだが、hgはオレオレ証明書に対して警告はでるも、$HOME/.hgrcなどで

[hostfingerprints]
www.example.com = XX:XX:XX:XX:XX:XX....

みたいにfingerprintsを設定することでちゃんとcloneもpushも可能になる。
もちろんCAのファイルを設定してもおkみたい。(参考 http://mercurial.selenic.com/wiki/CACertificates)


問題はgitで、gitはなぜかできない。やっぱりCAのファイルを設定しないとダメなんだろうか。実はCAサーバー側にあって持ってくるのが面倒という。
ある記事によると

$ git config --global http.sslVerify false

みたいにsslVerifyをfalseにすればいいという話だったが、なぜかできなかった。
この作業をしても同様にSSL周りのエラーがでてcloneも何もできない。これは困った。


ということで主に2つほど問題がある。他にもsshが使えないので何とかしたいというのもあるが...
sshを使えばmacならキーチェーンがあるからいちいちパスワードをうたなくていいという利点もあるし。

問題は結構多い気がする。

Firefox ブラウザ無料ダウンロード