TeamCity 2019.2ヘルプ

ビルド・チェーン

このページで:

ビルドチェーンは、スナップショット依存関係によって相互接続された一連のビルドです。ビルドチェーンは「パイプライン」と呼ばれることもあります。リビジョンの同期を有効にしてスナップショットの依存関係とリンクされたビルドチェーンの一部は、ソースの同じスナップショットを使用します。

一般的なユースケース

ビルドチェーンを指定するための最も一般的なユースケースは、異なるプラットフォーム上でプロジェクトの同じテストスイートを実行することです。例: リリースビルドの前に、異なるプラットフォームや環境でテストが正しく実行されることを確認したいです。この目的のために、TeamCityにテストを実行してから統合ビルドを最初に実行し、その後リリースビルドを実行するように指示できます。

チェーン構築メカニズムがどのように機能するのか詳細に見てみましょう。リリースビルド構成の依存ビルドを起動すると、TeamCityは次のことを行います。

  1. リリースビルド構成スナップショットが依存するすべてのビルド構成のチェーンを解決します。

  2. すべての依存ビルド構成の変更をチェックし、ビルドチェーンの最初のビルドがビルドキューに入るときに同期します。

  3. 特定のリビジョンでビルドする必要があるすべてのビルドをビルドキューに追加します。

ビルドチェーンの設定

ビルド構成に依存関係を指定する :

  1. ビルド設定ページで、依存関係を選択します。

  2. 依存関係ページで、新しいスナップショット依存関係を追加するリンクをクリックしてください。

詳細と例については、依存関係を構築するも参照してください。

ビルドチェーンからキュービルドを停止/削除する

ビルドが停止またはビルド待ち行列から除去されているビルドがビルドチェーンの一部である場合は、コメント・フィールドにメッセージ "このビルドはビルドチェーンの一部です"があります。

ビルドチェーンの他の実行中またはキューに入っている部分(つまり、アクションでビルドに関連する他の実行中のビルドまたはキューに入っているビルド)がある場合、これらのビルドはラベル「他の部品を停止」にリストされます。

ユーザーがリスト内のビルドを停止するアクセス権を持っている場合は、その近くにチェックボックスがあります。現在のビルドを停止するとリスト内のビルドが確実に失敗する場合(デフォルトでは、リストされているビルドが停止中の元のビルドに依存している場合など)は、このチェックボックスはデフォルトでオンになっています。

ユーザーがリストからビルドを中止するアクセス権を持っていない場合、チェックボックスは表示されません。

チェックボックスを選択すると、選択したビルドにキューからの停止/削除のマークが付けられます。

ユーザーがビルドチェーンの一部であるビルドを表示するためのアクセス権を持っていない場合、このビルドはユーザーにはまったく見えません。そのようなビルドが少なくとも1つある場合は、「 そのすべての部分へのアクセス権がありません 」という警告が表示されます。ストライプは、メッセージ "このビルドはビルドチェーンの一部です"のすぐ下に表示されます。

現在のユーザーがチェーンビルドの他の部分をすべて見ることができない場合は、「 他の部分を見るためのアクセス権がありません 」という警告とともに黄色いストライプが表示されます

ビルドチェーンの実行中またはキューに入っているビルドがない(つまり、ビルドチェーンの他のすべての部分が終了した)場合、追加情報は表示されません。

チェーン部品間のリビジョン同期を無効にする

ビルドをプロモートするときに、ビルド構成のスナップショット依存関係のリビジョン同期を無効にすることができます。
このオプションは、チェーンパート1からチェーンパート2にビルドをプロモートし、パート2の最初のビルド構成でこのオプションが無効になっている場合に機能します。この場合、TeamCityは、パート1とパート2のビルドに異なるソースリビジョンを使用できます。依存関係を構築するビルドセットアップ例を参照してください。

これは、コードリビジョンとその依存関係(チェーンでの先行ビルド)とを同期させずに依存ビルドを実行する必要がある場合に役立ちます。
例:古いビルドをデプロイビルド構成に昇格させることができ、このビルドは最新のデプロイスクリプトを使って実行されます。負荷/受け入れテストでは、テストをバージョン管理システムに格納し、システムをテストするためにテストを変更することが多い場合は、アプリケーションを完全に再構築する必要はありません。代わりに、テスト段階から直接チェーンを選ぶことができます。

チェーン視覚表現を構築する

基本的に、各ビルドチェーンは有向非循環グラフです(英語)。つまり、サイクルを持つことはできません。

ビルドチェーンは、TeamCity Web UIのさまざまな場所に表示されます。

