术语和概念
以下指南解释了主要的 TeamCity 术语和概念。 作为快速参考,请参阅基本 TeamCity 概念。
TeamCity 对象层次结构
Projects 是 TeamCity 层级结构中的顶级对象,而 Root project 则是包含您所有自定义项目及其子项目的主默认项目。 每个项目都用于存储逻辑相关的 build configurations ,并定义它们的通用设置和参数。 大多数情况下,一个 TeamCity 项目对应一个单独的软件产品或其特定版本。
项目可以手动配置,也可以从 VCS 仓库自动配置。 每个在项目中使用的代码库的设置都存储在一个名为 VCS root 的专用预设中。 除了 VCS 根之外,一个项目还包含在其嵌套子项目和构建配置之间共享的其他设置: 云配置文件连接、通用参数、清理规则,还有其他许多设置。
TeamCity 中简单对象层次结构的示例:
构建配置是基于项目源代码运行某项作业或构建的蓝图:无论是编译、测试、部署——或者按顺序进行所有这些阶段。 单个构建配置可以定义用于运行夜间构建或集成测试等的设置。
在某些情况下,您可能需要创建仅在少数细节上有所不同的多个构建配置。 为此,您可以编写构建配置模板 并使用它来生成所需数量的类似构建配置。 使用模板的常见用例之一是在不同的操作系统上测试和部署软件。
每个构建配置都可以具有构建功能 和构建步骤。 构建功能是构建可用的额外功能:它可以是性能监视器,报告工具,或者对拉取请求的支持。 某些功能已内置于 TeamCity 中,而某些则可通过安装外部插件获得。 构建步骤是由某个 build runner 执行的构建过程中的逻辑阶段。 TeamCity 提供了各种不同的运行器:从测试工具到 Docker 集成。
另一个包含在构建配置中的重要设置是 触发器。 在 TeamCity 中有多种类型的触发器。 他们的共同目标是在预设条件满足时自动运行构建,从而实现软件产品的自动持续集成。
TeamCity 提供了所有这些细粒度对象,以便您尽可能灵活地配置构建过程。 然而,如果您有办法将它们相互连接,那么这些就更有意义了。 为此,TeamCity 提供了两种项目构建配置(即它们的构建之间)的依赖关系:
工件依赖 — 用于将一个构建生成的工件发送到另一个构建;工件的一个例子是由一个构建配置编译并由另一个构建配置部署的
.jar
应用程序。快照依赖性—— 用于将多个构建分配给相同的源修订(提交),以便在所有构建阶段都使用相同的项目文件。
通过连接来自不同配置或甚至项目的构建以及依赖关系,您可以创建一个灵活的 构建链。 TeamCity 产品本身是通过复杂的构建链来构建的。 它允许我们编译和测试不同的软件模块,并将生成的分发文件部署到Web上。
在 TeamCity 中建立链的例子:
TeamCity 构建环境
TeamCity 服务器储存所有对象的设置,管理构建队列 ,监控正在运行的构建状态,并执行许多其他任务。 您可以根据需要安装尽可能多的附加 次级服务器 ,以确保您的配置的高可用性和可扩展性。
您可以在您自己的机器上托管服务器,或者获取 TeamCity Cloud 订阅,从而您的服务器可以在云中自动启动并进行维护。
实际运行构建的是另一款软件 ——构建代理。 默认情况下,您的 TeamCity 服务器会有三个构建代理,如果需要,您可以获得更多。 构建代理软件可以安装在不同的机器上,或者与服务器一起安装。
了解更多
要了解更多关于 TeamCity 的信息,请进一步浏览此帮助:
当前的概念部分列出了主要的 TeamCity 对象和术语。 请将其用作参考来了解不熟悉的概念。
如果您仅用 TeamCity 来管理和查看构建,请确保阅读这个部分。
如果您具有项目管理员或服务器管理员的访问权限,请使用 TeamCity 配置和维护 部分来了解如何配置项目或如何使用管理面板并维护服务器。 这个部分还包含有关 许可证 和 在 TeamCity 中的代码配置的信息。
可用的 TeamCity 插件已在 这里 描述。
在 扩展 TeamCity 下,高级用户可以学习如何 运行用于与 TeamCity 交互的构建脚本,如何 使用 TeamCity REST API,等等。
额外的信息资源: