Perforce シェルフトリガー
Perforce シェルフトリガーは、Perforce 変更リストの保留中のファイル(英語)の変更を検出すると、自動的にビルドを実行します。
前提条件
トリガーは Perforce 2018.2 以降をサポートします。
トリガー設定
トリガーは、現在のビルド構成に関連付けられているすべての Perforce VCS ルートを監視します。監視対象の変更リストは、その説明でフィルタリングできます。これを行うには、検索に必要なキーワードを指定します。
トリガー動作
一致する変更リストのシェルフファイルに変更が加えられると、TeamCity はこれらのファイルの内容を使用して新しいパーソナルビルドを開始します。
現在のビルドがコンポジットの場合、ビルドチェーン全体が、シェルフされたファイルの変更時にトリガーされます。
Perforce VCS ルート設定でストリームサポートが有効になっている場合、このトリガーは変更されたファイルからターゲットストリームを検出し、デフォルトのストリームが指定されている場合でも、このストリームで個人ビルドを実行します。
TeamCity は、シェルブされたファイルを以下のように処理します。
リモートのソースコードはチェックアウトされています(エージェント側については、下記の注記を参照してください)。
p4 unshelve -s <specified-changelist>コマンドが呼び出されます。p4 syncを再度実行して、unshelveステップによって影響を受けたファイルの最新リビジョンを復元します。p4 resolve -amは変更を自動的にマージし、競合を解決します。解決されない競合が残っている場合、ビルドは失敗します。自分だけのカスタムビルドが始まる。
ビルドが完了すると、
p4 revertとp4 cleanはワークスペースを元の状態に復元し、シェルフから追加されたファイルを削除します。
パラメーター化されたシェルブ付き変更リスト ID
TeamCity は、構成パラメーター vcsRoot.rootExternalId.shelvedChangelist に、変更によってこのビルドがトリガーされた変更リストの ID を提供します。
VCS ルート ID が利用できない / 不要な場合は、vcsRoot.1.shelvedChangelist 構成パラメーターを使用します。
イベントのログ
このトリガーは、perforceShelveTrigger ログキーを使用してイベントを teamcity-triggers.log ファイルに記録します。
関連ページ:
カスタムビルドの実行
通常、ビルド構成ではビルドトリガーを使用して、必要なスケジュールに従って、または TeamCity がソースコード内の新しい変更を検出したときに新しいビルドを開始します。これらの自動的にトリガーされるビルドに加えて、TeamCity ではビルドを手動で実行し、必要に応じて設定をカスタマイズすることもできます。つまり、新しいプロパティの追加または既存のプロパティの変更、特定の変更の選択、ビルドのスケジュール、ビルドを実行するエージェントの選択などを行うことができます。TeamCity には、カスタ...
ビルドの管理
このセクションには、TeamCity の既存のビルド構成の管理に関連する記事が含まれています。その内容については、サイドバーを参照してください。それらを作成および構成する方法については、このセクションに進んでください。2025 年 4 月 07 日リスクグループテストを最初に実行するビルドの主なアクション
パーソナルビルドの実行
個人ビルドは、通常、バージョン管理にまだコミットされていない変更を使用する共通ビルドシーケンスからのビルドです。個人ビルドは通常、サポートされている IDE の 1 つからリモート実行プロシージャを介して開始されます。カスタムビルドを実行するダイアログから個人ビルドを開始し、変更を加えたパッチをサーバーに直接アップロードすることもできます。個人ビルドには対応するアイコンが付いており、ビルドを開始したユーザーのみに表示されます。他の TeamCity ユーザーの個人ビルドを表示するには、ユーザープロ...
コンポジットビルド構成
コンポジットビルド構成は、複数の通常のビルド構成をトリガーし、結果を 1 か所で追跡するように設計された「ステップレス」構成です。重要なポイント:複合構成では、実際の構築ルーチンは実行されません。複合構成では、依存関係からすべての情報が集約され、一元的な方法で表示されます。複合ビルドはビルドキュースロットを占有せず、エージェントを実行する必要もありません。ビルド構成タイプを切り替えるには、「構成設定 | 一般」タブに移動します。サンプル:このチュートリアルでは、複数のビルド構成を作成し、1...
TeamCity と Perforce の統合
この記事では、TeamCity を Perforce P4 と統合して次のことを行う方法について説明します。P4 リポジトリに保存されているプロジェクトのソースをビルドします。Perforce ストリームを機能ブランチとして使用し、それらのソースを互いに独立して構築します。シェルブされた変更リスト内のファイルを事前テストおよび事前ビルドします。ソースに自動ラベルを適用します。Perforce HelixSwarm のコードレビューにビルドステータスを報告します。前提条件:TeamCity は P4...