回答:
Travis-ciとJenkinsですが、どちらも継続的な統合のためのツールですが、非常に異なります。
Travisはホストされたサービス(オープンソースの場合は無料)ですが、Jenkinsをホスト、インストール、構成する必要があります。
トラビスはジェンキンスのように仕事を持っていません。コードをテストするために実行するコマンドは.travis.yml
、プロジェクトコードに付随するという名前のファイルから取得されます。これにより、各ブランチが独自のバージョンの.travis.ymlファイルを持つことができるため、ブランチごとに異なるテストコードを簡単に作成できます。
次のプラグインのいずれかを使用すると、Jenkinsで同様の機能を使用できます。
.jervis.yml
プロジェクトコードのルートにあるファイルから作成ジョブを読み取れるようにするJenkinsの変更。.jervis.yml
存在しない場合は、.travis.yml
代わりにファイルの使用にフォールバックします。継続的インテグレーションについて検討する可能性のある他のホスティングサービスもあります(完全なリストではありません)。
Jenkinsに精通しているため、または継続的インテグレーションシステムをサードパーティに依存したくないので、Jenkinsを使い続けることをお勧めします。それ以外の場合は、Jenkinsを削除し、無料のホストされたCIサービスの1つを使用して、多くの問題(ホスト、インストール、構成、ジョブの準備)を節約します。
コードリポジトリがホストされている場所に応じて、次の選択を行います。
githubプロジェクトでTravis-CIをセットアップするために必要なことは、次のとおりです。
入手できる機能は次のとおりです。
TravisとJenkinsの両方に取り組みました。両方の機能のいくつかをリストアップします。
トラビスが最初に来る。セットアップはとても簡単です。GitHubでのセットアップには1分もかかりません。
ジェンキンス:
Travis: GitHubへの書き込みアクセス権を持つユーザーは、「ビルドを再開」をクリックしてビルドを再実行できます
ジェンキンス:フレーズに基づいてビルドを再実行します。のように、PR /コミットの説明にフレーズテキストを提供しますreverify jenkins
。
Travis: Travisはホスト環境を提供します。ビルドごとに必要なソフトウェアをインストールします。時間のかかるプロセスです。
Jenkins:ワンタイムセットアップ。必要なすべてのソフトウェアをノード/スレーブマシンにインストールし、プリインストールされた環境でビルド/テストします。
Travis: Amazon S3に配置するビルドログをサポートします。
Jenkins:ビルドアーティファクトプラグインで簡単にセットアップできます。
.travis.yml
軽減されます(!)自分のJenkinsを実行しているgithubプロジェクトがいくつかありますが、そのことを少し後悔していません。独自のJenkinsを実行できる場合は、そのオプションを強くお勧めします。CI環境を100%制御できると便利です。