2013/07/18

python-requests の conflict で devstack が失敗する件

昨日(2013/7/17)、devstack による openstack のインストールを試したところ、以下のようなエラーが出て失敗してしましました。

2013-07-17 23:08:34 Processing dependencies for nova==2013.1.3.a39.g378c045
2013-07-17 23:08:34 error: Installed distribution requests 1.2.3 conflicts with requirement requests>=1.1,<1.2.3

python-requests の version conflict のようです。
結論から言うと、python-cinderclient の requirements.txt を下記のように変更することで回避できます。
[eiichi@q01]~/openstack/python-cinderclient% diff -u requirements.txt.org requirements.txt
--- requirements.txt.org2013-07-18 10:40:48.857523886 +0900
+++ requirements.txt2013-07-18 10:16:19.484897288 +0900
@@ -2,6 +2,6 @@
 pbr>=0.5.16,<0.6
 argparse
 prettytable>=0.6,<0.8
-requests>=1.1,<1.2.3
+requests>=1.1,<=1.2.3
 simplejson>=2.0.9
 six

参考情報

調べてみると、install された python-requests のバージョンが、python-cinderclinet の requirement と conflict しているようです。
% cat python-cinderclient/requirements.txt | grep requests
requests>=1.1,<1.2.3
requests のバージョンを cap するようになったのは 7/14 の下記のコミットからです。
Update to latest openstack/requirements

このコミットが入るようになった経緯は下記のバグが原因です。
BUG # 1200214 Relax OpenStack upper capping of client versions

python-requests のバージョンを CAP する理由が特に無いようにみえるため、おそらく上記の回避策で問題無い、と思います。問題があったら、すいません。

追記(2013/8/3)

devstack への下記コミットにより、本問題は修正されました。
Use unique build dir for pip installs

0 件のコメント:

コメントを投稿