TeamCity On-Premises 2026.1 Help

管理流水线流程。

Pipelines 是 TeamCity 中用于定义 CI/CD 工作流的基于 YAML 的配置系统。 每个管道属于某个项目,关联一个 VCS 根,并包含一个或多个作业。 teamcity pipeline 命令组可用于列出、检查、创建和管理 pipeline YAML。

列出管道

在服务器上查看所有流水线:

teamcity pipeline list
列出管道

根据项目筛选器筛选:

teamcity pipeline list --project MyProject teamcity pipeline list --project MyProject --json

pipeline list 参数

标志

描述

-p--项目

根据项目 ID 筛选器筛选

-n--limit

显示的最大管道数(默认 30)

--json

输出为 JSON。 使用 --json= 可列出可用字段, --json=f1,f2 可查看指定字段。

查看管道详情

teamcity pipeline view CLI_CiCd teamcity pipeline view CLI_CiCd --json

该视图显示管道名称、父项目、主构建类型,以及所有作业对应的 YAML 密钥和显示名称。

验证管道 YAML

在推送前,将 .teamcity.yml 文件与服务器的 JSON 架构进行校验:

teamcity pipeline validate teamcity pipeline validate path/to/pipeline.yml

架构从服务器获取,并在本地缓存 24 小时。 使用 --refresh-schema 可强制重新获取,或 --schema 使用本地架构文件。

validate 参数

标志

描述

--schema

本地 JSON 架构文件路径

--refresh-schema

强制从服务器重新获取架构

检查管道架构

打印 TeamCity 用于校验 .teamcity.yml 的每实例 JSON 架构:

teamcity pipeline schema
检查并保存管道 JSON 架构

该架构反映已连接服务器上可用的运行器、参数和构造,因此可能会在 TeamCity 不同版本之间发生变化。 CLI 会将其缓存到本地 24 小时;传递 --refresh 可绕过缓存并重新从服务器获取:

teamcity pipeline schema --refresh

如果服务器早于 TeamCity 2026.1(无架构端点),命令会输出内嵌的备用架构并在 stderr 写入警告。

创建管道

从 YAML 文件创建新管道:

teamcity pipeline create my-pipeline --project CLI teamcity pipeline create my-pipeline --project CLI --vcs-root MyVcsRoot teamcity pipeline create my-pipeline --project CLI --file pipeline.yml

省略 --vcs-root 时,会通过交互式提示列出项目中可用的 VCS 根。

create 参数

标志

描述

-p--项目

父项目 ID(必填)

--vcs-root

VCS 根 ID。 使用 teamcity project vcs list 发现可用根目录。

-f--file

管道 YAML 文件路径(默认为 .teamcity.yml

下载管道 YAML

下载服务器存储的管道 YAML 源码:

teamcity pipeline pull CLI_CiCd teamcity pipeline pull CLI_CiCd -o .teamcity.yml

输出默认转到 stdout,使其适合流水线处理。 使用 -o 写入文件。

上传管道 YAML

将更新后的 YAML 推送到服务器存储的管道:

teamcity pipeline push CLI_CiCd teamcity pipeline push CLI_CiCd pipeline.yml

未指定文件时,CLI 会从当前目录读取 .teamcity.yml

删除管道

teamcity pipeline delete CLI_MyPipeline teamcity pipeline delete CLI_MyPipeline --yes

除非传递 --yes ,否则会显示确认提示。

管理密钥

管道密钥使用 credentialsJSON: 令牌。 在管道项目中创建令牌,然后在 YAML 中引用:

# Create the pipeline first teamcity pipeline create my-pipeline --project CLI # Store a secret in the pipeline's project teamcity project token put CLI_MyPipeline "my-api-key" # Output: credentialsJSON:2d3c2507-4840-...

在管道 YAML 中引用该令牌:

secrets: env.API_KEY: credentialsJSON:2d3c2507-4840-...

然后推送:

teamcity pipeline push CLI_MyPipeline

其他命令中的管道

项目树

teamcity project tree 会将管道与作业同时显示,并用 标识:

teamcity project tree CLI
CLI CLI ├── CI CLI_CiCd ⬡ pipeline · 6 jobs └── Build CLI_Build

管道生成的子项目和虚拟构建类型会自动隐藏。

运行视图

查看管道运行时,CLI 会显示管道名称并列出所有作业:

teamcity run view 5800
✓ CI ⬡ 5800 #727 · main Triggered by vcs · 3h ago · Took 8m 17s Pipeline Jobs: lint Lint (build 5801) test_linux Test Linux (build 5803) goreleaser GoReleaser (build 5806)

运行树

teamcity run tree 检测流水线运行,并以状态摘要显示扁平化作业列表,而非通用依赖项树:

teamcity run tree 6708
管道运行树

作业列表

teamcity job list 默认隐藏 pipeline 主构建类型。 使用 --all 显示它们:

teamcity job list --project CLI # hides pipeline heads teamcity job list --project CLI --all # shows everything

运行管道

可通过标准 run start 命令,并使用 pipeline 主构建类型 ID 触发管道运行:

teamcity run start CLI_CiCd teamcity run start CLI_CiCd --watch
2026年 8月 6日