9

私は以前Java開発者でしたが、antやmavenなどのツールを使用して、開発/テスト/UAT環境を標準化された方法で管理していました。これにより、ライブラリの依存関係の処理、OS変数の設定、コンパイル、デプロイ、単体テストの実行、および必要なすべてのタスクを実行できました。また、生成されたスクリプトにより、すべての環境がほぼ均等に構成され、すべてのタスクがチームのすべてのメンバーによって同じ方法で実行されることが保証されました。

私は今Pythonで作業を始めていますが、Javaで説明したのと同じことを実現するためにどのツールを使用すべきかについてアドバイスをお願いします。

4

7 に答える 7

18
  1. virtualenvを使用して、包含された仮想環境を作成します (異なるバージョンの Python または Python パッケージが互いに影響し合うのを防ぎます)。このツールに移行する人々からの話題が増えています。作者は、Aaron が言及した古い working-env.py と同じです。

  2. pipを使用して virtualenv 内にパッケージをインストールします。S. Lott が回答したように、伝統的なのは easy_install ですが、pip は virtualenv でより適切に機能します。easy_install にはまだ pip にはない機能があります。

  3. sconsをビルド ツールとして使用しますが、純粋に Python を使用する場合は必要ありません。

  4. ファブリックペースト、または展開用ペーバー

  5. 継続的インテグレーションのためのbuildbot

  6. バージョン管理用の Bazaar、mercurial、または git。

  7. 単体テストの拡張としての鼻。

  8. FITテスト用のPyFit

于 2009-02-13T13:24:24.263 に答える
3

また、JavaとPythonの両方を使用しています。Python開発の場合、Mavenに相当するものはsetuptools(http://peak.telecommunity.com/DevCenter/setuptools)です。Webアプリケーションの開発では、これをパスター( http://pythonpaste.org/ )と組み合わせてデプロイプロセスに使用します。

于 2009-02-13T12:29:30.743 に答える
2

easy_setupで卵を取得する必要があります(おおよそMavenがアーティファクトと呼んでいるもの)。

環境を設定するには、working-env.pyをご覧ください。

Pythonはコンパイルされていませんが、プロジェクトのすべてのファイルをeggに入れることができます。これはsetuptoolsで行われます

CIについては、この回答を確認してください。

于 2009-02-13T12:30:18.900 に答える
2

TurboGearsで有名なKevin Dangoor によって作成されたPaverについても言及しないでください。このプロジェクトはまだアルファ版ですが、非常に有望なようです。プロジェクトページからのスニペット:

Paver は、Make または Rake に沿った Python ベースのビルド/配布/デプロイ スクリプト ツールです。Paver のユニークな点は、一般的に使用されている Python ライブラリとの統合です。以前は簡単だった一般的なタスクは、今でも簡単です。さらに重要なことは、アプリケーション固有のニーズや要件への対応がはるかに簡単になったことです。

于 2009-02-13T18:00:31.963 に答える
2

easy_install以外?

Linux サーバーでは、easy_install と yum を使用します。

Windows 開発用ラップトップでは、プロジェクトによっては easy_install といくつかの MSI を使用しています。

私たちが使用する Python ライブラリのほとんどはソースのみであるため、すべてのボックスで同じディストリビューションを使用できます。ネットワーク共有デバイスがあれば、それらすべてをそこに置きます。残念ながら、私たちのインフラストラクチャは分散しているため、.TAR ファイルを移動するか、インストールをやり直して環境を再構築する必要があります。

場合によっては (PIL など)、再コンパイルしてバージョン番号を確認する必要があります。

于 2009-02-13T12:28:45.363 に答える
0

setuptools と Hudson を組み合わせて、まさにこれを行います。Hudson が Java アプリであることは知っていますが、Python を問題なく実行できます。

于 2009-02-13T13:06:36.707 に答える
0

Devenvをチェックしてみてください。開発、QA、および UAT のビルド環境を標準化できます。「フリービール」のように無料です。

HTH

于 2010-05-14T00:53:17.210 に答える