InfoQ

News

ThoughtWorks社がCruiseをリリース:継続インテグレーションとリリースの管理システム

作者 Chris Sims, 翻訳者 沼田 暁子 投稿日 2008年8月4日 午後6時36分

コミュニティ
Agile
トピック
コンフィグ管理,
アナウンス,
リリース,
Japanese Build systems
タグ
CruiseControl,
ThoughtWorks,
Continuous Integration,
Cruise

継続インテグレーションはアジャイルのプラクティスであり、コミットされた一つ一つのコードの変更は自動的にビルドとテストが行われる。バグが取り込まれるとすぐにその多くを見つけることで、バグにかかるコストが削減される。7月28日、ThoughtWorks社(リンク)はCruise(リンク)をリリースした。これは継続インテグレーションをアプリケーションのテストとデプロイまで拡張したものである。Cruise(リンク) は、Windows(参考記事・英語)、Mac OS X(リンク)、Linux(参考記事・英語)上で動作し、また.NET(参考記事・英語)、Java(参考記事・英語)、Ruby(参考記事・英語)をサポートしている。

Cruise(リンク)は今年の4月にCruiseControl Enterpriseプロジェクトの製品として発表されたが(リンク)、このプロジェクトは一年ほど前にアナウンスされたものである(リンク)。Cruise(リンク)は商用製品であり、そのルーツはCruiseControl(リンク)にたどることができる。CruiseControlはオープンソースの継続インテグレーションツールで、1.0のリリースは2001年であった。Cruiseの製品マネージャであるJez Humble氏は、初めに4月に製品を発表(リンク)し、次のように述べていた。

ではなぜCruiseという名前なのでしょう?CruiseControlのおかげであると認めることは、継続インテグレーションのプラクティスの先頭にたつという点でも、私達の新しい製品で一部のコードを利用したと言う事実からも、私達にとって重要なことです。私達は、みなさんが「Cruise」という名前を見て、CruiseControlと関係があるとわかり、「どこが違うのですか?」と聞いて欲しいと思っています。私達は、みなさんが必要に応じて CruiseControlあるいはCruiseを選んで欲しいと思いますし、どちらの製品にとっても、もう一方の製品の存在を知ってもらうことはプラスになります。私達のウェブサイトからはCruiseControlのサイトへのリンクを張りましたし、これからも続けていきます。

Cruise(リンク)の重要な機能は、ビルドとリリースのパイプラインである。このコンセプトはDave Farley氏が2007年に発表した論文「The Deployment Pipeline (Extending the range of Continuous Integration)(PDF・英語)」(デプロイメント・パイプライン(継続インテグレーションの範囲の拡張))に書かれている。Cruise(リンク)により、最初のチェックインから機能テスト、性能テスト、ユーザ受け入れテスト、ステージング、そしてリリースと進んでいく際に、アプリケーションの変更をモニタリングすることが可能となる。ビルドからこれらの様々なステージに移るプロセスは、多くの場合手作業で行われ間違いを起こしやすい。これを自動で制御することによってミスは減り、デプロイのスピードが上がり、プロセスの可視性が改善される。

ThoughtWorks社は30日間無料の試用版Cruiseを(リンク)提供している。チームで必要となるソフトウェアのエージェントが2つ以下の場合、この製品は無料で使用できる。さらに、ほとんどのオープンソースプロジェクトや学術機関、非営利団体では、割引料金あるいは無料でCruiseを(リンク)利用できるだろう。

ThoughtWorks社(リンク)は機能と価格についてまとめた以下の表を提供している。

