Rational Build Forge と Rational ClearQuest

BuildForge は、ビルド・レコードの更新のために Rational ClearQuest と協働することができます。

Build Forge と ClearQuest の統合には、以下の 2 つがあります。

これらの機能は、それぞれ完全に独立しています。 特に、アダプターは、そのアダプター用に作成された環境と関連付けられています。 その環境内の変数は、自動ビルド・レコードをアクティブにするために設定される変数とは無関係です。

ビルド・レコードの自動生成のセットアップ

IBM Rational® ClearQuest® データベース内に、ログ・データへのリンクを含むビルド・レコードが自動的に作成されます。 さらに、ジョブが成功すると、システムは ClearQuest データベースを更新し、ジョブが完了したことを示してから、完遂したステップの終了時刻および要約を記録します。この機能には、Rational ClearQuest バージョン 7.0 以降が必要となります。

ClearQuest データベースを更新するようにプロジェクトを構成すると、システムはビルド・レコードを以下のように作成または更新します。
ジョブの開始
システムは、ジョブを起動すると、ClearQuest ビルド・レコードを作成します。ビルド・レコードは「実行依頼済み (Submitted)」状態になり、「ビルド XYZ が開始しました」というログ・エントリーに加えて、ジョブ・ログの URL、開始時刻、リリース名、および ID がレコードに含まれます。ソース制御アダプターがジョブをキャンセルすると (例えば、ソースの変更がなかったため)、ClearQuest ビルド・レコードは作成されません。
注: あるプロジェクトが別のプロジェクトをチェーニングすると、新規プロジェクトはそれ固有の ClearQuest ビルド ID を取得します。
ジョブの成功または失敗
ジョブが成功または失敗すると、ClearQuest 内のビルド状態が「完了」または「失敗」に変更され、ビルド終了時刻が設定され、ClearQuest ビルド・ログにジョブのステップの要約が保管されます。要約には、各ステップの名前、結果状況、およびサーバーが含まれます。
ジョブの再開
ジョブを再開すると、ClearQuest 内のビルド状態が「実行依頼済み (Submitted)」になり、「XYZ のビルドが再開しました」という内容の ClearQuest ビルド・ログ・エントリーが作成されます。

ビルド・レコードの自動更新は、特殊な環境変数を使用して構成します。 プロジェクトを ClearQuest データベースとリンクするには、下表の変数がプロジェクトの環境変数に組み込まれていることを確認してください。

注: これらの変数はプロジェクト環境変数内に存在している必要があります。ステップに追加するだけでは十分ではありません。 ただし、別の環境変数を介してこれらの変数を含める「組み込み」タイプに設定された変数を使用することができます。 また、プロジェクトごとに変わる可能性があるのは CQ_RELEASE_NAME の値のみであるため、その他の変数を含む環境変数を作成し、「組み込み」型の変数を使用してプロジェクト環境変数内にその環境変数を含めることができます。その場合、CQ_RELEASE_NAME をプロジェクト固有の環境変数として指定することもできます。

Build Forge ジョブからビルド・レコードの自動更新をアクティブにするには、プロジェクトに対して以下の環境変数を設定する必要があります。 これらはステップ・レベルでは機能しません。

変数

説明

CQ_DBNAME

これは必須です。更新する ClearQuest データベースの名前。

CQ_DBSET

ClearQuest データベースの設定値です。必須ではありません。 デフォルトはブランクです。

CQ_INTERACTION

プロジェクト環境変数に定義済みの正しい環境変数があり、ClearQuest ビルド・レコードの作成が使用可能になっているが、ビルド・レコードを作成したくない場合は、この変数を OFF に設定して、ビルド・レコードの作成を使用不可にします。

ビルド・レコードの作成を使用可能にするには、この環境変数を ON に設定します。

注: ClearQuest アダプターのいずれかを使用している場合は、この環境変数を OFF に設定してください。このアダプターは、ビルド・レコードと直接対話します。

CQ_PASSWORD

これは必須です。ClearQuest データベースにログインするときに使用するパスワードです。必須ではなく、デフォルトはブランクです。

CQ_RELEASE_NAME

これは必須です。ClearQuest データベース内にある更新するリリースの名前です。

CQ_USER

これは必須です。ClearQuest データベースにログインするときに使用するユーザー名です。

ClearQuest アダプターのための追加セットアップ要件

ClearQuest アダプター・テンプレート・サンプルでは、ClearCase のスキャン方法と ClearQuest のビルド・レコードの更新方法が提供されます。通常は、これにより Build Forge で実行されるビルドの成否が左右されます。一般要件については、アダプター要件を参照してください。 また、以下の構成を行う必要があります。

以下を実行します。

  1. Build Forge エージェントを、ClearCase サーバーに接続可能なホスト上にインストールします。
  2. エージェント・ホストに ClearCase のフル・クライアントをインストールします。
  3. ClearCase クライアントからコマンドを実行できるように、エージェントの環境をセットアップします。
  4. Build Forge コンソール・ホストに ClearQuest のフル・クライアントをインストールします。
  5. cqperl (ClearQuest Perl API) ディレクトリーをシステム・パスに追加します。
  6. Build Forge ホスト上の ClearQuest クライアントが ClearQuest データベースにアクセスする際に使用できる接続を定義します。以下のアクションを ClearQuest クライアント・ホストで実行します。
    1. cqreg コマンドを使用して、データベース・セットを追加する (cqreg add_dbset)。
    2. CQ メンテナンス・ツールを使用して、ClearQuest データベースへの接続をセットアップする。
  7. 必要な ClearCase ビューを実装する方法、およびそのビューをいつどのように開始するかを決定します。
