私の会社は継続的インテグレーションサーバーの変更を検討しています(現在どのサーバーを使用しているのかは明言していないので、とにかく応答を歪めません:))誰か推奨があるかどうか疑問に思いますか?最高のユーザーエクスペリエンス、維持する難易度など...
コードはすべてJavaで作成されており、ビルドツールとしてANTを使用しています。
私は最近 Hudson サーバーを実装しました。以前Cruise Controlを使用したことがある私はHudsonに非常に満足しており、設定と使用の容易さに非常に感銘を受けています。新しいプロジェクトの追加は、以前よりもはるかに簡単ですクルーズコントロール付き。
編集:現在、Hudsonを使用しています
少し前に、私はこれらの束を次の要件で調べました:
継続的統合機能マトリックス は、始めるのに最適な場所です。
私は最終的に AnthillPro を選択し、それをうまく使用しています。私たちができることの表面をひっかいて、それを使用したいと思っています。
Jetbrains TeamCity 見てみると、本当に良さそうでした。それはJavaに基づいているので、チームメンバーが拡張しやすく、分散ビルドなどを実行できます...評価できる無料のバージョンがあります。
私もこれを調べていましたが、最初はCruiseControlを見ていましたが、Hudsonについて良いことを聞いて、試してみる。簡単に始められ(ダウンロードして実行するだけ)、設定はGUIを介して行われるため、XML設定ファイルをいじる必要はありません。
数分以内に、最初のAntビルドを実行しました。私は現在、サーバー上でWindowsサービスとして実行されており、オフィスでもVPNでも24時間年中無休で利用できます。アップグレードは、新しいwarファイルをダウンロードして再起動するのと同じくらい簡単です。
Junitレポートのサポートはそのまま使用できます。追加のプラグインのインストールも非常に簡単で、Trac、Cobertura、FindBugs、PMDのプラグインを追加しました。トレンドグラフの上昇を確認することは非常に満足できるため、コードとテストの品質は向上しています。
私は現在、それを使用して、テスト環境と実稼働環境用のすべてのビルドを管理しています。私はいくつかのWebアプリケーションを管理しているため、実際のプログラミングに費やす時間を増やすことができます。私はそれなしでどうやって管理したかを正直に思い出せません。
ここの他の人々のように、私は本当に愛 Hudson 。
インストール(設定するwarファイルのみ)、設定、使用は非常に簡単です。さらに、他のシステムでは必ずしも利用できない多くの機能を提供します(ビルドマトリックス、マスターとスレーブ、サーバーまたはプロジェクトレベルのセキュリティ...)
既存の plugins の数は非常に重要であり、独自のプラグインを作成することはそれほど難しくありません...
最後に、このアプリケーションは非常に速く進化します。現在、257番目のリリースにあり、1年間で100を超えるリリースを行っています。
フランス人のために、ハドソンを使用するための完全なガイドを書きました here 。
Atlassianスタッフソフトウェア(Jira、Cloverなど)を使用している場合は、Bambooが適しています。
数ヶ月使用しており、オススメできます。そのお金の価値があります。
Hudsonで完全に販売されていない場合は、ワンクリックテストドライブで気が変わります。
以下をクリックしてください:
https://hudson.dev.Java.net/hudson.jnlp
これにより、HudsonがJavaテストドライブのWeb Startを通じて起動します。起動したら、 http:// localhost:8080 / にアクセスしてダッシュボードに移動します。すべての構成このHudsonで実行することは〜/ .hudsonに保存されるため、Hudsonプロセスの再起動後もデータは存続します。
Svnやant/mavenなどのかなり標準的なツールを使用している場合は、ビルドして5分で実行できるはずです。さまざまなツールがあり、20分かかる場合があります。
ここで紹介を参照してください:
竹は素晴らしい働きをします。現金があればお勧めします。クルーズコントロールはその価格に見合う価値があります。ソースの変更が行われたことを確実に発見してビルドすることも、手動でビルドすることもできませんでした。インターフェースと設定は恐ろしく複雑です。
Continuous Integration Feature Matrix に関する一言:これはCruiseControlの人々によって収集されたのではなく、DamageControlプロジェクトによって CodeHausで開始 であり、次の場合にCruiseControl wikiに移動しましたDamageControlが休止状態に入りました。情報は主にプロジェクト/製品の所有者またはそのファンによって維持されます。
いつものようにJava世界では、オープンソースの世界と商業の世界があります。
すでにさまざまなサービスをかなりカバーしています。
Hudson:私は他に1つ知らないJavaこれが評価するのと同じくらい簡単なサーバー製品です。Java -jar hudson.war-方法それよりも簡単に取得できますか?Windowsで使用できるだけでなく、通常のすべてのJavaプラットフォームで使用できます。Ant、Maven、および他のビルドプラットフォームのホストがサポートされています。
Hudsonの最も優れた点は、プラグイン機能です。それはほぼ継続的に開発されています。あなたは機能を要求し、それが実行されるのに時間がかかりません。
私はたいていファンボーイのように聞こえるのが好きではありませんが、このアプリ/開発者/コミュニティは確かに私を感動させます。
BR、
〜A
Cruise Control を使用します。必要なすべての機能を備えており、セットアップは非常に簡単でした。 ANTおよびSVNとの統合は問題ありません。
欠点:ナイトリービルドのメッセージの送信を停止するため、時々プロセスまたはマシンを再起動する必要があります。それが何であるかはわかりませんが、それは単に迷惑です。
bamboo に満足しています。解決する前に、いくつかの無料のソリューションを調べました。
私たちは Automated Build Studio を使用しており、かなり満足しています。これはWindowsアプリなので、Windowsビルドサーバーで立ち往生していますが、プラス面では、セットアップ、保守、使用が非常に簡単です。ポイントアンドクリックを使用してコンポーネントからプロセスを構築し、ニーズを満たすコンポーネントがない場合はスクリプトを使用できます。
私が使用した数少ない中で、 Buildbot は最も強力で柔軟なものとして際立っています。それがあなたにとって重要であるなら、それはしかし、最もきれいではありません。
適切な結果を得るためにクルーズコントロールを使用しました。その後、すべてのプロジェクトでビルドツールにMavenを使用し始めました。それに伴い、ハドソンのCIに移行しました。 Mavenへの移行が将来になると思われる場合は、お勧めします。 Mavenラッパーを使用することもできますが、Hudsonを使用してAntタスクを呼び出すこともできます。
Thoughtworks Cruise は、 CruiseControl オープンソースプロジェクトの商用の子孫です。非常に見栄えがよく、多くの機能、分散ビルドなどがあります。拡張性とは何かわかりません。
私はBambooとHudsonの両方を管理しており、Hudsonを推奨します。
どちらもすばらしいですが、Hudsonはより良いレポートサポートを備えています。たとえば、カバレッジレポートの公開などは、Hudson内で非常に簡単です。
これは近い将来変更される可能性がありますが、BambooとJIRAなどの統合およびその統計にもかかわらず、Hudsonは使いやすさとサードパーティのサポートのために、金額に関係なく優れています(無料ですが、Bambooはそうではありません)。 。
私たちはハドソンも使用しており、それが景気後退ではなかった場合は、Bambooとほとんどのアトラシアン製品(Bamboo、Crucible、Confluence)をJIRAと共に使用することになります。
私が実行している組織(openqa.org)は、いつか、ほぼすべての組織を使用しています。簡単な設定という点では、TeamCityまたはBambooを使用してください。しかし、全体的な信頼性の観点からは、ハドソンを検討することをお勧めします。私本当に JetBrainsに似ていますが、TeamCityがしばらくして奇妙な状態になり、ビルドの信頼性が非常に低下することがわかりました。 IDEAが大好きなので、残念!
Parabuildを確認してください。無料のツールと比較すると、セットアップが非常に簡単で、メンテナンスのオーバーヘッドはほとんどありません。それは無料ではありませんが、あなたが支払うものを手に入れます。
ホステッドCIサービスを使用しないのであれば、メンテナンスやコストなどを心配する必要はありません。
MikeCIは、Amazon EC2でビルドをホストする hosted CI service であり、月額わずか10ドルで、独自のCIサーバーを維持するよりもはるかに安価です。
試してごらん。
あなたもそれを見てみたいかもしれません
http://www.thoughtworks-studios.com/solutions/deployment-managementリンクテキスト
ThoughtWorks Deployment Management Solutionは、Twist(アジャイルテスト)の機能とGo(リリース管理)を組み合わせたものです。
私たちは Zutubi Pulse を使用しており、それは私たちにとって素晴らしい働きをします。 antは非常に使いやすく、多くの高度な機能を備えています。
継続的インテグレーションサーバーには Continuum を使用しています。私が最後の任務で使用した開発マネージャーを雇う以外に理由はなかったので、少なくとも私たちの1人が経験したものを選ぶのは理にかなっているようでした。
Continuumを選択する前に、私はジュニア開発者に2週間かけてCruiseControlの実行を試みさせました。ただし、Continuum 1.0を最初に実行しました。
CruiseControl.NETは、Windowsボックスでより効果的で、元のJavaベースのものです。特に、専用のビルドサーバーがまだ使用できない場合)。
StarTeamを使用しており、HudsonとCruiseControl.NETの間で、CC.NETはStarTeamと統合するときにいくつかのバグがあります。設定ファイルで定義したワークスペースを認識していないようです。
昨年のアメリカでの会議で、私は最初に1時間のプレゼンテーションでCruise Control .netについて聞いた、私が平野で家に帰る途中で、私たちの会社に小さなPOCを実装することに決め、5時間未満でそれを成功させた(私が行うことができたすべての学習を含む)。
私はそれを使用しているので、結果と操作の容易さに非常に満足していると言わざるを得ません。いくつかの欠点があります(たとえば、複数のサーバーを監視できますが、サーバー全体にタスクが分散されていない)バグを発見しました実装の1つであり、それがオープンソースであるため、すぐに修正できた(大きな利点)-修正プログラムを含めるために、コードプレックスに小さな[プロジェクト] [1]を作成してから、チェックインとしてコミュニティに提供しました。 。このプラットフォームをご覧になることを強くお勧めします。また、実際に必要なことを言えるといいですね。
[1]: http://www.codeplex.com/DavidovitzCCE プロジェクト
fazend.com で無料のホスト型CIサービスを検討してください。 ant
をサポートしています。