機能 利点
パイプライン アプリケーションが「コミット」から機能テスト、性能テスト、ユーザ受け入れテストを通して、ステージング、さらには製品へと進んでいくのを監視。
成果物の中央リポジトリ チームのメンバが情報やメトリクスをすぐに取得できるように、アプリケーションのバイナリやテストデータ、ログファイルを中央に保管。
LDAPやアクティブディレクトリの統合 エンド・ツー・エンドのセキュリティの確保。エージェント-サーバの通信はSSLと公開鍵認証を利用することで保護され、全てのエージェントはそのグリッドに参加するために承認を必要とする。
ゼロ・コンフィギュレーションでグリッドを構築 Cruiseエージェントをインストールするだけで、自動で更新が行われ、必要となる設定やソースコードを取得し、ビルドが開始される。
並列化 大きなビルドを独立した作業単位に分割し、Cruiseはそれらを同時に複数のエージェント上で実行してビルドにかかる時間を短縮するだろう。
マルチプラットフォームのテスト ハードウェアとソフトウェアを複数組み合わせてアプリケーションのテストを実行するため、ステージをパイプラインの中に作成。Cruiseは全てのビルド計画を指定されたステージで同時に実行する。
拡張性のあるダッシュボード あなたが単一の開発ストリームで働くテスタでも、多くのプロジェクトをモニタリングするプログラムマネージャでも、あるいは何百ものマシンを担当しているオペレーションマネージャでも、全ての必要な情報がひと目でわかる。

1年分の価格

エディション --> フリー チーム プロフェッショナル プレミアム
エージェント数 2 6 15 35
サポート フォーラム Eメール Eメール Eメール    (Dev Team)
価格 $0 $1,800 $3,900 $6,500

永久ライセンスの価格
エディション --> フリー チーム プロフェッショナル プレミアム
エージェント数 2 6 15 35
サポート フォーラム  Eメール* Eメール* Eメール*
(Dev Team)
価格 $0 $2,900 $5,900 $10,900

 

原文はこちらです:     http://www.infoq.com/news/2008/07/Cruise-Released

ブックマーク
digg+,
reddit+,
del.icio.us+,
dzone+,
Hatena

No comments

返信

特集コンテンツ一覧

トップスポーツチームの監督に教わる秘訣

この論文では、氏が発見した原則を要約し、その原則をいかにしてソフトウェア開発に応用するかを説明します。

事例研究:Dutch Railwaysのプロジェクトにおける分散拠点でのスクラム・プロジェクト

この記事では、私達がどのようにして大規模(240人月、10万行強)でインドとオランダの開発者も参加したスクラム・プロジェクトを成功させたのかを示しています。

Agile2008チーム参加レポート - 帰国そして変化

Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。参加者はカンファレンスで各々の発表や、各セッションへの参加、諸外国のエンジニアとの出会い、ステージ上で DearXPを熱演などの様々な思い出を抱えて、無事日本に戻ってきました。

SilverlightとJavaのインターオペラビリティ

マイクロソフトのRobert Bellが、SilverlightとJavaを使用したインターオペラビリティのシナリオを紹介し、サンプルコードを例にとってアーキテクチャの手引きを提供します。

Agile2008 チーム参加レポート - カンファレンス参加編

Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。サブミッションが選択された人、そうでない人も含めて、個々の目的意識の確認、膨大なプログラムから聞きたいセッションの選択、旅行の準備、プレゼンテーションの準備の期間を終えて、無事当日を迎えました。

Agile2008 チーム参加レポート - 動機/準備編

筆者はアジャイルソフトウェア開発についての年に一度の国際会議であるAgile2008に初めて参加してきました。今年の日本からの参加者の数は14名にも及び、発表者は5名、受け持ったセッションは8つに及び、例年にない活躍を見せました。なぜ今年のAgile2008では、これほど多くの日本人が参加し発表に至ったのか? そのレポートをお届けします。

Javaトラブルシューティングメルマガ総集編 2008/08~09

エスエムジーでは、Java全般を対象にしたトラブルシューティングサービス「JaTS」を提供しています。この記事では、前回に引き続き、JaTSにて蓄積したトラブル事例とその解決ノウハウの一部をお送りしている「Javaトラブルシューティングメールマガジン」(JTSMM)の総集編として、過去2ヶ月のトラブル事例と追加情報をダイジェストとして提供いたします。

モデル駆動アプローチがうまく機能しない(しなくなる)8 つの理由

この記事では、モデル駆動アプローチがうまく機能しない、または機能しなくなることによって期待した結果が実現できなくなる 8 つの理由について書きたいと思います。