关于 teamcity-cli
用于通过 `teamcity` 命令行管理 TeamCity 构建、作业、项目、Agent 和流水线的工作流 Skill。它说明命令用法,并提供故障排查和流水线变更的操作注意事项。
主要功能
- 01构建与运行管理
- 02失败日志和构建链诊断
- 03作业、项目与 Agent 操作
- 04流水线验证与生命周期管理
- 05命令用法和安全注意事项
适用场景
- 01定位构建失败的根因
- 02启动并监控验证运行
- 03推送前验证流水线变更
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jetbrains/ teamcity-cli --skill teamcity-cli安装后在 Claude Code 中输入/teamcity-cli确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
_agents/babysit-build.mdreferences/commands.mdoutput.mdworkflows.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 |
| Agent | 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 |
| API | teamcity api <endpoint>——原始 REST 访问 |
| 关联 | teamcity link——通过 teamcity.toml 绑定仓库 |
快速工作流
Artifact 下载始终位于 --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 registry:
echo $TOKEN | connection create docker -p <id> --name X --url https://ghcr.io --username U --stdin
参考资料
project settings status 会报告服务端的运行时消息和缺失的 DSL 上下文参数。其 “Recorded” 时间戳表示状态记录的时间,而非最近一次成功同步的时间。
评论
支持 Markdown