Maven トリガーの構成
ビルド構成設定 の トリガー ページでは、次の Maven 関連のトリガーを追加できます。
チェックサムベースのトリガー
トリガーは、ローカルに保存されたバージョンに対してリポジトリのチェックサムを検証することにより、依存関係のコンテンツが実際に変更されたかどうかをチェックします。 TeamCity は、ビルドをトリガーする前に、そのアーティファクトに関連付けられたファイルダイジェスト (MD5/SHA-1) をダウンロードして、必要な依存関係のチェックサムを特定しようとします。
チェックサムを取得でき、ローカルに保存されているものと一致する場合、ビルドはトリガーされません。 チェックサムが異なる場合、ビルドがトリガーされます。
チェックサムをリモートサーバーから取得できない場合、依存関係がダウンロードされ、TeamCity はそのチェックサムを計算し、上記のビルドトリガーメカニズムに従います。
Maven スナップショット依存関係トリガー
Maven スナップショット依存関係トリガーは、チェックサムの変更によって検出されたリモートリポジトリ内のスナップショット依存関係コンテンツの実際の変更がある場合、キューに新しいビルドを追加します。
依存性アーティファクトは、POM およびサーバー側 Maven 設定に従って解決されます。
Maven アーティファクト依存関係トリガー
Maven アーティファクト依存関係トリガーは、チェックサムの変更によって検出された依存関係コンテンツの実際の変更がある場合に、キューにビルドを追加します。
トリガーを追加するには、 新しいトリガーを追加 ダイアログで次のパラメーターを指定します。
パラメーター | 説明 |
|---|---|
グループ ID | 目的の Maven アーティファクトが属するグループの識別子を指定します。 |
アーティファクト ID | アーティファクトの識別子を指定します。 |
バージョンまたはバージョン範囲 | アーティファクトのバージョンまたはバージョン範囲を指定します。 バージョン範囲の構文については、以下の セクションで説明します。 SNAPSHOT バージョンも使用できます。 |
タイプ | 指定されたアーティファクトのタイプを明示的に定義します。 デフォルトでは、タイプは |
分類子 | (オプション)アーティファクトの分類子を指定します。 |
Maven リポジトリの URL | Maven リポジトリへの URL を指定します。 このパラメーターはオプションです。 URL が指定されていない場合: |
現在実行中のビルドがこのアーティファクトを生成できる場合は、ビルドをトリガーしないでください | ここで使用されるアーティファクトを生成するビルドが終了した後にのみビルドをトリガーするには、このオプションを選択します。 |
詳細オプション
パラメーター | 説明 |
|---|---|
リポジトリ ID | 有効な Maven 設定からの許可の使用を許可します |
ユーザー設定の選択 | 有効な設定を選択できます。 Maven ランナーの ユーザー設定と同じ。 |
TeamCity は、アーティファクトの更新をチェックし、変更が検出された場合にビルドをトリガーする 有効なリポジトリ を次のように決定します:
URL とリポジトリ ID が設定されている場合、認証は有効な設定から選択されます (下記を参照)
URL のみが設定されている場合、古い動作は保持されます: 一時的なリポジトリ ID が使用されます (
_tc_temp_remote_repo)URL が設定されていない場合(リポジトリ ID に関係なく)、アーティファクトは有効な設定に従って利用可能なリポジトリで検索されます。
TeamCity は 有効な設定 を次のように決定します:
トリガー設定では、ユーザーはデフォルト、カスタム、アップロードされた Maven 設定から選択できます。 詳細については、 Maven サーバー側設定を参照してください。
トリガーに特定の設定が構成されていない場合、 Maven ビルドステップ設定が使用されます
トリガーの設定が構成されておらず、Maven ビルドステップもない場合は、
デフォルトサーバーの Maven 設定が使用されます。
バージョン範囲
バージョン範囲を指定するには、 Maven ドキュメントで提案されて(英語)いるように、次の構文を使用します。
Maven アーティファクト依存関係トリガーは、固定バージョンのアーティファクトだけでなく、Maven スナップショット依存関係トリガーのきめ細かい代替としてスナップショットにも使用できることに注意してください。
範囲 | 意味 |
|---|---|
| x <= 1.0 |
| 1.0 の「ソフト」要件 (単なる推奨事項 — すべての範囲に一致する場合、正しいバージョンを選択できます) |
| 1.0 のハード要件 |
| 1.2 <= x <= 1.3 |
| 1.0 <= x < 2.0 |
| x >= 1.5 |
| x <= 1.0 または x >= 1.2。 複数のセットはコンマ区切りです |
| このライブラリと組み合わせて動作しないことがわかっている場合、これは 1.1 を除外します |
1.0-SNAPSHOT | トリガーは、最新のスナップショットバージョンの更新を確認します |
トリガーされたビルドのカスタマイズ
トリガーの設定の ビルドカスタマイズ タブでは、このトリガーによって開始されたビルドのカスタムパラメーターを構成できます。 カスタムビルドを実行するダイアログと同様に、 ビルドパラメーターの値を上書きし、ビルド前に チェックアウトディレクトリをクリーンアップするかどうかを選択できます。
このタブでは、現在の ビルド構成 で使用されている任意の パラメーター の値をカスタマイズできます。 また、新しいパラメーターを追加することもでき、そのパラメーターはこのトリガーによって開始されるビルドでのみ使用できます。 現在のビルドに他のビルドに対する スナップショット依存関係 がある場合、このようなパラメーターを使用して、依存ビルド構成の 特定のプロパティをオーバーライド することもできます: このためには reverse.dep.<dependencyBuildID>.<property> 構文を使用します。
トリガー内でビルドパラメーターを再定義してから パラメーター で元のパラメーターを削除すると、その再定義された値がトリガー自体のプレーンテキストパラメーターに変換されることに注意してください。 安全な値をカスタマイズするときは、 「パスワード」の種類と一緒に保存された場合にのみ隠され、プレーンテキストに変換された場合に読み取り可能になるため、これを考慮することが重要です。
TeamCity では類似したタスクを複数の方法で解決でき、場合によっては別々のビルド構成を作成するほうが依然として望ましいことがあります。 たとえば、同じ構成でカスタム実行が多すぎる場合、TeamCity が各ビルドの正確な所要時間を予測しにくくなることがあります。 多数の異なるパラメーターでビルドをトリガーする必要がある場合は、 ビルド構成テンプレート を作成し、それぞれ独自のパラメーターを持つ複数の構成のブループリントとして使用することをお勧めします。