事前定義されたビルドパラメーターのリスト
TeamCity には、ビルド構成の設定やビルドスクリプトですぐに使用できる定義済みのビルドパラメーターが数十個用意されています。
これらのパラメーターはすべて(事前定義された構成パラメーターを除く)ビルドプロセスに渡されます。これらのパラメーターにアクセスするために必要な手法は、ビルド型によって異なる場合があることに注意してください(たとえば、Gradle ビルドで TeamCity システムプロパティにアクセスする方法については、ビルドプロパティセクションを参照してください)。
事前定義されたサーバービルドパラメーター
これらのパラメーターは、特定のビルド (ビルド番号など) の範囲内でサーバー側で生成されます。
サーバーのビルドパラメーターは通常、システムプロパティおよび対応する環境変数として利用できます。
- システム . チームシティ . バージョン | env.TEAMCITY_VERSION
TeamCity サーバーのバージョン。このプロパティは、ビルドが TeamCity 内で実行されるかどうかを判断するために使用できます。
- システム . チームシティ . プロジェクト名 | env.TEAMCITY_PROJECT_NAME
現在のビルドが属するプロジェクトの名前。
- system.teamcity.buildConfName | env.TEAMCITY_BUILDCONF_NAME
現在のビルドが属するビルド構成の名前。
- system.teamcity.buildType.id
現在のビルドが属するビルド構成を参照するために TeamCity が使用する一意の ID。
- system.teamcity.configuration.properties.file
すべてのビルドパラメーターをアルファベット順に含むファイルの完全名 (パスを含む)。このファイルは、ビルドプロセスの開始時に書き込まれ、Java プロパティファイル形式(英語)を使用します (たとえば、特殊文字はバックスラッシュでエスケープされます)。build.properties.file も参照してください。
- システム . ビルド .is. パーソナル | env.BUILD_IS_PERSONAL
個人用ビルドの場合は
trueを返します。通常のビルドでは未定義 (存在しません)。- システムビルド番号 | 環境 BUILD_NUMBER
TeamCity によってビルドに割り当てられたビルド番号。パラメーターは、特別なビルド番号形式を使用します。
- env.BUILD_URL
現在のビルドへのリンク。
- system.teamcity.build.id
TeamCity がビルドを参照するために使用する内部の一意の ID。
- teamcity.build.responsibleNode.id
マルチノード設定では、このパラメーターは接続されているノードを返します。ログ REST API 要求を
/app/rest/builds/id:build_id/logエンドポイントに送信するときに、X-TeamCity-Node-Id-Cookieクッキーに割り当てることができます。- system.teamcity.auth.userId
他のビルド構成のアーティファクトをダウンロードするために使用できる、生成されたユーザー名。ビルド中のみ有効です。詳細については、このセクションを参照してください: ビルドレベルの認証。
- system.teamcity.auth.password
他のビルド構成のアーティファクトをダウンロードするために使用できる、生成されたパスワード。ビルド中のみ有効です。詳細については、このセクションを参照してください: ビルドレベルの認証。
- system.build.vcs.number.<VCS_root_ID> | env.BUILD_VCS_NUMBER_<VCS_root_ID>
指定されたルートのビルドに含まれる最新の VCS リビジョン。VCS ルート ID の詳細については、次の記事を参照してください。VCS ルートの設定 .
ビルド構成に VCS ルートが 1 つしかない場合は、ルート ID 識別子なしでbuild.vcs.numberパラメーターを使用できます。
この値は VCS 固有です。例: SVN の場合はリビジョン番号、CVS の場合はタイムスタンプ。
事前定義されたエージェントビルドパラメーター
これらのシステムプロパティはビルドごとに一意です (変更のリストを含むファイルへのパスなど)。その値は、ビルドの開始直前にエージェント側で計算され、ビルドに渡されます。
- system.teamcity.build.checkoutDir
ビルドに使用されるチェックアウトディレクトリ。
- system.teamcity.build.workingDir
ビルドが開始される作業ディレクトリ。これは、TeamCity ビルドランナーがプロセスを開始することになっているパスです。これはランナー固有のプロパティであるため、ステップごとに異なる値があります。
- system.teamcity.build.tempDir
TeamCity によって生成されたビルド一時ディレクトリのフルパス。ディレクトリはビルド後にクリーンアップされます。
- system.teamcity.build.changedFiles.file
ビルドに含まれる変更されたファイルに関する情報を含むファイルへのフルパス。このプロパティを使用して、テストのカスタムランナーでリスクテストの並べ替えをサポート(英語)できます。
このファイルは、履歴ビルドでは利用できません。また、この特定のビルドに変更がなかった場合にも利用できません。- システム . チームシティ . ビルド . プロパティ . ファイル | env.TEAMCITY_BUILD_PROPERTIES_FILE
system.接尾辞を除いたすべてのビルドシステムプロパティを含むファイルの完全名 (パスを含む)。このファイルは、ビルドプロセスの開始時に書き込まれ、Java プロパティファイル形式(英語)を使用します (たとえば、特殊文字はバックスラッシュでエスケープされます)。
事前定義されたエージェント環境パラメーター
これらのエージェント固有のパラメーターは、各ビルドエージェントで定義され、環境によって異なります。標準パラメーター (エージェントで実行されている JVM によって提供される teamcity.agent.jvm.os.name または teamcity.agent.jvm.os.arch など) とは別に、エージェントにはインストールされているソフトウェアに基づいたパラメーターを設定できます。TeamCity は、.NET フレームワーク、Mono、Visual Studio などのソフトウェアを自動的に検出し、対応するシステムプロパティと環境変数を追加します。
エージェントマシンに追加のソフトウェアがインストールされている場合、システム管理者は <Agent Home>/conf/buildAgent.properties ファイルを変更して、対応するパラメーターの値をオーバーライドできます。
エージェント環境パラメーターは、ビルド構成オプションの設定、エージェント要件の定義、およびビルドスクリプト内で使用できます。
特定のビルドエージェントの既存のすべてのパラメーターとその現在の値を確認するには、エージェントの詳細ページを開いて、パラメータータブに切り替えます。詳細については、リンクパラメーター値を追跡するを参照してください。
- teamcity.agent.name
buildAgent.propertiesエージェント構成ファイルで指定されたエージェントの名前。エージェント名を使用して、エージェントの要件を指定し、ターゲット構成で使用できるエージェントの数を制限できます。- teamcity.agent.work.dir
エージェントの作業ディレクトリへのパス。
- teamcity.agent.work.dir.freeSpaceMb
エージェントの作業ディレクトリに利用可能な空き領域。
- teamcity.agent.home.dir
エージェントのホームディレクトリへのパス
- teamcity.agent.tools.dir
エージェントのツールディレクトリへのパス。
- teamcity.agent.jvm.os.version
オペレーティングシステムのバージョン。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.user.country
ユーザーの国。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.user.home
ユーザーのホームディレクトリ。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.user.timezone
ユーザーのタイムゾーン。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.user.name
ユーザーのアカウント名。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.user.language
ユーザーの主な OS 言語。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.user.variant
ユーザーロケールのバリエーションを示すために使用される任意の値。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.file.encoding
デフォルトの文字セットの名前。デフォルトは UTF-8 です。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.file.separator
ファイル区切り文字。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.path.separator
パスの区切り文字。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.specification
Java ランタイム環境仕様のバージョン。java.specation.version JVM プロパティの値を返します。
- teamcity.agent.jvm.version
Java 仮想マシンの実装バージョン。対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.java.home
Java のインストールディレクトリ。詳細については、次のセクションを参照してください: Java 関連の環境変数。
- teamcity.agent.os.arch.bits
エージェントの OS ビット数。
- teamcity.agent.ephemeral
「最初のビルド後」の終了条件が有効になっているクラウドエージェントの場合は true を返します。複数のビルドを実行できるエージェントの場合は報告されません。
- DotNetCLI
.NET CLI バージョン。
- DotNetCLI_Path
.NET CLI 実行可能ファイルへのパス。
- DotNetFramework<バージョン>[_x86 | _x64]
.NET フレームワークランタイムの対応するバージョンがインストールされている場合にのみ定義されます。
- DotNetFramework<バージョン>[_x86 | _x64]_ パス
このパラメーターの値は、対応するフレームワークランタイムバージョンパスに設定されます。
このパラメーターは、メジャーリリースごとにインストールされている最新バージョンに対してのみ定義されます。例: バージョン 3.5, 4.5,, 4.8 をインストールした場合、このパラメーターは for 3.5 と 4.8 に対してのみ定義されます。バージョン / パラメーター 4.5 は、.NET の新しいバージョンフレームワーク 4 が存在するため省略されます。このようなバージョンを明示的に定義するには、代わりにDotNetFrameworkTargetingPack<version>_Pathパラメーターの使用を検討してください。- DotNetFrameworkSDK<バージョン>[_x86 | _x64]
.NET フレームワーク SDK の対応するバージョンがインストールされている場合に定義されます。
- DotNetFrameworkSDK<バージョン>[_x86 | _x64]_ パス
対応するフレームワーク SDK バージョンへのパス。
- DotNetFrameworkTargetingPack<バージョン>_Path
対応する参照アセンブリ(別名ターゲティングパック)の場所へのパス。
- DotNetCoreSDKx.x_Path
.NET SDK バージョン。
- DotNetWorkloads_<バージョン>
エージェントマシンにインストールされているすべての .NET ワークロードをリストします。
<version>接尾辞は、インストールされている .NET SDK のバージョンです。たとえば、バージョン 7.0.300 がインストールされている場合、エージェントは `DotNetWorkloads_7.0.300` パラメーターを報告します。
これらの完全な SDK バージョンに加えて、エージェントは短縮されたmajor.minor接尾辞を持つワークロードパラメーターを報告します。例: エージェントマシンに 7.0.100, 7.0.200,, 7.0.300 .NET SDK がインストールされている場合、最高の 7.0.300 バージョンを参照するDotNetWorkloads_7.0パラメーターが報告されます。
パラメーター値は、<dotnet_dir>/metadata/workloads/<sdk_version>/InstalledWorkloads ディレクトリ内のフォルダーに従って、コンマで区切られたワークロード名の文字列です。たとえば、「android、maui-ios、wasm-tools」などです。- WindowsSDK<バージョン>
対応するバージョンの Windows SDK がインストールされている場合にのみ定義されます。
- WindowsSDK<バージョン>_ パス
対応するバージョンの Windows SDK のパス。
- VS<バージョン>
Visual Studio の対応するバージョンがインストールされている場合に定義
- VS<バージョン>_ パス
Visual Studio インストールフォルダー (devenv.exe が含まれるディレクトリ) へのパス。
- Teamcity.dotnet.nunitlauncher<バージョン>
スタンドアロンの NUnit テストランチャー
NUnitLauncher.exeを含むディレクトリへのパス。バージョン番号は、テストが実行される .NET フレームワークのバージョンを示します。バージョンは、.NET フレームワークのバージョンと同じです。- teamcity.dotnet.nunitlauncher.msbuild.task
MSBuild、Visual Studio (sln) の NUnit タスクを提供する MSBuild タスク
dllが含まれるディレクトリへのパス。- teamcity.dotnet.msbuild.extensions2.0
MSBuild2.0 リスナーとタスクアセンブリを含むディレクトリへのパス。
- teamcity.dotnet.msbuild.extensions4.0
MSBuild4.0 リスナーとタスクアセンブリを含むディレクトリへのパス。
- teamcity.agent.ownPort
TeamCity サーバーがエージェントに接続するために使用するエージェントポート。
- teamcity.agent.protocol
エージェントとサーバー間のデータ転送に使用されるプロトコル。
- teamcity.agent.cpuBenchmark
エージェントの CPU ベンチマーク結果。
- teamcity.agent.hardware.cpuCount
エージェントマシンの CPU 上のコア / スレッドの数。
- teamcity.agent.hostname
ビルドエージェントホストの名前。
Java 関連の環境変数
ビルドエージェントが起動すると、インストールされている JDK と JRE が検出され、以下に説明するように Java 関連の環境変数が定義されます。開始されたエージェントにすでに Java 関連の環境変数が設定されている場合、それらは再定義されません。
これらの変数は、通常の環境変数と同じようにビルドスクリプトで使用できます。
エージェント上の Java の検出
エージェントは、すべての Java インストールを検索して起動し、それらが有効であることを確認します。出力に基づいて Java のバージョンとビット数を決定します。
次の場所が検索されます(一部の場所はすべての OS に共通であり、一部は OS 固有です)。
定義されている場合、エージェント上のカスタムディレクトリ。カスタムディレクトリを定義する方法を参照してください。
エージェントツールディレクトリ
<Agent Home Directory>/toolsに JRE または JDK が含まれているかどうかがチェックされます。デフォルトでは、/toolsのサブディレクトリはスキャンされません。サブディレクトリを検索するには、buildAgent.propertiesファイルでteamcity.agent.java.search.path=%agent.tools.NAME%/INNER_PATHを定義します。
Unix および macOS の場合、検出された Java を起動できるように、TeamCity のファイルに実行可能ビットを設定することを忘(英語)れないでください。JAVA_HOME、JDK_HOME、JRE_HOME環境変数で指定されたパス(定義されている場合)。OS 固有の場所:
Windows レジストリは、Java インストーラでインストールされた Java を検索します。
C:\Program FilesおよびC:\Program Files (x86)ディレクトリは、JavaおよびJavaSoftサブディレクトリを検索されます。C:\Java
/usr/local/java/usr/local/usr/java/usr/lib/jvm/usr
/System/Library/Frameworks/JavaVM.framework/Versions/<Java Version>/Home/Library/Java/JavaVirtualMachines/Versions/<Java Version>/Home/Library/Java/JavaVirtualMachines/<Java Version>/Contents/Home
PATH環境変数で指定されたパス(定義されている場合)。
Java を検索するためのカスタムディレクトリの定義
エージェントにカスタムディレクトリを定義して、Java インストールを検索できます。これを行うには、teamcity.agent.java.search.path プロパティを buildAgent.properties ファイルに追加します。
ディレクトリのリストを定義できます。区切り文字のタイプは OS によって異なります。
Java 関連の環境変数の定義
Java のバージョンごとに、次の変数が定義されています: JDK_<major>_<minor>[_x64] 例: env.JDK_1_6 (Java 6)または env.JDK_14_0_x64 (Java 14 64 ビット)。
JDK 変数は、JDK が見つかったときに定義されます。Java 11 より前では、JRE 変数は、JRE が見つかったが JDK が見つからない場合に定義されます。
_x64 変数は 64 ビット Java のみを指します。_x64 接尾辞のない変数は 32 ビットまたは 64 ビットのインストールの両方を指す可能性がありますが、32 ビットのインストールが推奨されます。
メジャーバージョンとビット数が同じで、マイナーバージョン / アップデートが異なる複数のインストールが見つかった場合は、最新のものが選択されます。
さらに、以下の変数が定義されています。
JAVA_HOME— 最新の JDK インストールの場合(ただし、32 ビットのものが推奨されます)。JDK_HOME—JAVA_HOMEと同じです。JRE_HOME— 最新の JRE または JDK インストールの場合(ただし、32 ビットのものが推奨されます)、JDK が見つかった場合でも定義されます。
JRE_HOME 変数と JDK_HOME 変数は、異なるインストールを指している可能性があります。例: JRE1.7 および JDK1.6 がインストールされていないが、JDK 1.7 がインストールされていない場合 — JRE_HOME は JRE1.7 を指し、JDK_HOME は JDK1.6 を指します。
すべての変数は、バイナリファイルではなく、Java ホームディレクトリを指します。例: javac バージョン 1.6 を実行する場合は、次のパスを使用できます。
事前定義された構成パラメーター
構成パラメーターは他のパラメーターから参照できますが(パラメーターページで定義されている場合のみ)、ビルドには渡されません。
これらのサーバーパラメーターの完全なリストを表示するには、任意のビルドのパラメータータブを開くか、内部の teamcity/properties/build.start.properties.gz アーティファクトをダウンロードします。
依存関係パラメーター
依存関係パラメーターの詳細については、次の記事を参照してください: チェーンのビルドでパラメーターを使用します。
VCS パラメーター
これらは、ビルド構成に接続されている VCS ルートの設定です。
VCS パラメーターの形式は次のとおりです。
<VCS_root_ID>— VCS ルート ID。<VCS_root_parameter_name>— VCS ルートパラメーターの名前。このパラメーターは VCS 固有です。使用可能なパラメーターのリストを取得する方法を参照してください。
ビルド構成に VCS ルートが 1 つしかない場合は、<VCS_root_ID>. 部分を省略できます。
VCS によって secure としてマークされたパラメーター (パスワードなど) は参照できません。
ブランチパラメーターの作成
TeamCity がブランチ仕様が構成されているビルド構成でビルドを開始すると、各ビルドにブランチラベル (論理名) が追加されます。この論理名は、構成パラメーターとしても使用できます。
デフォルトと非デフォルトのブランチで開始されたビルドを区別するために、これらのケースを区別できる追加のブール構成パラメーターがあります。
Git および Mercurial の場合、TeamCity は、ビルド開始時に既知の VCS ブランチの名前を持つ追加のパラメーターを提供します。これらは、構成されたブランチ仕様に従って論理ブランチ名と異なる場合があることに注意してください。この VCS ブランチは、次の名前の設定パラメーターから利用できます。
ここで、<VCS_root_ID> は VCS ルート ID です。
その他のパラメーター
- teamcity.build.triggeredBy
ビルドがどのようにトリガーされたかについての、わかりやすい説明を返します。
- teamcity.build.triggeredBy.username
ビルドがユーザーによって起動された場合は、このユーザーのユーザー名が報告されます。ユーザーによってではなくビルドがトリガーされた場合、このプロパティは報告されません。
関連ページ:
ビルドパラメーターの設定
パラメーターは、TeamCity 設定およびビルドスクリプトの構文を介して参照するペアです。パラメーター部分は、生の値 () にすることも、別のパラメーターへの参照 () を含めることもできます。パラメーター型:TeamCity は次の 3 種類のパラメーターをサポートします。構成パラメーター — ビルド構成内で設定を共有することを主な目的とするパラメーター。これらのパラメーターを使用して、テンプレートから作成された構成やレシピを使用する構成をカスタマイズすることもできます。TeamCity は...
Gradle
このビルドステップは、Gradle プロジェクトのビルドに合わせて調整されており、およびを含むすべての Gradle ビルド構成をサポートします。前提条件:Gradle でビルドを実行するには、Gradle 0.9-rc-1 以降がすべてのエージェントマシンにインストールされている必要があります。あるいは、Gradle ラッパーを使用する場合は、バージョン管理にチェックインされた Gradle ラッパースクリプトを適切に構成する必要があります。ステップ設定:Gradle ステップ設定のリストと...
エンティティ ID
ID は、TeamCity エンティティ (プロジェクト、ビルド構成、テンプレート、VCS ルートなど) に付与される識別子です。各エンティティには 2 つの識別子があります。外部 ID、普遍的にユニークな ID または UUID、外部 ID:いわゆる外部識別子は、TeamCity Web UI (プロジェクト ID など) で構成され、サーバー全体の同じタイプのすべてのオブジェクト内で一意である必要があります。ビルド構成とテンプレートは同じ ID スペースを共有します。ID はラテン文字で始まり、...
パーソナルビルドの実行
個人ビルドは、通常、バージョン管理にまだコミットされていない変更を使用する共通ビルドシーケンスからのビルドです。個人ビルドは通常、サポートされている IDE の 1 つからリモート実行プロシージャを介して開始されます。カスタムビルドを実行するダイアログから個人ビルドを開始し、変更を加えたパッチをサーバーに直接アップロードすることもできます。個人ビルドには対応するアイコンが付いており、ビルドを開始したユーザーのみに表示されます。他の TeamCity ユーザーの個人ビルドを表示するには、ユーザープロ...
高可用性のためのマルチノードセットアップ
TeamCity サーバーは、高可用性と柔軟な負荷分散のために複数のノード (またはサーバー) を使用するように構成できます。TeamCity ノードのクラスターをセットアップすることが可能です。各ノードは、ビルドからのデータの処理や VCS リポジトリからの変更の収集など、さまざまなタスクを担当します。または、すべての作業を行うメインノードを 1 つと、読み取り専用インターフェースを提供するセカンダリノードを 1 つ保持します。メインノードがダウンした場合、最小限のダウンタイムですべてのデータ...
アーティファクトの依存関係
このページでは、あるビルドから別のビルドにファイルを渡すことができる TeamCity アーティファクトの依存関係の構成について詳しく説明します。例: 一般的なデプロイビルド構成は、他の (本番) 構成によって生成されたファイルを公開します。アーティファクトは以下から渡すことができます: 同じビルドチェーン内のターゲット構成の前に実行される構成。ターゲット構成と同じビルドチェーンの一部ではない個別の構成。同じ構成の以前のビルド。Web UI を使用したアーティファクトの依存関係の設定:ビルド構成...