管道设置
本文介绍用于整个管道的设置,这些设置定义了管道的通用行为。
编辑管道设置
若要查看和编辑核心管道设置,请点击右上角的 设置切换 ,然后点击可视化编辑器中作业周围的管道画布区域的任意位置。

您还可以从可视化编辑器切换到代码,直接编辑标记。
参数
参数是名称-值对,用于将原始值替换为引用。 当 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 )的形式访问。
Secret
Secret 是受保护的参数,用于存储敏感数据。 您可以像使用常规参数一样引用它们,但其实际值在 TeamCity UI 与构建日志中均被隐藏。
如果您切换到管道的代码视图,您会注意到 secret 值被替换为用于存储这些值的 token 名称。 TeamCity 会自动创建这些 token,以避免通过远程存储的配置文件泄露 secret 数据。
以下代码段展示了可在管道的 集成 区域中替代密码使用的 secret。 尝试暴露该 secret 的命令行脚本会在构建日志中打印“Secret value: *******”行。
自动运行流水线
此部分包括允许 TeamCity 在特定条件下自动运行管道的设置。 此功能以 触发器 形式提供。
有新更改时
这些设置会在 TeamCity 检测到仓库中的新更改时触发新的管道运行。 在经典 TeamCity 构建配置中,可通过 VCS 触发器 实现类似功能。
触发器设置定义哪些更改应启动新的运行。 使用 分支 切换选择稳定的仓库分支。 在下面的示例中,只有在更改提交至“production”分支时,TeamCity 才会自动运行管道。

拉取请求 切换会将拉取请求分支(例如 GitHub refs/pull/ 分支)包含在可用来源列表中。 请注意,仅当管道跟踪这些拉取请求分支时,才能启用该选项(请参见 存储库 部分)。
按计划
这些设置类似于经典构建配置的 计划触发器 ,可让您定义 TeamCity 运行管道的日期时间模式。

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

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

- 仓库 URL 与来源
核心仓库设置,可让您选择管道应检出的仓库。
主仓库已禁用。
- 默认分支和分支规范
这些设置定义 TeamCity 应跟踪哪些分支。 未被跟踪的分支将被完全忽略:不会向服务器报告更改,您无法对这些分支执行运行等操作。
- 拉取请求
启用此设置后,TeamCity 会在主管道页面的分支选择器中显示拉取(合并)请求分支。

您还可以启用 “有新更改时”触发器 的相关切换,让 TeamCity 自动构建传入的拉取请求。
- YAML 存储
指定管道 YAML 配置的存储位置:在 TeamCity 服务器或源仓库中。 另见: 在版本控制中存储项目设置。
这些设置仅适用于主仓库。
- 发布状态到存储库
启用该设置后,TeamCity 会将管道运行状态(运行中、成功、失败)上报至 VCS 托管服务提供商。 下图展示了 GitHub 如何呈现此信息。

对于经典构建配置,此功能通过 提交状态发布器 构建功能提供。
每个单独作业都可以选择其要检出的管道仓库。 有关更多信息,请参阅以下文章: 作业设置。
集成
pipeline 和作业设置面板都包含一个 集成 部分,用于连接私有 Docker 和 NPM 注册表。
在 pipeline 设置中,您可以管理作业可用集成的完整列表。
在作业设置中,开关允许您选择该作业应自动登录哪些注册表,从而确保构建步骤能够访问所需数据。
传统 TeamCity 构建配置通过“连接 + 构建功能”组合支持此功能:
Docker Registry 连接与 Docker 注册表连接 Docker 构建功能。
NPM Registry 连接与 相关构建功能 ,用于 Node.js 注册表。
如果某个项目中已有 Docker 或 NPM 连接,则该 pipeline 会在其“集成”部分下显示该连接。

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