2009-12-03 8 views
7

私のプロジェクトがディレクトリにあらかじめダウンロードされているすべての卵を持っていて、setuptoolsをにしたいのですが、そのディレクトリからパッケージをインストールしてください。私が持っている私のsetup.cfg'setup.py test' eggインストール場所?

[easy_install] 
allow_hosts = None 
find_links = ../../setup 

私はpython setup.py developを実行し、それが正しく、すべてのパッケージを検索し、インストールします。

テストの場合、追加の要件がsetup.pyで指定されています。

tests_require=["pinocchio==0.2"], 

この卵は、../../setupディレクトリにもローカルに存在します。

私はpython setup.py testを実行し、依存関係を確認して、卵を../../setupで見つけました。しかし、卵は私の現在のディレクトリに残りの卵とsite-packagesディレクトリの代わりにインストールされます。

install-dirsetup.cfgとコマンドラインで指定しようとしましたが、どちらもtestsコマンドでは動作していないようです。

私はちょうどinstall_requiresセクションに依存関係を追加することができますが、インストールに必要なものと可能であればテストを分けておきたいと思います。

tests_requireセクションで依存関係を維持するにはどうすればよいですか?site-packagesディレクトリにインストールしますか?

答えて

3

ソースコード(setuptools/command/tests.py)を見るだけでは、setup.py testは設計上何もインストールされていないように見えません(テストしているので、パッケージ?)。これはfetch_build_egg(setuptools/dist.py)を使って卵を取得しますが、これは実際にはローカルのeasy_installを実行します。私はあなたが自信を持ってテストをすることができないと思っています。

ノーツ/アイディア: setuptoolsでの私の経験には、バグと文書化されていない動作があります。 (私が見つけた1つの特に不快なトリップ - アップは、distutilsがそうするとき、ソフトリンクされたディレクトリに入らないということでした)。

A)これをしないことをお勧めします。 :)、B)easy_installパッケージを呼び出して手動でファイルをインストールしてください。またはC)setuptoolsシステムを調べて、あなた自身のコマンドを追加してください。あなたが将来のsetuptools hick-upsを手に入れるとき、理解することはあまりにも難しくありません。

+0

ご回答いただきありがとうございます。私はsetuptoolsとの戦いを気にするつもりはないし、あなたが推奨するようにA)かB)のどちらかをやってください。 – amrox

関連する問題