TeamCity オンプレミス 2025.11 ヘルプ

コマンドライン (スクリプト)

コマンドラインビルド構成内)またはスクリプトパイプライン内)は、TeamCity の中で最も柔軟なビルドステップです。エージェントマシン上で直接コマンドを実行するため、インストールされている任意のツール(cURL、Homebrew、Python、Unreal Engine など)との連携が可能になります。

ツール固有の TeamCity ステップの代替として使用することもできます。たとえば、package ゴールで Maven ステップを使用する代わりに、mvn package スクリプトを実行します。

ステップ設定

スクリプトステップ設定のリストとそれに対応する UI ラベルは、ビルド構成を構成するかパイプラインを構成するかによって若干異なります。

メイン設定

実行

対応するステップ設定フィールドに入力されたカスタムスクリプトを実行するか、(現在はビルド構成でのみ使用可能) 必要なパラメーターを使用して任意の実行可能ファイルを起動するかを選択できます。

スクリプトは、Unix 系環境では実行可能スクリプトとして、Windows では *.cmd バッチファイルとして実行されます。Unix 系 OS では、スクリプトは実行ビットがセットされた状態で保存され、OS によって実行されます。ほとんどのシステムでは、デフォルトで /bin/sh インタープリターが使用されます。特定のインタープリターを使用する必要がある場合は、スクリプトの先頭行にシェバン(例: #!/bin/bash)を指定してください。

作業ディレクトリ

ビルドステップが開始されるディレクトリです。デフォルトでは、エージェントがリモートソースをチェックアウトするルートディレクトリと同じです。詳細については、作業ディレクトリを構築するトピックを参照してください。

詳細設定

stderr 出力を次のようにフォーマットします

ステップでエラー出力をどのように処理するかを選択できます。利用可能なオプションは次のとおりです。

  • エラーstderr へのすべての出力はエラーとして処理されます。

  • 警告 (デフォルト) — stderr へのすべての出力は警告として処理されます。

コンテナー設定

このビルドステップは、Docker または Podman によってデプロイされたコンテナー内で実行できます。

クラシックビルド構成ステップでは、イメージ名、プラットフォーム、追加の実行引数を指定できる一連のプロパティが表示されます。明示的にイメージをプルするにより、このステップが実行されるたびに、TeamCity がターゲットコンテナーからイメージをプルすることが保証されます。

Dk docker container settings

TeamCity が指定のイメージを検索するレジストリを指定するには、プロジェクトに Docker/Podman 接続を追加します。デフォルトでは、この接続により TeamCity は Docker Hub(英語) から匿名モードでイメージをプルできますが、任意のコンテナーレジストリに設定できます。

詳細については、次の記事を参照してください: コンテナーラッパー

コンテナー内でステップを実行するには、Docker で実行をオンに切り替えます。有効にすると、この要素に 2 つのオプションが表示されます。

Run pipeline step in a container
  • Docker イメージ — Docker または Podman レジストリからイメージをプルできます。デフォルトでは、TeamCity は Docker、Hub イメージを匿名モードでプルできます。その他のケース(プライベートイメージ、カスタムイメージレジストリ、Docker、Hub のレート制限に違反しない非匿名モードなど)の場合は、パイプラインまたはジョブレベルで Docker 統合を設定してください。

  • Dockerfile — Dockerfile からカスタムイメージを構築できます。

    コードとしての構成

    次のスニペットは、YAML (パイプラインのみ) と Kotlin DSL の両方の形式でカスタマイズされたビルドステップを示しています。

    import jetbrains.buildServer.configs.kotlin.* import jetbrains.buildServer.configs.kotlin.buildSteps.script object YTApi : BuildType({ name = "Sample Build Configuration" steps { script { name = "Extract the list of issues from YT" id = "simpleRunner" scriptContent = """ curl -X GET "https://youtrack.mycompany.com/api/issues?fields=idReadable,summary,customFields(value(name),name)&query=Project:%20MyProject" \ -H "Authorization: Bearer ${'$'}YT_TOKEN" \ -H "Accept: application/json" \ -o response.txt """.trimIndent() } } })

    関連事項: ScriptBuildStep Kotlin DSL ドキュメント (英語)

    jobs: Job1: name: Sample Job steps: - type: script script-content: >- curl -X GET "https://youtrack.mycompany.com/api/issues?fields=idReadable,summary,customFields(value(name),name)&query=Project:%20MyProject" \ -H "Authorization: Bearer $YT_TOKEN" \ -H "Accept: application/json" \ -o response.txt
    2025 年 10 月 27 日

    関連ページ:

    ビルド構成の作成と編集

    ビルド構成とパイプラインは、実際の CI/CD ルーチンを表します。ビルド構成には、一連のビルドステップ(ビルド実行中に実行される基本操作)と、これらのステップの実行に必要な設定が格納されます。これらの設定には以下が含まれます。構成の動作をすばやく変更できるパラメーター。特定の条件が満たされたときに TeamCity が自動的に新しいビルドを開始できるようにするトリガー。構成の機能を拡張する機能を構築します。特定のビルドエージェントで構成ビルドを実行できるようにするエージェント要件。その他。ビル...

    パイプラインの作成と編集

    パイプラインは、従来のビルド構成に代わる、ユーザー中心の簡素化された代替手段です。チェーンビルドは TeamCity 2025.07 以降で利用可能です。現在早期アクセス段階であり、潜在的な問題が発生する可能性があるため複雑な設定には推奨されませんが、実験的段階ではないため、小規模で要求の少ないプロジェクトであれば本番環境で安全に使用できます。パイプラインとビルド構成とチェーン:パイプラインの作成に進む前に、ビルド構成とパイプラインの違い、それぞれをいつ使用するかを理解することが重要です。パイ...

    Maven

    Maven ビルドステップでは、ビルドを自動化するために Apache Maven を使用できます。ステップ設定:Maven ステップ設定のリストとそれに対応する UI ラベルは、ビルド構成を構成するかパイプラインを構成するかによって若干異なります。メイン設定ゴール TeamCity で実行させたい Maven ゴールをスペースで区切ってリストします。一部の Maven ゴールはバージョン管理システムを使用できるため、一部の VCS チェックアウトモードゴールと互換性がなくなる可能性があります。このよう...

    事前定義されたビルドパラメーターのリスト

    TeamCity には、ビルド構成の設定やビルドスクリプトですぐに使用できる定義済みのビルドパラメーターが数十個用意されています。これらのパラメーターはすべて(事前定義された構成パラメーターを除く)ビルドプロセスに渡されます。これらのパラメーターにアクセスするために必要な手法は、ビルド型によって異なる場合があることに注意してください(たとえば、Gradle ビルドで TeamCity システムプロパティにアクセスする方法については、ビルドプロパティセクションを参照してください)。事前定義されたサ...

    パイプライン設定

    この記事では、パイプライン全体に使用できる、共通のパイプラインの動作を指定する設定について説明します。パイプライン設定の編集:コアパイプライン設定を表示および編集するには、右上隅の設定トグルをクリックし、ビジュアルエディターでジョブを囲むパイプラインキャンバス領域内の任意の場所をクリックします。ビジュアルエディターからコードに切り替えて、マークアップを直接編集することもできます。パラメーター:パラメーターは、生の値を参照に置き換えるために設計された名前と値のペアです。TeamCity はパラ

    Kotlin DSL

    TeamCity では、バージョン管理で設定を XML 形式で保存するだけでなく、DSL (Kotlin 言語に基づく) で設定を保存することもできます。バージョン管理に保存された DSL を使用すると、プログラムで設定を定義できます。Kotlin は静的に型指定されるため、IDE で自動補完機能を自動的に受け取ります。これにより、利用可能な API オプションの発見がはるかに簡単になります。TeamCity での Kotlin DSL の使用に関するブログ投稿シリーズと推奨リファクタリングの記...