事前定義されたビルドパラメーターのリスト
TeamCity には、ビルド構成の設定やビルドスクリプトですぐに使用できる定義済みの ビルドパラメーターが数十個用意されています。
これらのパラメーターはすべて(定義済み構成パラメーター を除く) ビルドプロセスに渡される。 これらのパラメーターにアクセスするために必要な手法は、ビルドタイプによって異なる場合があります (たとえば、Gradle ビルドで TeamCity システムプロパティにアクセスする方法については、 ビルドプロパティセクションを参照してください)。
定義済みサーバービルドパラメーター
これらのパラメーターは、特定のビルド (ビルド番号など) の範囲内でサーバー側で生成されます。
サーバーのビルドパラメーターは通常、システムプロパティおよび対応する環境変数として利用できます。
- system.teamcity.version | env.TEAMCITY_VERSION
TeamCity サーバーのバージョンです。 このプロパティを使用して、ビルドが TeamCity 内で実行されているかどうかを判定できます。
- system.teamcity.projectName | env.TEAMCITY_PROJECT_NAME
現在のビルドが属するプロジェクトのお名前です。
- system.teamcity.buildConfName | env.TEAMCITY_BUILDCONF_NAME
現在のビルドが属するビルド構成のお名前です。
- system.teamcity.buildType.id
TeamCity が現在のビルドが属するビルド構成を参照するために使用する 一意の IDです。
- system.teamcity.configuration.properties.file
すべてのビルドパラメーターをアルファベット順に含むファイルの完全なお名前 (パスを含む) です。 このファイルはビルドプロセスの開始時に書き込まれ、 Java Properties File フォーマットを使用します (たとえば、特殊文字はバックスラッシュでエスケープされます)。 関連項目: build.properties.file
- system.build.is.personal | env.BUILD_IS_PERSONAL
真を 個人用ビルドに対して返します。 通常のビルドでは未定義です (存在しません)。- system.build.number | env.BUILD_NUMBER
TeamCity によってビルドに割り当てられたビルド番号です。 このパラメーターは特別な ビルド番号フォーマットを使用します。
- env.ビルド_URL
現在のビルドへのリンクです。
- system.teamcity.build.id
TeamCity がビルドを参照するために使用する内部の一意の ID です。
- teamcity.ビルド.担当ノード.id
マルチノードセットアップでは、このパラメーターは関連付けられているノードを返します。 ログ REST API リクエストを
/アプリ/rest/ビルドs/id:build_id/logエンドポイントに送信するときに、X-TeamCity-ノード-Id-CookieCookie に割り当てることができます。- 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 ルートのみがある場合は、ルート 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
ビルドに含まれる変更ファイルに関する情報を含むファイルへのフルパスです。 このプロパティを使用して、テスト用のカスタムランナーで リスクテストの並べ替えをサポートできます。
このファイルは、 履歴ビルドの場合、およびこの特定のビルドに変更がなかった場合は使用できません。- system.teamcity.build.properties.file | env.TEAMCITY_BUILD_PROPERTIES_FILE
すべてのビルドシステムプロパティを
system.接尾辞なしで含むファイルの完全なお名前 (パスを含む) です。 このファイルはビルドプロセスの開始時に書き込まれ、 Java Properties File フォーマットを使用します (たとえば、特殊文字はバックスラッシュでエスケープされます)。
定義済みエージェント環境パラメーター
これらのエージェント固有のパラメーターは、各ビルドエージェントで定義され、環境によって異なります。 標準パラメーター (エージェントで実行されている JVM によって提供される teamcity.agent.jvm.os.name または teamcity.agent.jvm.os.arch など) とは別に、エージェントにはインストールされているソフトウェアに基づいたパラメーターを設定できます。 TeamCity は、.NET Framework、Mono、Visual Studio などのソフトウェアを自動的に検出し、対応する システムプロパティと 環境変数を追加します。
エージェントマシンに追加のソフトウェアがインストールされている場合、システム管理者は <エージェントホーム>/conf/buildAgent.properties ファイルを変更して、対応するパラメーターの値をオーバーライドできます。
エージェント環境パラメーターは、ビルド構成オプションの設定、 エージェント要件の定義、および ビルドスクリプト内で使用できます。
特定のビルドエージェントの既存のすべてのパラメーターとその現在の値を確認するには、エージェントの詳細ページを開いて、 パラメーター タブに切り替えます。 詳細については、リンク パラメーター値を追跡する を参照してください。
- teamcity.agent.name
ビルドエージェント.プロパティエージェント構成ファイルで指定されたエージェントのお名前です。 エージェントのお名前を使用して エージェント要件を指定し、ターゲット構成で使用できるエージェント数を制限できます。- teamcity.エージェント.作業.ディレクトリ
エージェント作業ディレクトリへのパスです。
- teamcity.agent.work.dir.空き容量 MB
エージェント作業ディレクトリで使用可能な空き容量です。
- 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.specification.version JVM プロパティの値を返します。
- teamcity.agent.jvm.version
Java 仮想マシン実装のバージョンです。 対応する JVM プロパティの値を報告します。
- teamcity.agent.jvm.java.home
Java インストールディレクトリです。 詳細については、次のセクションを参照してください: Java 関連の環境変数。
- teamcity.agent.os.arch.bits
エージェントの OS ビット数です。
- TeamCity エージェントの一時性
"最初のビルド後" の終了条件が有効化されているクラウドエージェントに対して true を返します。 複数のビルドを実行できるエージェントでは報告されません。
- DotNetCLI
.NET CLI バージョン。
- DotNetCLI_Path
.NET CLI 実行可能ファイルへのパス。
- DotNetFramework<バージョン>[_x86|_x64]
対応するバージョン(複数可)の .NET Framework ランタイムがインストールされている場合にのみ定義されます。
- DotNetFramework<バージョン>[_x86|_x64]_パス
このパラメーターの値は、対応するフレームワークランタイムのバージョン(複数可)のパス(複数可)に設定されます。
このパラメーターは、各メジャーリリースでインストール済みの最新バージョンに対してのみ定義されることに注意してください。 たとえば、バージョン 3.5、4.5、4.8 がインストールされている場合、このパラメーターは 3.5 と 4.8 に対してのみ定義されます。 より新しいバージョンの .NET Framework 4 が存在するため、バージョン/パラメーター 4.5 は省略されます。 そのようなバージョンを明示的に定義するには、代わりにDotNetFrameworkTargetingPack<バージョン>_Pathパラメーターの使用を検討してください。- DotNetFrameworkSDK<バージョン>[_x86|_x64]
対応するバージョン(複数可)の .NET Framework SDK がインストールされている場合に定義されます。
- DotNetFrameworkSDK<バージョン>[_x86|_x64]_パス
対応するフレームワーク SDK バージョンへのパス。
- DotNetFrameworkTargetingPack<バージョン>_Path
対応する参照アセンブリ (別名 Targeting Pack) の場所へのパス。
- DotNetCoreSDKx.x_パス
.NET SDK バージョン。
- DotNetWorkloads_<バージョン>
エージェントマシンにインストールされているすべての .NET ワークロード を一覧表示します。
<バージョン>サフィックスは、インストール済み .NET SDK のバージョンです。 たとえば、バージョン 7.0.300 がインストールされている場合、エージェントは `DotNetWorkloads_7.0.300` パラメーターを報告します。
これらの完全な SDK バージョンに加えて、エージェントは短縮されたメジャー.マイナーサフィックスを持つワークロードパラメーターを報告します。 たとえば、エージェントマシンに 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 Framework のバージョンを指します。 バージョンは .NET Framework のバージョンと等しくなります。- teamcity.dotnet.nunitlauncher.msbuild.task
MSBuild、Visual Studio (sln) 用の NUnit タスクを提供する MSBuild タスク
dllを含むディレクトリへのパス。- teamcity.dotnet.msbuild.extensions2.0
MSBuild 2.0 リスナーとタスクアセンブリを含むディレクトリへのパス。
- teamcity.dotnet.msbuild.extensions4.0
MSBuild 4.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 固有です)。
定義されている場合、エージェント上のカスタムディレクトリ。 カスタムディレクトリを定義する方法を参照してください。
エージェントツールディレクトリ、
<エージェントホームディレクトリ>/toolsに、JRE または JDK が含まれているか確認されます。 デフォルトでは、/toolsのサブディレクトリはスキャンされません。 サブディレクトリを検索するには、ビルドエージェント.プロパティファイルでteamcity.agent.java.search.path=%agent.tools.NAME%/INNER_PATHを定義します。
Unix と macOS では、TeamCity が検出された Java を起動できるように、ファイルに 実行可能ビットを設定することを忘れないでください。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 バージョン>/Home/Library/Java/JavaVirtualMachines/Versions/<Java バージョン>/Home/Library/Java/JavaVirtualMachines/<Java バージョン>/Contents/Home
パス環境変数で指定されたパス(定義されている場合)。
Java を検索するカスタムディレクトリの定義
エージェントにカスタムディレクトリを定義して、Java インストールを検索できます。 これを行うには、 teamcity.agent.java.search.path プロパティを ビルドエージェント.プロパティ ファイルに追加します。
ディレクトリのリストを定義できます。区切り文字の種類は OS によって異なります。
Java 関連の環境変数の定義
Java の各バージョンについて、次の変数が定義されます: JDK_<メジャー>_<マイナー>[_x64]。 たとえば、 env.JDK_1_6 (Java 6) または env.JDK_14_0_x64 (Java 14 64-bit) です。
JDK が見つかった場合、 JDK 変数が定義されます。 Java 11 より前では、JRE は見つかったが JDK は見つからない場合に JRE 変数が定義されます。 _x64 変数は 64-bit Java のみを指します。 _x64 サフィックスのない変数は、32-bit と 64-bit の両方のインストールを指す可能性がありますが、32-bit のものが優先されます。
同じメジャーバージョンおよび同じビット数で、マイナーバージョン/アップデートが異なるインストールが複数見つかった場合は、最新のものが選択されます。
さらに、以下の変数が定義されています。
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 ルート ID>— VCS ルート ID。<VCS ルートパラメーター名>— VCS ルートパラメーターの名前。 このパラメーターは VCS 固有です。 使用可能なパラメーターのリストを取得する方法を参照してください。
ビルド構成に VCS ルートが 1 つしかない場合は、 <VCS ルート ID>。 部分を省略できます。
VCS によって セキュア としてマークされたパラメーター (パスワードなど) は参照できません。
ビルドブランチパラメーター
TeamCity が ブランチ仕様が構成されたビルド構成でビルドを開始すると、各ビルドにブランチラベル、つまり論理的なお名前が追加されます。 この論理名は、構成パラメーターとしても使用できます。
デフォルトと非デフォルトのブランチで開始されたビルドを区別するために、これらのケースを区別できる追加のブール構成パラメーターがあります。
Git と Mercurial の場合、TeamCity は、ビルド開始時点で認識されている VCS ブランチのお名前を持つ追加パラメーターを提供します。 これらは、構成されたブランチ仕様に従って論理ブランチ名と異なる場合があることに注意してください。 この VCS ブランチは、次の名前の設定パラメーターから利用できます。
ここで、 <VCS ルート ID> は VCS ルート ID です。
その他のパラメーター
- teamcity.build.triggeredBy
ビルドがどのようにトリガーされたかを示すわかりやすい説明を返します。
- teamcity.build.triggeredBy.username
ビルドがユーザーによってトリガーされた場合、そのユーザー名が報告されます。 ビルドがユーザー以外によってトリガーされた場合、このプロパティは報告されません。