2008-09-10 15 views
7

OK、毎日のビルドがプロジェクトの心拍ですが、それを自動化する最高の方法は何ですか?毎日のビルドを自動化する最良の方法

ClearCase、VS2005(C++)、インテルFORTRAN、Innoセットアップを含む私たちのパイプラインを包むperlスクリプトがあります。 UNIXではcronジョブを使用してビルドをスケジュールし、シンプルなApache Webサーバーをホストしてビルドを表示および監視します。すべてがかなり複雑なので、私は人々が使う棚のソリューションの中で最高のものが何であるか知りたいのですが?

そして、私は時々それをエスケープしないと言っていましたが、うまく動作しているいくつかの試みられたFEAコードのための巨大な再実装プロジェクトを行っていません。

答えて

3

私たちはCC.Netを実装しています。これまでのところ、あなたのモデルにかなりよく合うようです。

出荷時には、自動ビルド、結果の追跡、通知が提供されます。私は、ビルド・イン・プログレス・モニタリングがいかに詳細であるかは分かりません。

+0

私はCC.NETを演じてきた、私はソースの多数の開発者はClearCaseのプラグインに一つだけVOB(ソースデータベース)を想定し編集しなければなりませんでした。 – titanae

2

私たちはTeamCityを使っていますが、その単純なC#/ Javaの開発です。おそらくあなたのパイプラインは、ドライブできるスクリプトを使って実行できますか?

5

私が聞いた新しいことはかなり滑らかです。hudson - MSBuildのサポートもあります。

+0

我々はCの開発環境でそれを使用し、それは本当に便利です。私が説明した状況とハドソンについては何も言うことはできませんが、それはあなたがビルドプロセスでコマンドを実行することができますので、「バッチビルド」提供しています。 – Gregor

3

は、これを具体的に扱う多くのツールがあります。

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

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

1

CC.NETは非常に強力です。それを使用し、本当にそれについて幸せだった。システムトレイのステータスアイコンさえ。それは細かいことですが、プロジェクトの「健康」の概要をよく理解しています。あなたはすぐにそれが赤く見えるときにテストを修正する意欲を感じます。

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

0

私は、これは本当に古い質問ですけど、それはまだ検索しても来るので、誰かがJenkins言及する必要があります - ハドソンのオープンソースの継続を。 Jenkins wikiから

それらのものの中には、現在のジェンキンスは、次の2つのジョブに焦点を当てて:ちょうどCruiseControlのかDamageControlなどの

  • ビル/テスト用ソフトウェアプロジェクト連続、。一言で言えば、ジェンキンスさんは、それが簡単に開発者がプロ​​ジェクトに変更を統合できるようにすること、そしてそれが簡単に、ユーザーが新鮮なビルドを取得するために作る、簡単に使用できる、いわゆる継続的な統合システムを提供します。自動化された連続的なビルドにより、生産性が向上します。でも、これらのリモートマシン上で実行されていること、などのcronジョブやprocmailのジョブとして外部から実行されるジョブの実行を監視
  • 。たとえば、cronをして、あなたが受け取るすべての出力をキャプチャし、通常の電子メールで、それは熱心にそれらを見て、それが壊れた時に気づくためにあなた次第です。ジェンキンスはその出力を保持し、何かが間違っているときに気付くのを容易にします。

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

関連する問題