ビルド構成設定の依存関係ページ

ビルド構成がビルドチェーンの一部である場合は、対応する情報がビルド構成設定 | 依存関係 | スナップショットの依存関係に表示されます。build チェーンリンクをクリックすると、build チェーンのプレビューとその設定が別ウィンドウで開きます。プレビューはチェーンのビルドを表示します。自動トリガが設定されているビルドは、v.pngというアイコンでマークされています。

Preview of snapshot dependencies

プロジェクトホームページとビルド構成ホームページのチェーンのビルドタブ

プロジェクトとビルド構成の両方のページでビルドチェーンを確認できます。これらの各ページには、スナップショット依存関係が構成されているときに表示されるビルド・チェーンタブがあります。

このタブには、このプロジェクトのビルドまたはこのビルド構成を含むチェーンのリストが表示され、フィルタリングすることができます。最後に完成したビルドのチェーンがリストの一番上に表示されるように、ビルドチェーンがソートされていることに注意してください。

円グラフのアイコンは、チェーンの一部であるビルドのステータスの比率を表示します。円グラフにカーソルを合わせると、詳細が表示されます。

Collapsed build chains

チェーンが拡張されると、以下の情報も利用可能です。

  • このビルドチェーンを構成するすべてのビルド

  • これらのビルドの状況: トリガーされていない、キュー内にある、実行中または終了した、およびその詳細

  • チェーンは実際の実行順にビルドを表示します。つまり、最初に始まるビルドは左側に表示されます。

チェーンでビルドをクリックすると、選択したビルドとそのすべての直接の依存関係が強調表示されます。このページ:

  • チェーンのコンパクトな表現を提供します。複数のトップビルドが依存ビルドの同じチェーンをトリガーした場合、TeamCityは複数のトップビルドを含む1つのビルドチェーンを表示します。

  • 追加の表示オプションがあります:プロジェクトによるグループ化と詳細を隠す。

  • ビルドチェーンでビルドが選択されたときに、すべてのダウンストリーム/アップストリームビルドを推移的に強調表示します。

このページから、次のこともできます。

  • まだ「トリガーされていない」ビルドがある場合は、チェーンを続けます。実行ボタンをクリックすると、新しいビルドがチェーンリビジョンで開始され、このチェーンからのビルドに関連付けられます。

  • custom_build(1).png をクリックして、ビルドチェーンリビジョンが事前に選択された状態でカスタムビルドダイアログを開きます。チェーンで何らかのビルドを再実行したい場合は、このアクションを使用できます。

ビルド結果ページの依存関係タブ

依存関係が設定されている場合は、ビルド結果ページの依存関係タブでそれらの詳細を表示できます。このタブには間接的な依存関係も表示されます。たとえば、ビルドAがビルドCとDに依存するビルドBに依存する場合、これらのビルドCとDはビルドAの間接的な依存関係です。
このタブには、チェーンのビルドによってダウンロードされ配信された成果物も表示されます。ビルドをグループ化/グループ解除したり、以前のチェーンから再利用されたビルド( 適切なビルド )を強調表示することもできます。


関連事項:

概念 : 依存ビルド
管理者ガイド : 依存関係の設定 | 依存関係を構築する


関連ページ:

依存ビルド

TeamCityでは、1つのビルド構成は1つ以上の構成に依存できます。2種類の依存関係を指定できます。スナップショットの依存関係、成果物の依存関係、成果物の依存関係は、あるビルドによって生成された成果物を別のビルドに移すための単なる方法です。対応するスナップショットの依存関係がない場合は、ビルド構成...

依存関係を構築する

このページは、例に基づいて、TeamCityで依存関係がどのように機能するかについての一般的な概念を説明することを目的としています。依存関係の説明については、依存ビルドを参照してください。このページで:導入、基本、アーティファクトの依存関係、スナップショットの依存関係いつビルドチェーンを作成するか、...

デプロイビルド構成

TeamCityは、デプロイタイプのビルド構成を提供します。一部の環境へのデプロイを実行するビルド構成は、このタイプでマークできます。これらは通常、結果がデプロイされるビルドにスナップショットまたはアーティファクトの依存関係があるビルド構成です。ビルド構成を作成した後、その一般設定を開き、ビルド構成...

機能ブランチを使用した作業

分散バージョン管理システム(DVCS)のフィーチャーブランチを使用すると、メインの開発とは独立してフィーチャーを操作し、フィーチャーのすべての変更をブランチにコミットして、フィーチャーが完了したときにメインブランチに変更をマージできます。このアプローチは、ソフトウェア開発チームに多くの利点をもたらし...