プライマリ・コンテンツに移動
Oracle® Fusion Middleware継続的統合によるアプリケーションの開発
12c (12.2.1.2)
E82652-01
目次へ移動
目次

前
次

7 継続的インテグレーションのためのHudsonのインストールおよび構成

Hudsonは、一般に使用されている継続的インテグレーション・サーバー製品です。これを使用すると、ビルド・ジョブを定義し、これらのジョブの実行を管理できます。必要に応じて、ビルド・サーバーのファームまで拡張できます。

この章では、Hudsonをインストールしてビルド・プロセスを自動化するように構成する方法、およびMavenを使用してHudsonを統合する方法について説明します。

内容は次のとおりです。

7.1 Hudsonをインストールおよび構成するための前提条件

Hudsonをインストールするには、前提条件を満たしている必要があります。

Hudsonのインストールを開始する前に、継続的インテグレーション・システムの次のコンポーネントが構成されていることを確認します。

7.2 Hudsonのダウンロード

Hudsonは、WARファイルとしても、LinuxのRPMとしてもダウンロードできます。

Hudsonの最新の製品バージョンは、次の場所から直接ダウンロードできます。

http://hudson-ci.org/

Hudsonは2つの異なるバージョンに分かれています。

  • スタンドアロンとして実行するか、または既存のアプリケーション・サーバー・インストールに追加できるWARファイル。

  • 特定のオペレーティング・システム向けにコンパイルされているLinux RPM。RPMおよび必要な依存性をインストールするために、適切なリポジトリ形式のパッケージ管理サポートを利用できます。

このマニュアルでは、Oracle LinuxおよびWindowsのインストールについて重点的に説明します。他のオペレーティング・システムの詳細は、これらと異なる場合があります。各タイプのインストール手順については、http://wiki.eclipse.org/Hudson-ci/Installing_Hudsonを参照してください。

7.3 Hudsonのインストール

Hudsonは、LinuxまたはWindowsにインストールできます。

  • Linuxの場合:

    YUMをサポートするLinuxコンピュータで、次のコマンドを実行します。

    sudo wget -O /etc/yum.repos.d/hudson.repo http://hudson-ci.org/redhat/hudson.repo
    sudo yum check-update
    sudo yum install hudson
    

    これにより、Hudsonがデーモンとしてインストールされ、Hudsonユーザーが作成されます。このユーザーは、ビルド・ジョブ関連アクティビティを実行するために、サーバーによって使用されます。

  • Windowsの場合:

    HudsonのWAR配布ファイルをダウンロードする必要があります。次の手順でインストールします。

    1. 次のコマンドを実行して、Hudsonをスタンドアロン・モードで開始します。

      java -jar hudson-3.2.1.war
      
    2. Hudsonが開始したら、次の手順を実行します。

      1. 次のURLをWebブラウザで開きます。

        http://localhost:8080
        
      2. 「Manage Hudson」「Install as Windows Service」の順に移動します。これで、HudsonをスタンドアロンWindowsサービスとして構成できます。

        手順については、次を参照してください。

        http://wiki.eclipse.org/Hudson-ci/Installing_Hudson_Windows_Service

7.4 HTTPポートの構成

アーティファクト・リポジトリおよび継続的インテグレーション・サーバーに単一ホストを使用している場合、Hudsonが使用するHTTPポートを変更する必要があります。

HTTPポートを変更するには:

  • Linuxの場合

    この値は、/etc/sysconfig/hudsonディレクトリのHUDSON_PORTに存在しています。

  • Windowsの場合

    この値は、c:\ciroot\hudson\etc\sysconfig\hudsonディレクトリに存在しています。

7.5 Hudsonの開始

Hudsonを起動して、そのログを監視できます。

Hudsonを開始するには、次の手順を実行します。

  • Linuxの場合

    Hudsonをサービスとしてインストールしている場合は、次のコマンドを実行してアプリケーションを開始できます。

    /etc/init.d/hudson start
    

    次のディレクトリのログを確認すると、起動を監視できます。

    /var/log/hudson/hudson.log
    

    ログを監視するには、次のコマンドを実行します。

    tail -f /var/log/hudson/hudson.log
    
  • Windowsの場合

    Windowsで通常サービスとしてHudsonを開始します。

    1. 「コントロール パネル」に移動します。

    2. 「管理ツール」「サービス」の順に移動します。

    3. Hudsonサービスを選択し、「開始」をクリックします。

    Hudsonログは次の場所にあります。

    HUDSON_HOME/logs

7.6 起動後のMavenの構成

Hudsonのインストール後には、いくつかの手順を実行して、Hudsonと連携するようにMavenを構成する必要があります。

この項では、次の項目について説明します。

7.6.1 Hudsonの最初の起動

最初にHudsonを起動したときには、ホーム・ページに移動してインストールを完了します。

  1. ブラウザを開き、http://localhost:8080に移動します(インストール中にポートを変更した場合は、これを変更します)。
  2. 表示されたプラグインのリストを下にスクロールして、「Subversion」「Maven 3」および「Maven 3 SNAPSHOT Monitor」オプションを探し、これらのオプションを選択します。
  3. 一番下までスクロールし、「Install」をクリックします。
  4. 「Finish」をクリックし、Hudsonホーム・ページに移動します。

