web-dev-qa-db-ja.com

Jenkins対Travis-CI。どちらをオープンソースプロジェクトに使用しますか。

私のプロジェクトでは、JenkinsとTravis-CIのどちらかを選択する必要があります。私は何年もJenkinsを使ってきましたが、Travis-CIについての良いレビューも読んでいます。

どちらをオープンソースプロジェクトに使用しますか。両方の主な利点または利点は何ですか?

242
Juan Luis

Travis-ciとJenkinsは、どちらも継続的インテグレーションのためのツールですが、非常に異なります。

あなたがJenkinsをホストし、インストールしそして設定しなければならない間、Travisはホストされたサービス(オープンソースのために無料)です。

TravisはJenkinsのように jobs を持っていません。コードをテストするために実行するコマンドは、プロジェクトコードに沿った.travis.ymlという名前のファイルから取得されます。各ブランチは独自のバージョンの.travis.ymlファイルを持つことができるので、これはブランチごとに異なるテストコードを持つことを容易にします。

以下のプラグインのいずれかを使用すれば、Jenkinsでも同様の機能を持つことができます。

  • Travis YMLプラグイン - warning:あまり普及していないようですが、実際のTravisと比べて機能が完全ではないでしょう。
  • Jervis - プロジェクトコードのルートにある.jervis.ymlファイルから作成ジョブを読み込むようにするためのJenkinsの修正。 .jervis.ymlが存在しない場合は、代わりに.travis.ymlファイルを使用するようになります。

継続的インテグレーションのためにあなたが考慮するかもしれない他のホストされたサービスがあります(非網羅的なリスト):


選び方は?

Jenkinsに慣れ親しんでいるか、継続的インテグレーションシステムをサードパーティに頼らないために、Jenkinsを使い続けることをお勧めします。そうでなければ、Jenkinsをやめて、無料のホスト型CIサービスのいずれかを使用することになります。ホスト型、インストール型、構成型、ジョブ作成型のいずれかです。

あなたのコードリポジトリがホストされている場所に応じて、私は以下の選択をするでしょう:

  • 社内→Jenkinsまたはgitlab-ci
  • Github.com→トラビスCI

GithubプロジェクトでTravis-CIをセットアップするために必要なことは、次のとおりです。

  • プロジェクトのルートに .travis.yml ファイルを追加します。
  • travis-ci.comでアカウントを作成してプロジェクトを有効にします

あなたが得る機能は次のとおりです。

  • Travisはレポで行われたすべてのPushに対してテストを実行します。
  • Travisは寄稿者が行うすべてのpull requestであなたのテストを実行します
270
Thomasleveil

私はTravisとJenkinsの両方に取り組みました。両方の機能のいくつかをリストします。

プロジェクトのCIの設定

トラヴィス は最初に来る。セットアップはとても簡単です。 GitHubの設定には1分もかかりません。

  1. GitHubにログイン
  2. Travis用のWebフックを作成する( 編集:
  3. Travisに戻り、GitHubの認証情報を使ってログインします。
  4. GitHubリポジトリを同期して、プッシュとプルのリクエストを有効にします。

ジェンキンス:

  1. 環境をつくる(Master Jenkins)
  2. Webフックを作成する
  3. 各ジョブを設定します(Travisと比較すると時間がかかります)

ビルドを再実行する

Travis: GitHubに書き込み権限がある人なら誰でも `restart buildをクリックすることでビルドを再実行できます

Jenkins: フレーズに基づいてビルドを再実行する。 PR/commitの説明には、reverify jenkinsのようにフレーズテキストを指定します。

制御環境

Travis: / Travisはホスト型環境を提供します。すべてのビルドに必要なソフトウェアをインストールします。それは時間のかかるプロセスです。

ジェンキンス: ワンタイムセットアップ。必要なすべてのソフトウェアをノード/スレーブマシンにインストールしてから、プレインストール環境でビルド/テストします。

ログを作成します。

Travis: Amazon S3に配置するビルドログをサポートします。

Jenkins: /ビルドアーティファクトプラグインで簡単にセットアップできます。

36
RBT

私はTravis for Open sourceプロジェクトを提案します。設定と使用は簡単です。

セットアップの簡単な手順

  1. _ github _ アカウントを持ち、GITHUBアカウントを使用して Travis CI Webサイトに登録する必要があります。
  2. プロジェクトのルートに.travis.ymlファイルを追加します。 Travisをリポジトリ設定ページのサービスとして追加します。

今すぐあなたのリポジトリにコミットするたびにTravisはあなたのプロジェクトを構築します。あなたは 簡単なステップで始めることができます Travis CIで/.

26
appsntech