TeamCity On-Premises 2026.2 Help

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

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

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

ステップ設定

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

メイン設定

実行

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

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

作業ディレクトリ

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

詳細設定

stderr 出力を次のようにフォーマットします。平均律は? no wait invalid?

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

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

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

コンテナー設定

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

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

Dk docker container settings

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

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

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

コンテナー内でパイプラインステップを実行
  • 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
    2026 年 9 月 11 日