この項の構成の残りの部分は、Hudsonホーム・ページから続行し、ログインしていることを前提とします。

7.6.2 JDKの構成

ダイレクトJavaビルド構成に使用する予定のJDKを構成する必要があります。構成するには、次の手順を実行します。

  1. Hudsonホーム・ページから、「Manage Hudson」「Configure System」の順に移動します。
  2. 「Configure System」画面で、JDKセクションまで下にスクロールして「Add JDK」をクリックします。オプションの「Install automatically」を選択解除して、jdk1.7.0などの名前を入力し、インストールしたJDKの完全パスを追加します。

    たとえば、/ciroot/product_binaries/jdk1.7.0などです。

  3. ページの一番下までスクロールし、「Save」をクリックします。

7.6.3 Mavenホームの指定

Maven 3の場所を指定して、Mavenの場所をHudsonが認識できるようにする必要があります。これを行うには、次の手順を実行します。

  1. Hudsonホーム・ページから、「Manage Hudson」「Configure System」の順に移動します。
  2. 「Configure System」画面で、セクション「Maven 3」まで下にスクロールします。
  3. 「Add Maven」をクリックした後、次の図に示すように、オプション「Install automatically」の選択を解除し、名前とMavenインストールへのパスを入力します。
  4. ページの一番下までスクロールし、「Save」をクリックします。

7.6.4 Hudsonで使用するためのMavenの設定

HudsonからMaven設定を利用するには、settings.xmlの内容をHudsonのグローバルMaven構成の設定オブジェクトに組み込みます。

  1. Hudsonホーム・ページから、「Manage Hudson」「Maven 3 Configuration」の順に移動します。
  2. 「Add」をクリックします。
  3. 「Type」で「SETTINGS」を選択します。
  4. 名前および説明(オプション)を入力します。
  5. ファイル・システム上でsettings.xmlを探します(これはビルド自動化と依存性管理のためのMavenのインストールおよび構成で構成済です)。/$HOME/.m2/settings.xmlにあります。その内容を、ページの下部にある大きいテキスト・フィールドにコピーします。
  6. 「Save」をクリックします。

注意:

オラクル社では、settings.xmlにあるlocalhostのURL参照を完全修飾ドメイン名またはIPアドレスで置き換えることをお薦めしていますが、これは、Hudsonビルドが最終的には非ローカル・ビルド・ホストで発生するためです。

7.6.5 Hudsonプラグインのインストール

Hudsonジョブでは、ジョブ固有の環境変数のカスタマイズが必要になる場合があります。デフォルトでは、Hudsonはこれをサポートしていないため、追加のプラグインをインストールする必要があります。プラグインをインストールするには、次の手順を実行します。

  1. Hudsonホーム・ページから、「Manage Hudson」「Manage Plugins」の順に移動します。
  2. 「Available」を選択します。
  3. 「Hudson Setenv Plugin」を選択します。
  4. 「Install」をクリックします。
  5. インストールの完了後、Hudsonの再起動オプションを使用してプラグインを有効にします。

7.6.6 リポジトリの統合

変更がチェックインされたときに自動ビルドを構成するには、アーティファクト・リポジトリのSNAPSHOTデプロイメント変更を監視するように、Hudsonを構成する必要があります。このような変更は、変更されたアーティファクトに対する依存性を持つために影響を受けるコンポーネントのビルドをトリガーします。アーティファクト・リポジトリを監視するようにHudsonを構成するには、次の手順を実行します。

  1. Hudsonホーム・ページから、「Manage Hudson」「System Configuration」の順に移動します。
  2. 「System Configuration」のメイン・システム構成パネルで、「Maven 3 SNAPSHOT Monitor」を選択します。Mavenリポジトリへのパスを入力します。
  3. Archiva Mavenリポジトリ・マネージャのインストールおよび構成で、継続的インテグレーション・サーバーがリポジトリにアクセスできるように、継続的インテグレーション固有のユーザーを作成しました。継続的インテグレーション・ユーザーの「User」および「Password」を設定します。

7.6.7 Subversionの監視

アーティファクト・リポジトリの依存性更新を監視する以外に、継続的インテグレーション・サーバーではソース・コントロール・システムの更新を常に確認し、それに応じてプロジェクト・ビルドをトリガーする必要があります。リポジトリ監視とは異なり、ソフトウェア構成管理の監視は、ビルド構成ごとに一意に構成する必要があります。新しいビルド構成を作成する場合は、関連プロジェクトのSubversionの場所情報を設定する必要があります。詳細は、Hudsonを使用したビルドの自動化を参照してください。

Subversionのサポートは、基本のHudson配布に同梱されています。その他のソース・コントロール・システムでは、別個のHudsonプラグイン・インストールが必要になる場合があります。

7.7 Hudsonの詳細

このドキュメントは、Hudsonを起動して実行するクイック・ガイドとして作成されているため、Hudsonの操作について詳細は書かれていません。

Hudsonの公式マニュアルのプライマリ・ソースは次の場所にあります。

http://wiki.hudson-ci.org/display/HUDSON/Use+Hudson

新規ユーザーの場合は、次の場所でHudsonの導入ガイドを参照できます。

http://wiki.eclipse.org/Hudson-ci/Using_Hudson

Hudsonのマニュアルは次の場所にあります。

http://wiki.eclipse.org/The_Hudson_Book