TeamCity On-Premises 2025.11 Help

管道设置

本文介绍用于整个管道的设置,这些设置定义了管道的通用行为。

编辑管道设置

若要查看和编辑核心管道设置,请点击右上角的 设置切换 ,然后点击可视化编辑器中作业周围的管道画布区域的任意位置。

打开管道设置

您还可以从可视化编辑器切换到代码,直接编辑标记。

参数

参数是名称-值对,用于将原始值替换为引用。 当 TeamCity 遇到参数引用(%\形参名称% )时,会将其替换为实际的参数值。

TeamCity 支持两种参数层级:pipeline 参数和 job 参数。

  • 管道参数 旨在在该 pipeline 拥有的任何单独作业中访问。

    jobs: Job1: name: Job 1 steps: - type: script script-content: echo %pipeline-param1% Job2: name: Job 2 dependencies: - Job1 steps: - type: script script-content: echo %pipeline-param2% parameters: pipeline-param1: foo pipeline-param2: bar

    通常,这些是 配置参数 (不带 env. 名称前缀),主要用于存储多个作业共用的值或快速更改全局 pipeline 设置。

  • 作业输入参数 通常是环境变量(具有 env. 名称前缀),仅对该特定作业可用。 若要将此值传递给其他作业,您需要在 output parameter 中引用它们。

以下示例展示了一个 pipeline 级别的 secret 参数 bearer_token ,以及一个作业级别的环境变量 env.SERVER_URL ,它们被用于命令行步骤中。 请注意,具有 env. 前缀的参数可以通过常规 TeamCity %param_name% 语法引用,或在脚本中以原生代理变量($param_name )的形式访问。

jobs: Job1: name: Get all TeamCity builds steps: - type: script script-content: |- echo "Server URL is: %env.SERVER_URL%" curl -X GET "$SERVER_URL/builds" \ -H "Accept: application/json" \ -H "Authorization: Bearer %bearer-token%" parameters: env.SERVER_URL: https://example.com/app/rest secrets: bearer-token: credentialsJSON:12e5c38b-16a1-4201-a913-5b5411bd7bfe

Secret

Secret 是受保护的参数,用于存储敏感数据。 您可以像使用常规参数一样引用它们,但其实际值在 TeamCity UI 与构建日志中均被隐藏。

如果您切换到管道的代码视图,您会注意到 secret 值被替换为用于存储这些值的 token 名称。 TeamCity 会自动创建这些 token,以避免通过远程存储的配置文件泄露 secret 数据。

以下代码段展示了可在管道的 集成 区域中替代密码使用的 secret。 尝试暴露该 secret 的命令行脚本会在构建日志中打印“Secret value: *******”行。

jobs: Job1: name: Job 1 steps: - type: script script-content: |- echo "Secret value: %registry-password%" secrets: registry-password: credentialsJSON:c57c2732-1d8c-4c11-8724-f275085f4320

自动运行流水线

此部分包括允许 TeamCity 在特定条件下自动运行管道的设置。 此功能以 触发器 形式提供。

有新更改时

这些设置会在 TeamCity 检测到仓库中的新更改时触发新的管道运行。 在经典 TeamCity 构建配置中,可通过 VCS 触发器 实现类似功能。

触发器设置定义哪些更改应启动新的运行。 使用 分支 切换选择稳定的仓库分支。 在下面的示例中,只有在更改提交至“production”分支时,TeamCity 才会自动运行管道。

管道自动运行触发器

拉取请求 切换会将拉取请求分支(例如 GitHub refs/pull/ 分支)包含在可用来源列表中。 请注意,仅当管道跟踪这些拉取请求分支时,才能启用该选项(请参见 存储库 部分)。

按计划

这些设置类似于经典构建配置的 计划触发器 ,可让您定义 TeamCity 运行管道的日期时间模式。

管道计划触发器

存储库

存储库 部分允许您在管道运行期间检出多个仓库。 TeamCity 会从所有已添加的仓库中获取来源,即使未配置任何作业来处理它们。

管道仓库

与管道一起自动创建的初始仓库项称为 主仓库。 该项不能删除,并包含额外的 YAML 文件存储选择器。

单个管道仓库设置
仓库 URL 与来源

核心仓库设置,可让您选择管道应检出的仓库。

主仓库已禁用。

默认分支和分支规范

这些设置定义 TeamCity 应跟踪哪些分支。 未被跟踪的分支将被完全忽略:不会向服务器报告更改,您无法对这些分支执行运行等操作。

要详细了解分支规范语法,请参阅以下经典构建配置文章: 通用规范语法默认分支

拉取请求

启用此设置后,TeamCity 会在主管道页面的分支选择器中显示拉取(合并)请求分支。

分支选择器中的拉取请求分支

您还可以启用 “有新更改时”触发器 的相关切换,让 TeamCity 自动构建传入的拉取请求。

YAML 存储

指定管道 YAML 配置的存储位置:在 TeamCity 服务器或源仓库中。 另见: 在版本控制中存储项目设置

这些设置仅适用于主仓库。

发布状态到存储库

启用该设置后,TeamCity 会将管道运行状态(运行中、成功、失败)上报至 VCS 托管服务提供商。 下图展示了 GitHub 如何呈现此信息。

GitHub 中的运行状态

对于经典构建配置,此功能通过 提交状态发布器 构建功能提供。

每个单独作业都可以选择其要检出的管道仓库。 有关更多信息,请参阅以下文章: 作业设置

集成

pipeline 和作业设置面板都包含一个 集成 部分,用于连接私有 Docker 和 NPM 注册表。

  • 在 pipeline 设置中,您可以管理作业可用集成的完整列表。

  • 在作业设置中,开关允许您选择该作业应自动登录哪些注册表,从而确保构建步骤能够访问所需数据。

传统 TeamCity 构建配置通过“连接 + 构建功能”组合支持此功能:

如果某个项目中已有 Docker 或 NPM 连接,则该 pipeline 会在其“集成”部分下显示该连接。

继承的集成

这些继承的集成无法直接通过 pipelines 设置面板编辑,您需要在项目设置中修改其源连接。

最后修改日期: 2025年 12月 17日