C# スクリプト
C# スクリプトランナーを使用すると、Windows、Linux、macOS で C# スクリプトを実行できます。プラットフォーム間で C# インタラクティブシェルを実行するために、カスタム TeamCity ツールを使用します。
このランナーを使用すると、ビルド環境の準備、OS ユーザーの作成、さまざまなメッセンジャーへのレポートなど、さまざまなサービスタスクを実行できます。
一般的なビルドステップの設定の説明については、ビルドステップの設定を参照してください。このステップをコンテナー内で実行する方法については、コンテナーラッパーを参照してください。
前提条件
ランナーの要件:
.NET ランタイム 6.0.0 以降がビルドエージェントにインストールされているか、このステップが Docker 内で実行される場合は Docker コンテナーで利用可能である必要があります。
TeamCity.csi(英語) パッケージは、エージェントツールとしてインストールする必要があります。
C# スクリプト設定
設定 | 説明 |
|---|---|
TeamCity C# スクリプトツール | 管理 | ツール経由でインストールされた TeamCity C# スクリプトツールのバージョンを選択するか、ビルドチェックアウトディレクトリを基準としたこのツールへのカスタムパスを入力します。 |
スクリプトタイプ | 2 つのオプションのいずれかを選択します。ランナーのすぐ内側にカスタムスクリプト本体を入力するか、C# スクリプトファイル( |
C# スクリプト | カスタムスクリプトタイプで使用できます。 C# スクリプトのコードを入力します。 |
C# スクリプトファイル | スクリプトファイルタイプで使用できます。 ビルドチェックアウトディレクトリを基準にした、スクリプトファイルへのパスを入力します。 |
スクリプトパラメーター | スクリプトのパラメーターを入力します。パラメーターは パラメーター参照がサポートされています。 |
NuGet パッケージソース | スクリプトからパッケージを参照する場合、TeamCity はこのフィールドで指定されたフィードからパッケージを自動的にダウンロードします。ランナーは、 デフォルトでは、TeamCity は NuGet.org(英語) で公開されたソースから NuGet パッケージを復元します。このフィールドでは、他の NuGet リポジトリへのパスを指定でき、TeamCity は宣言の順序でそこでパッケージを検索します。指定されたリポジトリのいずれにもパッケージソースが見つからない場合、TeamCity は NuGet.org でそれを検索します。 プライベートリポジトリにアクセスできるようにするには、NuGet フィード資格情報を設定します。 TeamCity 内部フィードを参照することもできます。 |
スクリプトでサポートされているコマンドと引数
サポートされているコマンド:
コマンド | 説明 | サンプル |
|---|---|---|
| NuGet パッケージまたはアセンブリとその依存関係への参照を追加します。 |
|
| 指定されたスクリプトファイルをロードして実行します。 |
|
| 使用可能なコマンドとキーバインディングに関するヘルプを表示します。 | |
| 詳細レベルを |
サポートされている引数:
スクリプトパラメーターフィールドに提供され、
Args配列に格納される引数 (たとえば、最初のスクリプトパラメーターの値を書き込む場合はWriteLine(Args[0]))。ビルド設定 |Parameters で指定され、
Props辞書に保存されるシステムパラメーター (たとえば、system.versionパラメーターの値を書き込む場合はWriteLine(Props["version"]))。
関連ページ:
ビルドステップの設定
ビルドステップは、CI/CD ワークフローの最小単位です。ビルドステップは、全体として実行される一連のアクションを定義します。ビルドステップは、ビルド構成とパイプラインジョブに属します。構成とパイプラインのビルドステップ:TeamCity は、.NET、Maven、NAnt、Xcode などの特定のビルドツール用に設計された幅広いビルドステップを提供します。現在、ビルド構成ではすべてのステップが利用可能です。バージョン 2025.07 で導入された
コンテナーラッパー
コンテナーラッパー拡張機能を使用すると、指定された Docker/Podman イメージ内でビルドステップを実行できます。ビルドを実行するエージェントにインストールされているコンテナーマネージャーに応じて、イメージはまたはコマンドによってプルされます。TeamCity は、コンテナーを匿名でプルできます (イメージが公開されている場合)。または、レジストリにログインした後でプルできます (プライベートレジストリの場合、または匿名ダウンロードに対する DockerHub のペナルティを回避する場合...
Kotlin DSL
TeamCity では、バージョン管理で設定を XML 形式で保存するだけでなく、DSL (Kotlin 言語に基づく) で設定を保存することもできます。バージョン管理に保存された DSL を使用すると、プログラムで設定を定義できます。Kotlin は静的に型指定されるため、IDE で自動補完機能を自動的に受け取ります。これにより、利用可能な API オプションの発見がはるかに簡単になります。TeamCity での Kotlin DSL の使用に関するブログ投稿シリーズと推奨リファクタリングの記...
ビルドパラメーターの設定
パラメーターは、TeamCity 設定およびビルドスクリプトの構文を介して参照するペアです。パラメーター部分は、生の値 () にすることも、別のパラメーターへの参照 () を含めることもできます。パラメーター型:TeamCity は次の 3 種類のパラメーターをサポートします。構成パラメーター — ビルド構成内で設定を共有することを主な目的とするパラメーター。これらのパラメーターを使用して、テンプレートから作成された構成やレシピを使用する構成をカスタマイズすることもできます。TeamCity は...
プロジェクト管理者ガイド
このセクションでは、プロジェクト管理に焦点を当てます。TeamCity プロジェクトとビルド構成の作成、ビルドステップの設定、依存関係チェーンの構成などについて説明します。基本的な TeamCity ワークフロー:次のダイアグラムは、基本的な TeamCity ワークフローを示しています。TeamCity サーバーはリポジトリの変更を検出しました。サーバーはこの変更をデータベースに書き込みます。ビルド構成に添付されたトリガーは、データベース内の関連する変更を検出し、ビルドを開始します。トリガー...
コマンドライン (スクリプト)
コマンドライン(ビルド構成内)またはスクリプト(パイプライン内)は、TeamCity の中で最も柔軟なビルドステップです。エージェントマシン上で直接コマンドを実行するため、インストールされている任意のツール(cURL、Homebrew、Python、Unreal Engine など)との連携が可能になります。ツール固有の TeamCity ステップの代替として使用することもできます。たとえば、ゴールで Maven ステップを使用する代わりに、スクリプトを実行します。ステップ設定:スクリプトステップ...