TeamCity 2020.2 ヘルプ

ビルドエージェント

TeamCity ビルドエージェントは、TeamCity サーバーからのコマンドをリッスンし、実際のビルドプロセスを開始するソフトウェアです。TeamCity サーバーとは別にインストールおよび構成されます。エージェントは、サーバーと同じコンピューターまたは別のマシンにインストールできます(サーバーのパフォーマンス上の理由から、後者が推奨されるセットアップです)。エージェントは、TeamCity サーバーと同じオペレーティングシステム(OS)または別の OS を実行できます。

TeamCity ビルドエージェントには 2 つのプロセスがあります

  • エージェントランチャー — エージェントプロセスを起動する Java プロセス。

  • エージェント — ビルドエージェントのメインプロセス。エージェントランチャーの子プロセスとして実行されます。

エージェントは通常、ソースコードをチェックアウトし、他のビルドのアーティファクトをダウンロードして、ビルドプロセスを実行します。エージェントは、一度に 1 つのビルドを実行できます。エージェントの数は基本的に、ビルドプロセスが実行される並列ビルドと環境の数を制限します。
エージェントは、互換性のある任意のビルド構成のビルドを実行できます。

TeamCity サーバーは、接続されているすべてのエージェントを監視し、互換性要件エージェントプール、エージェント用に構成されたビルド構成の制限、およびここで説明する選択アルゴリズムに基づいて、キュービルドをエージェントに割り当てます。

エージェントステータスの構築

TeamCity では、ビルドエージェントは以下のステータスを持つことができます。

ステータス

説明

接続済み / 切断済み

エージェントは、TeamCity サーバーに登録されている場合は接続され、サーバーコマンドに応答します。それ以外の場合は切断されます。このステータスは自動的に決定されます。

承認済み / 未承認

エージェントは、エージェントページの Web UI を介して手動で承認されます(クラウド統合によって起動されたマシンからのエージェントを除く)。承認されたビルドエージェントのみがビルドを実行できます。いつでも許可されたエージェントの数は、サーバーに入力されたエージェントライセンスの数を超えることはできません。エージェントが無許可の場合、ライセンスは解放され、別のビルドエージェントを許可できます。追加のライセンスを購入して、ビルドを同時に実行できるエージェントの数を増やします。新しいエージェントがサーバーに初めて登録されると、デフォルトでは無許可であり、ビルドを実行するには手動での承認が必要です。

ビルドエージェントが TeamCity ビルドサーバーと同じコンピューターにインストールされて実行されている場合は、自動的に承認されます。

有効 / 無効

エージェントは Web UI を介して手動で有効 / 無効にします。TeamCity サーバーは、有効になっているエージェントにのみビルドを配布します。

エージェントを無効にしても、そのエージェントで現在実行されているビルドには影響しません(停止しません)。

無効なエージェントは、ビルドが特別なエージェントに割り当てられている場合(たとえば、カスタムビルドをトリガーすることによって)ビルドを実行できます。この機能は通常、エージェント固有の問題を調査するために、ビルドグリッドからエージェントを一時的に削除するために使用されます。

サーバーに接続されているすべてのエージェントには、固有のエージェント名が必要です。

特定のロールを持つユーザーだけがエージェントを管理できます。詳細についてはロールと権限を参照してください。

ビルドエージェント構成については、エージェント構成の構築のセクションを参照してください。

エージェントのアップグレード

TeamCity エージェントは必要に応じて自動的にアップグレードされます。このプロセスでは、TeamCity サーバーから新しいエージェントファイルをダウンロードし、その新しいファイルでエージェントを再起動します。これを正常に実行するには、エージェントが実行されているアカウントのユーザーに十分な権限が必要です。

通常、エージェントのアップグレードは次の場合に発生します。