mcpField
T
teamcity-cli

teamcity-cli

github.com/jetbrains云与 DevOps363 次安装6 天前更新
代码仓库

关于 teamcity-cli

用于管理 TeamCity 构建、作业、项目、Agent、队列和流水线的命令行工具,支持故障排查与流水线操作,并提供诊断和服务器配置相关命令指南。

主要功能

  1. 01列出、启动、监控和查看运行
  2. 02读取日志、测试、制品和构建树
  3. 03管理作业、项目、Agent 和队列
  4. 04创建、验证和推送流水线
  5. 05访问 TeamCity REST API

适用场景

  1. 01调查失败的构建
  2. 02追踪构建链中的故障
  3. 03启动并监控构建
  4. 04验证流水线变更

安装

复制下面的命令,在终端中运行。

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

安装后在 Claude Code 中输入/teamcity-cli确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

embed.go
plugin_agent_test.go
_agents/
babysit-build.md
references/
commands.md
output.md
workflows.md
references/workflows/
agents.md
artifacts.md
build-metadata-and-queue.md
connections-and-vcs.md
find-jobs-projects.md
fix-and-verify.md
inspect-from-url.md
investigate-failure.md
kotlin-dsl.md
parameters.md
pipelines.md
project-settings-and-tokens.md
run-builds.md
test-reliability.md
troubleshooting.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 可覆盖这些凭据。
  • 只读模式会阻止远程 Shell——TEAMCITY_RO=1 或按服务器设置的 ro: true 会在连接前拒绝 agent exec 和 agent term。
  • 多根运行:重复指定 --revision ROOT=SHA[@BRANCH];ROOT=@BRANCH 使用已获取的分支头。单独指定 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
Agentagent 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

参考资料

  • 命令参考 — 所有命令和标志
  • 工作流 — 按任务细分的工作流文档索引(失败调查、构建链、连接、流水线等)
  • 输出格式 — JSON、纯文本、脚本

project settings status 会报告服务端的运行时消息和缺失的 DSL 上下文参数。“Recorded” 时间戳表示状态记录的时间,而非最近一次成功同步的时间。

评论

支持 Markdown