buildoutを使用して、Plone インストールの多くの依存関係を自動的にダウンロードしてセットアップしています。buildout は多かれ少なかれ easy_install を使用して、多数の Python の卵をダウンロードしてインストールします。これは通常は機能しますが、依存関係のいずれかをダウンロードできない場合、またはビルドアウトで pypi に適していない内部パッケージを見つけたい場合は機能しません。必要なパッケージを自動的にミラーリングするように、独自のローカル バージョンの pypi をセットアップするにはどうすればよいですか? コードではなくメタデータに pypi を使用するパッケージは、引き続きサードパーティのサーバーに依存しますか?
7 に答える
鏡も使えます。これを「~/.pip/pip.conf」の「[global]」セクションに入れます。
index-url = http://d.pypi.python.org/simple/
これは、ここで発表された最近の機能です。
このページでは、@moraes の投稿で言及されている代替ミラーを使用する方法を示していますが、easy_install、buildout、virtualenv、および pip については次のとおりです。
zc.buildout の場合: ローカル ダウンロード キャッシュ機能を使用します。キャッシュするものは主に次の 3 つです。
- 外部拡張、つまりhttp://dist.plone.org/release/4.1.2/versions.cfg
- いくつかの distserver からの卵、つまり pypi
- zc.recipe.cmmi または zc.buildout によって提供されるダウンロード インフラストラクチャを使用した同様のレシピからのダウンロード
3 つすべてについて、グローバル構成を微調整し、extend 用のキャッシュ フォルダーと、egg およびその他のダウンロード用のキャッシュ フォルダーを設定する必要があります。
ホームフォルダーにフォルダーを作成し.buildout
ます。
このフォルダーにフォルダーを作成しextends-cache
、downloads
.buildout
ファイル default.cfg を次のように作成します。
[buildout]
extends-cache = /home/USERNAME/.buildout/extends-cache
download-cache = /home/USERNAME/.buildout/downloads
だからあなたは持っています:
.buildout/
├── default.cfg
├── downloads
└── extends-cache
それでおしまい。特定のビルドアウトで default.cfg からこれら 2 つの変数を上書きしないようにしてください。buildout の最初の実行が成功した後、後続の実行はオフライン モードで実行されます./bin/buildout -o
。
副作用として、オフライン モードで使用すると、ビルドアウトがはるかに高速になります。つまり、新しいダウンロードは予想されないが、一部の構成が変更された場合です。
これに加えて、独自の pypi-mirror を実行することは理にかなっています。別の情報源として、このトピックについて私が以前に書いた記事に興味があるかもしれません: http://bluedynamics.com/articles/jens/setup-z3c.pypimirror
で構成index
しbuildout.cfg
ます。
[buildout]
index = http://a.pypi.python.org/
find-links =
その他のミラー:http ://www.pypi-mirrors.org/
PyPI は 2010 年半ばからミラーリングされていますhttp://pypi.python.org/mirrors