在TeamCity中设置构建依赖项

在TeamCity中设置构建依赖项,teamcity,build-process,Teamcity,Build Process,我有一个构建,它进行编译并运行TeamCity中设置的单元测试。现在我想添加另一个运行集成测试的构建。这些要求将是: 集成测试构建使用在第一个构建中编译的二进制文件 集成测试生成仅在第一次成功生成后运行 在TeamCity中,集成构建正确显示自上次构建以来的所有提交 TeamCity中有两种类型的依赖项:artifact和snapshot。我的需求(1)和(2)建议使用工件依赖关系,但(3)建议使用快照。此外,即使我选择了快照依赖项,我仍然需要在我的构建中填写VSC属性 如何配置构建以获得所需的

我有一个构建,它进行编译并运行TeamCity中设置的单元测试。现在我想添加另一个运行集成测试的构建。这些要求将是:

  • 集成测试构建使用在第一个构建中编译的二进制文件
  • 集成测试生成仅在第一次成功生成后运行
  • 在TeamCity中,集成构建正确显示自上次构建以来的所有提交
  • TeamCity中有两种类型的依赖项:
    artifact
    snapshot
    。我的需求(1)和(2)建议使用工件依赖关系,但(3)建议使用快照。此外,即使我选择了快照依赖项,我仍然需要在我的构建中填写VSC属性


    如何配置构建以获得所需的行为?

    您需要同时设置工件和快照依赖项。这是完全正常的。为集成构建填充VSC属性也是很常见的(例如,如果您想标记来自集成构建的源代码,可以使用这种方法)。但是,您可能会遇到不需要以任何方式访问源的情况,因此不需要附加任何VCS根


    顺便说一下,我建议将编译和单元测试步骤分解为单独的构建配置。这将允许单元测试和集成测试在编译步骤完成后并行运行,从而优化总体构建时间。

    那么快照依赖项给了我什么?我认为它会以某种方式“同步”VCS,使其运行在相同的源上?我认为它提供了用于构建依赖构建配置的提交哈希,因此您可以为当前构建配置签出完全相同的源。这很有意义!你知道怎么配置吗?我不认为你需要做什么特别的事情。TeamCity将为您执行该逻辑,只要您配置了快照依赖项并连接了vcs根目录。