7

さて、毎日のビルドがプロジェクトの心臓部であることは誰もが知っていますが、それを自動化する唯一の最良の方法は何ですか?

ClearCase、VS2005 (C++)、Intel FORTRAN、Inno セットアップを含むパイプラインをラップする perl スクリプトがあります。UNIX で cron ジョブを使用してビルドをスケジュールし、単純な Apache Web サーバーをホストしてビルドを表示および監視します。全体としてかなり複雑ですが、人々が使用している既製の最良のソリューションは何ですか?

そして、はい、私はFORTRANが時々それをエスケープしないと言った.

4

9 に答える 9

4

私が聞いた新しいものは、非常に洗練されたhudson です- これも MSBuild をサポートしています。

于 2008-09-10T10:58:19.223 に答える
3

CC.Net の実装を進めています。これまでのところ、モデルにかなり適合しているようです。

箱から出してすぐに、自動化された構築、結果の追跡、および通知を提供します。ただし、ビルド進行中の監視がどれほど詳細かはわかりません。

于 2008-09-10T10:56:09.683 に答える
3

これを具体的に処理する多くのツールがあります。

ツールは、最も一般的なビルド タイプをすぐにサポートします。それらはすべて、ある種の「このスクリプトを実行する」タイプのビルド プロセスもサポートしています。

最終的には、より優れたビルド ツール (MSBuild、Ant、Maven、Make など) を使用して、奇妙なツールのギャップをカスタム スクリプトで埋める必要があります。自動ビルドは、これらを正しい順序で呼び出すだけです。

于 2008-09-10T11:17:03.547 に答える
2

私たちはTeamCityを使用していますが、単純な C#/Java 開発です。おそらく、パイプラインはそれが駆動できるスクリプトを介して実行できますか?

于 2008-09-10T10:55:27.593 に答える
2

継続的インテグレーション ツールの選択に役立つ、最高のリソースを以下に示します。このページで 5 つまたは 6 つのツールを評価しています。

http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix

于 2008-09-19T03:39:34.010 に答える
1

Visual Studioを使用している場合は、Team Foundation Buildをチェックして、状況に適しているかどうかを確認してください。

VS2008バージョンに関するBuckHodgesのブログ投稿も優れたリソースのようです。

于 2008-09-10T13:06:06.937 に答える
1

Visual Build Proを使用して成功しました。

于 2008-09-10T11:09:58.230 に答える
1

CC.NET は非常に強力です。それを使用し、それについて本当に幸せでした。システムトレイのステータスアイコンも。些細なことですが、プロジェクトの「健全性」の概要がわかります。テストが赤くなったら、すぐにテストを修正する気になります。

今、私たちは一連の自己焼き付けスクリプトを使用しています。私たちは Python を書いているので、コンパイルは存在しないので、唯一の問題はテストを実行することです。

于 2008-09-10T11:28:49.573 に答える
0

これは非常に古い質問であることは知っていますが、検索でまだ出てくるので、誰かがJenkinsに言及する必要があります。これは、Hudson のオープンソースの継続です。

Jenkins wikiから:

その中で、現在のJenkinsは以下の2つの仕事に力を入れています。

  • CruiseControl や DamageControl と同じように、ソフトウェア プロジェクトを継続的に構築/テストします。簡単に言えば、Jenkins は使いやすいいわゆる継続的インテグレーション システムを提供し、開発者が変更をプロジェクトに簡単に統合できるようにし、ユーザーが新しいビルドを簡単に入手できるようにします。自動化された継続的なビルドにより、生産性が向上します。
  • cron ジョブや procmail ジョブなど、外部で実行されるジョブの実行を監視します。リモート マシンで実行されるジョブも監視します。たとえば、cron を使用すると、出力をキャプチャする定期的な電子メールだけが届きます。それらを注意深く見て、いつ壊れたかに気付くのはあなた次第です。Jenkins はこれらの出力を保持し、問題が発生したときに簡単に気付くようにします。

もともとJavaを念頭に置いて構築されたため、他の多くのJavaツールとうまく統合されますが、OPで言及されているすべてのものを含む任意の言語で使用できます.

于 2015-01-07T05:05:18.277 に答える