Travis CIはクラウドベースのオープンソース向け継続的統合(CI)ソリューションであり、Githubにホストされている。同プロジェクトは今後の計画を発表した。それによれば、企業ユーザがビルドマシンやテスト環境のメンテナンスがいらない継続的統合の恩恵を受けられるようにするためにプライベートビルドをサポートするつもりだ。オープンソースコミュニティ(特にRubyとNode.js)の力に牽引されて、ホスト型のCIサービス(Travis Proと呼ばれる)が普及し始め、同プロジェクトも寄付を募っている。
Ruby on RailsやRuby、、Node.jsなどいくつかのプロジェクトがGithubへ成果をコミットする毎にTravis CIを使ってビルドやテストを実施している。現在、PHP、Erlang、Clojureがサポートされており、Python、Scala、Javaも今後サポートされる予定だ。同プロジェクトのJosh Kalderimis氏の話によれば.Net系の言語もサポートされる予定だ。
ふたつのタイプの言語のサポートがあるます。標準タイプと'ファーストクラス'タイプです。'ファーストクラス'タイプのサポートは複数の仮想マシンの実装をサポートします。例えば、Rubyについては8つの異なるバージョンを提供しています。Node.jsは3つのバージョン、Erlangは4つか5つのバージョン、PHPも4つか5つのバージョンをサポートしています。このおかげでTravisはOSSのテストのための強力なツールになっています。実装したライブラリをRubyの複数のバージョンでテストできるからです。ライブラリのユーザも自身のサーバで利用しているRubyのバージョンで問題なく動作することが確認できます。現在、Python、Javaのファーストクラスサポートを勧めています。また、コミュニティから要求のある言語についてもファーストクラスサポートをしたいと思っています。.Netのサポートにはとても関心があります。アムステルダムにどうやって実現したらいいか考えている仲間がいます。でも、現在の私たちの環境はVirtualBoxとChefを使ってますので、実現するには時間をかけて環境を変更しなければなりません。
また、テスト前に使うプルリクエストという機能にも話題が及んだ。この機能は多くのコントリビュータがいるオープンソースプロジェクトの統合処理を素早く行うことができる。氏の説明によれば、
プルリクエストはOSSへの貢献という作業に画期的な変化をもたらすと思います。例えばRailsに貢献するとき、プルリクエストを送信するとTravisがテストを行い、ビルドの結果と共にそのプルリクエストに返信します。この機能のおかげでコントリビュータは提供したパッチが問題なかったかどうかが簡単に分かりますし、変更のマージも簡単に素早くできます。
このようなオープンソースプロジェクトでの成功が複雑なビルドプロシージャとデータベース/テストのセットアップを含む企業でのCIでも通用するかどうかが今後のTravis Proの挑戦になる。