Build Forge、ClearCase、および ClearQuest のインストール済み環境の関係を示すアートワーク。

エージェントをインストールする必要はありません。 ClearQuest アダプターは、ClearQuest Perl API を使用して、クライアントを介して ClearQuest と直接通信します。

重要: ClearQuest アダプターは、ステップ内でドット・コマンドを使用することによってのみ呼び出すことができます。 ソース・アダプターではないため、アダプター・リンクは使用できません。

ClearQuest のアダプター・テンプレート・サンプル

以下のアダプター・テンプレート・サンプルが用意されています。

ClearQuestBaseClearCaseByDate
  1. 2 つの日付の間に変更がないか、ClearCase ビューを照会します。 デフォルトの日付は、現行のタイム・スタンプおよび前のアダプター実行時のタイム・スタンプです。
  2. 変更された各ファイルについて、ClearQuest 変更 ID を指定する CrmRequest ハイパーリンク属性を探します。 ClearQuest 状況により解決が可能な場合は、ジョブ情報を追加して変更 ID の解決を試行し、ClearQuest 内の不良レコードを解決します。
  3. 変更された各ファイルに関して、次の情報を BOM レポートに書き込みます: ファイル名、不良 ID、不良状況、および ClearQuest エラー。

このアダプター・テンプレートで定義される変数は以下のとおりです。

  • CurDate
  • LAST_RUN
  • VIEW
  • VOB_PATH
  • CQ_USER
  • CQ_PASSWORD
  • BFSERVER
  • UNIXCLIENT
  • _CHAR_NATIVE
ClearQuestClearCaseByActivity
  1. ClearCase アクティビティーのリストに関連付けられた ClearQuest 不良レコードを検出します。
  2. 検出された各不良レコードについて、ClearQuest 状況により解決が可能な場合は、ジョブ情報を追加して ClearQuest 内の不良レコードを解決します。
  3. ClearCase アクティビティー ID および ClearQuest 不良状況に関連付けられたファイルに関する情報を、BOM レポートに書き込みます。

このアダプター・テンプレートで定義される変数は以下のとおりです。

  • CurDate
  • VIEW
  • VOB_PATH
  • ACTIVITIES
  • CQ_USER
  • CQ_PASSWORD
  • PROJECT_VOB
  • BFSERVER
  • UNIXCLIENT
  • _CHAR_NATIVE
ClearQuestUCMClearCaseByDate
  1. 2 つの日付の間に変更がないか、ClearCase ビューを照会します。 デフォルトの日付は、現行のタイム・スタンプおよび前のアダプター実行時のタイム・スタンプです。 これは、Rational 統一変更管理 (UCM) を使用して、結果を生成します。
  2. 変更された各ファイルに関して、次の情報を BOM レポートに書き込みます: ファイル名、不良 ID、不良状況、および ClearQuest エラー。

このアダプター・テンプレートで定義される変数は以下のとおりです。

  • CurDate
  • LAST_RUN
  • VIEW
  • VOB_PATH
  • CQ_USER
  • CQ_PASSWORD
  • BFSERVER
  • UNIXCLIENT
  • _CHAR_NATIVE

ClearQuest のアダプター変数

この表は、アダプター・テンプレートの変数リストのリファレンスです。

表 1. Rational ClearQuest の統合に必要となる環境変数

変数

説明

ACTIVITIES ClearQuestClearCaseByActivity アダプターの場合、 スペースで区切られた、アクティビティー ID のセット。例: SAMPL0001@¥ProjectVob
BFSERVER この変数を、Build Forge コンソールのホストの名前に設定します。

CQ_PASSWORD

これは必須です。ClearQuest データベースにログインするときに使用するパスワードです。必須ではなく、デフォルトはブランクです。

CQ_USER

これは必須です。ClearQuest データベースにログインするときに使用するユーザー名です。

CurDate 現在の日付をアダプターに指定します (日付の生成には .date コマンドを使用します)。 この値は変更しないでください。
LAST_RUN ByDate アダプターの場合、システムはこの値を使用して、何らかの変更が発生したか判別します。この値は、最後に正常に実行されたときの日付です。 アダプターのテストの際には、この値を操作し、変更より前であると分かっている日付を取り出して、アダプターを強制的に実行させることができます。アダプターが実行の継続を許可した場合、この値は、現在の日付に自動的に更新されます。 デフォルト値は、1-Jan-05.00:00:00 です。
UNIXCLIENT プラットフォーム固有の情報を設定するために使用されます。 クライアントが Windows 上で実行されている場合は、0 に設定します。 クライアントが UNIX または Linux 上で実行されている場合は、1 に設定します。
VIEW この変数を、アダプターで使用する ClearCase ビューの名前に設定します。
VOB_PATH この値を、コンポーネント VOB の名前 (オプションで、そのサブディレクトリー) に設定します。名前が複数ある場合は、コンマ区切りのリストを使用します。
_CHAR_NATIVE 内部で使用され、常に 1 に設定されます。

ClearQuest 統合ジョブの再始動

ClearQuest 統合が完了すると、通常は Rational Build Forge で再始動することはできなくなります。 これは、ジョブを新規ジョブとして開始すれば簡単に回避できます。

再始動を有効にするには、ClearQuest デザイナー・ツールで ClearQuest スキーマを編集してください。 「完了」から「作成」の状態遷移を可能にするには、ビルド・レコードのワークフローを変更する必要があります。


フィードバック