Team Foundation ビルドの環境変数

TF_BUILD 環境変数を使用すると、ビルド プロセスのロジックに必要な重要なデータを取得できます。 たとえば、ソース フォルダーへのパスや、ドロップする出力が格納されるフォルダーへのパスを取得できます。

  • TF_BUILD 環境変数

  • MSBuild での環境変数の使用

  • プログラムまたはスクリプトでの環境変数の使用

  • カスタム ビルド プロセスでの環境変数の使用

TF_BUILD 環境変数

  • TF_BUILD: TFBuild によって True に設定されます。これにより、スクリプトが TFBuild によって実行されるかどうかに基づいてスクリプトの条件部分を作成できます。

  • TF_BUILD_BINARIESDIRECTORY: ビルド プロセスがステージング場所にコピーする出力ファイルが格納されているディレクトリです。 このディレクトリはビルド エージェントの作業ディレクトリのサブディレクトリです。 たとえば、C:\Build\BuildBot3\CoolApp\CIBuild\bin のように指定します。

    TFBuild は、このディレクトリを自動的に作成し、出力場所[AsConfigured] に設定されていない限り、このディレクトリにビルド出力を配置します。 この場合、スクリプトを使用して、このディレクトリに格納するファイルをコピーできます。

    注意

    スクリプトは、必要に応じてこのディレクトリを作成またはクリーンアップできる必要があります。例については、「ビルド プロセスでスクリプトを実行する」を参照してください。

  • TF_BUILD_BUILDDEFINITIONNAME: ビルド定義の名前。

  • TF_BUILD_BUILDDIRECTORY: ビルド エージェントの作業ディレクトリ。 たとえば、C:\Build\BuildBot3\CoolApp\CIBuild のように指定します。

  • TF_BUILD_BUILDNUMBER: ビルドのビルド番号。 たとえば、CIBuild_20130613.6 のように指定します。

  • TF_BUILD_BUILDREASON: ビルドのビルドの理由。 たとえば、IndividualCI のように指定します。

  • TF_BUILD_BUILDURI: ビルドへの URI。 たとえば、vstfs:///Build/Build/35 のように指定します。

  • TF_BUILD_COLLECTIONURI チーム プロジェクト コレクションの URI。 たとえば、http://fabrikam-2:8080/tfs/DefaultCollection のように指定します (この環境変数を使用するには、Visual Studio 2012 Update 2 以降のバージョンをインストールしておく必要があります)。

  • TF_BUILD_DROPLOCATION: ドロップの場所。 たとえば、UNC パスへのドロップの場合は \\fabrikam-1\Drops\CIBuild\CIBuild_20130613.6 のように指定します。 Team Foundation Server へのドロップの場合は #/11/drop のように指定します。

  • TF_BUILD_SOURCEGETVERSION: ビルド中のバージョン (TFVC 変更セットまたはGit コミット)。

  • TF_BUILD_SOURCESDIRECTORY: ビルド エージェントの作業ディレクトリのソース サブディレクトリ。 このディレクトリには、ソース コードが含まれます。 たとえば、C:\Build\BuildBot3\CoolApp\CIBuild\src のように指定します。

    例については、「ビルド プロセスでスクリプトを実行する」を参照してください。

  • TF_BUILD_TESTRESULTSDIRECTORY: ビルド エージェントの作業ディレクトリのテスト結果サブディレクトリ。 たとえば、C:\Build\BuildBot3\CoolApp\CIBuild\tst のように指定します。

MSBuild での環境変数データの使用

MSBuild でコードをコンパイルする場合は (既定のテンプレートまたは MSBuild アクティビティを備えたカスタム ビルド プロセスを使用)、引数を渡して動作を制御できます。 また、一部のコード プロジェクトには、これらの引数を使用して呼び出せる特別なターゲットが含まれます。 TF_BUILD 環境変数を使用して、コード プロジェクト ファイル内の XML を編集せずにこれらのオプションを有効にできます。

たとえば、既定のテンプレートを使用して、ASP.NET Web アプリケーション プロジェクトをビルドし、Web パッケージのみをステージング場所にドロップする必要があるとします。 これを行うには、ビルド定義を編集し、次の操作を行います。

  • [出力場所] プロセス パラメーターを AsConfigured に設定します。

  • 次のようなオプションを [MSBuild 引数] に追加します。

    /p:DeployOnBuild=true;DeployMethod=Package /p:DefaultPackageOutputDir=”$(TF_BUILD_BINARIESDIRECTORY)”\WebPackage
    

プログラムまたはスクリプトでの環境データの使用

TF_BUILD 環境変数を、自身が所有していないプログラムまたはスクリプトに渡すこともできます。 スクリプトが上で指定した名前を使用して変数にアクセスする限り、スクリプトにそれらを渡す必要はありません。 いくつかの例については、「ビルド プロセスでスクリプトを実行する」を参照してください。

カスタム ビルド プロセスからの環境データの使用

カスタム ビルド プロセス テンプレートで環境変数を使用する必要がある場合、データを取得するには GetEnvironmentVariable アクティビティを使用します。 任意の WellKnownEnvironmentVariables からデータを取得できます。

たとえば、バイナリ ディレクトリへのパスを取得するには、GetEnvironmentVariable アクティビティの Name プロパティを Microsoft.TeamFoundation.Build.Activities.Extensions.WellKnownEnvironmentVariables.BinariesDirectory に設定します。