mcpField
T
teamcity-cli

teamcity-cli

github.com/jetbrainsクラウド・DevOps1291.1k 回インストール今日更新
リポジトリ

teamcity-cli について

`teamcity` コマンドラインで TeamCity のビルド、ジョブ、プロジェクト、エージェント、パイプラインを扱うためのワークフロースキルです。障害調査やパイプライン変更の手順と注意点をまとめています。

主な機能

  1. 01ビルドと実行の管理
  2. 02失敗ログとビルドチェーンの診断
  3. 03ジョブ、プロジェクト、エージェントの操作
  4. 04パイプラインの検証と管理
  5. 05コマンド使用法と安全上の注意

活用シーン

  1. 01ビルド失敗の根本原因の特定
  2. 02検証実行の開始と監視
  3. 03プッシュ前のパイプライン変更の検証

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jetbrains/teamcity-cli --skill teamcity-cli

インストール後、Claude Code で/teamcity-cliを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

_agents/
babysit-build.md
references/
commands.md
output.md
workflows.md

詳細

TeamCity CLI(teamcity)

クイックスタート

teamcity auth status                    # Check authentication
teamcity run list --status failure      # Find failed builds
teamcity run log <id> --failed --raw    # Full failure diagnostics

フラグや構文を推測しないでください。 コマンドリファレンスまたはteamcity <command> --helpを使用してください。ビルドは実行(teamcity run)、ビルド構成はジョブ(teamcity job)です。--countは使用せず、--limit(または-n)を使用してください。

注意点

  • 複合ビルドのログは空です — 実際の失敗を確認するには、子ビルドを調べてください。
  • ビルドチェーンは末端から失敗します — 最も深い階層で失敗した依存関係が根本原因です。teamcity run tree <id>を使用してください。
  • --local-changesはKotlin DSLを除外します — 実行前に.teamcity/の変更をプッシュしてください。
  • TEAMCITY_URLでコマンドごとにサーバーを選択します — TEAMCITY_URL=https://cli.teamcity.com teamcity run listは、そのサーバーに保存された認証情報を使用します。上書きするにはTEAMCITY_TOKENを設定してください。
  • 読み取り専用モードではリモートシェルがブロックされます — TEAMCITY_RO=1またはサーバーごとのro: trueを設定すると、接続前にagent execとagent termが拒否されます。
  • 複数ルートの実行:--revision ROOT=SHA[@BRANCH]を繰り返します。ROOT=@BRANCHは取得済みのブランチヘッドを使用します。SHAのみを指定すると、すべてのルートがそのSHAに固定されます。
  • ログ:--rawを使用して一時ファイルに出力します。ビルド:開始時には--watchを使用してください。
  • VCSトリガーが常に設定されているとは限りません — 修正をプッシュした後、手動でビルドを開始する必要がある場合があります。
  • pipeline pushは検証を行いません — 必ず先にteamcity pipeline validateを実行してください。
  • GitHub VCSルートではGitHub App接続を使用してください。 --auth passwordでPATを貼り付けないでください。ワークフローを参照してください。

主なコマンド

オリジンをまたぐダウンロードではリクエストヘッダーが削除されます。HTTPSのダウングレードと、オリジンをまたぐターミナルのリダイレクトは拒否されます。

領域コマンド
認証auth login、logout、status
ビルドrun list、view、start、watch、log、cancel、restart、tests、changes、tree
アーティファクトrun artifacts、run download
メタデータrun pin/unpin、run tag/untag、run comment
ジョブjob list、view、create、tree、pause/resume、step list/view/add/delete、param list/get/set/delete、settings list/get/set
プロジェクトproject list、view、create、tree、param、token put/get、settings export/status/enable
VCS/接続project vcs list/view/create/delete、project connection list/create/authorize/delete
キューqueue list、approve、remove、top
エージェントagent list、view、enable/disable、authorize/deauthorize、exec、term、reboot、move
プールpool list、view、link/unlink
サーバーserver plugin upload(--hot-reloadを任意で指定)
パイプラインpipeline list、view、create、validate、pull、push、schema、delete
APIteamcity api <endpoint> — RESTへの直接アクセス
リンクteamcity link — teamcity.tomlを使ってリポジトリを紐付ける

クイックワークフロー

成果物のダウンロードは --output 内に留まります。ディレクトリから外へ抜けるシンボリックリンクは拒否され、転送に失敗した場合も既存のファイルは保持されます。

各項目の詳細は ワークフロー をご覧ください。

  • 失敗を調査する:run list --status failure → run log <id> --failed --raw → run tests <id> --failed
  • ビルドチェーンをデバッグする:run tree <id> → 最も深い階層にある失敗した子を調べる
  • 修正して検証する:編集 → プッシュ → run start --watch(個人用ビルドには --local-changes を使用)
  • パイプラインのライフサイクル:pipeline pull <id> → 編集 → pipeline validate → pipeline push <id>。pipeline schema を実行すると、サーバーで有効なランナーと機能を含む完全なスキーマを取得できます
  • GitHub VCS:connection create github-app → connection authorize → リポジトリに App をインストール → vcs create --auth token --connection-id <id>
  • Docker レジストリ:echo $TOKEN | connection create docker -p <id> --name X --url https://ghcr.io --username U --stdin

参考資料

project settings status は、サーバーのランタイムメッセージと不足している DSL コンテキストパラメーターを報告します。「Recorded」のタイムスタンプはステータスが記録された時刻であり、最後に同期が成功した時刻ではありません。

コメント