Teamcity 是否可以限制特定生成配置的生成队列?

Teamcity 是否可以限制特定生成配置的生成队列?,teamcity,teamcity-7.0,Teamcity,Teamcity 7.0,我正在尝试制定一个有效的设置,以确保编译和部署构建优先于运行测试。我有一个包含两个生成配置的单个代理: 构建、部署、高级测试(5分钟) 单元测试、集成测试、烟雾测试(15分钟) 我已经配置了触发器,使得每次在VCS中发生提交时构建项目都会运行。我想做的是将测试项目排队以较低优先级运行。但是,如果在短时间内(几分钟)进行了多个提交,我现在确实希望将大量测试项目排队 例如,这就是我想要实现的目标: 12:00提交 12:02提交 12:08提交 构建/部署配置在以下位置启动: 12:00(

我正在尝试制定一个有效的设置,以确保编译和部署构建优先于运行测试。我有一个包含两个生成配置的单个代理:

  • 构建、部署、高级测试(5分钟)
  • 单元测试、集成测试、烟雾测试(15分钟)
我已经配置了触发器,使得每次在VCS中发生提交时构建项目都会运行。我想做的是将测试项目排队以较低优先级运行。但是,如果在短时间内(几分钟)进行了多个提交,我现在确实希望将大量测试项目排队

例如,这就是我想要实现的目标:

  • 12:00提交
  • 12:02提交
  • 12:08提交
构建/部署配置在以下位置启动:

  • 12:00(预计到达时间5分钟)
  • 12:05(预计到达时间5分钟)
  • 12:10(预计到达时间5分钟)
测试项目于:

  • 12:15(预计到达时间15分钟)
其中,测试项目仅使用最新部署的代码运行一次。我不想让测试项目排队3次


实际上,我只想在代理处于空闲状态并且提交了未测试的更改时运行测试项目。这可能吗?如果是这样的话,实现它的最佳方法是什么?

对于批量频繁提交,您可以在VCS触发器设置中使用“静默期模式”,请阅读相关内容。为避免队列中的配置立即触发生成-禁用VCS触发器设置中的复选框“在每个签入时触发生成”

要管理生成队列优先级,请单击“生成队列”链接,然后单击“配置生成优先级”。在这里,您可以管理优先级类。请阅读更多关于此的信息


注意:您应该是系统管理员。

感谢您抽出时间回答。静默期模式允许我在开始构建之前等待x分钟,但它实际上不会阻止将多个构建添加到队列中?如果您查看上面的示例,5分钟的静默期是否不会导致在12:07添加测试项目,然后在12:13再次添加测试项目。由于构建优先级的原因,测试在第三次部署之后才会运行(正确),但它们会在完全相同的部署上运行两次吗?较大的静默期将导致测试运行的频率降低,即使代理处于空闲状态。理想情况下,我只想说‘当构建队列为空时,如果有任何未测试的更改,请运行测试’。但我不确定这是否可行。如果禁用“在每次签入时触发生成”并为非测试配置设置高优先级,测试生成将保留在队列中,堆栈更改并等待代理空闲。哦,对了,那么如果禁用该选项,队列中的测试生成将被合并?我将测试它,但如果是这样,这将回答我的问题。