2010-11-30 10 views
0

私たちは、Pythonプロジェクト用のContinuous IntegrationサーバーのためにHudson-CIを使用しています。これらはすべてBuildoutを使用して依存関係を管理します。ほとんどすべてのプロジェクトでlxmlが使用されています。これは、Buildoutのために、各テスト実行中にビルド/インストールする必要があり、時間がかかるので、1日に実行できるビルド数が減ります。lxmlのビルド/インストールを高速化するにはどうしたらいいですか?

Buildoutを使用する場合、lxmlのビルドをスピードアップする方法はありますか?おそらく、いくつかの環境変数を設定して、両方のコアをサーバー上で使用できるようにすることができますか?あるいは最適化の量を減らすための何か?

答えて

-1

ビルドアウトのデフォルトファイルを作成し、複数のビルド間で卵を共有するegg-directoryを定義することができます。

この投稿は、うまくそれを合計:http://plone.org/documentation/manual/developer-manual/managing-projects-with-buildout/creating-a-buildout-defaults-file

+0

質問者の問題は、卵をダウンロードするのではなく、.tar.gzをコンパイルすることです。 –

+0

私は同意しません。私の理解から、問題はlxmlをインストールすることです。これにはC拡張をコンパイルすることが含まれます。 FWIW、依存関係としてlxmlを持つプロジェクトのビルドアウトがあります。 lxmlは一度構築され、かなり時間がかかり、その後卵キャッシュに保存されます。 –

1

私のソリューションは、卵を自分で作成して、私の増築とその卵のバージョン管理を維持することです。私はlxmlをアップグレードする必要があるたびに卵を作り直します。ほとんどの場合、import setuptoolssetup.pyの先頭に投げ込み、python setup.py bdist_eggと言って、Pythonプロジェクトのバイナリエッグを作成することができます。そして、卵をインストールするマシンがバイナリに似ている限り(すべてが同じLinuxディストリビューションであるなど)、大した問題はないはずです。ボックスにインストールされているlibxmlに卵を依存させたくない場合は、lxmlを "static deps"と呼びます。

関連する問題