Teamcity 快照依赖关系-don';t在依赖项上运行挂起的更改

Teamcity 快照依赖关系-don';t在依赖项上运行挂起的更改,teamcity,Teamcity,假设我有三个构建配置 构建和运行测试 质量保证构建 生产建设 QA依赖于构建和运行测试。生产取决于质量保证 正常的工作流程如下所示 提交更改 生成和运行测试将自动运行 手动运行QA构建 QA批准变更 手动运行生产构建 这很有效。但是,让我们假设在步骤3和步骤5之间的某个时间提交了更改。所以现在我有1个变更等待QA,2个等待生产(其中1个已经过QA批准) 如果我单击TeamCity中的运行按钮,它将运行QA构建的挂起更改以及生产构建的两个更改 如果我单击运行按钮上的“…”,我就可以单击“更改”并选

假设我有三个构建配置

  • 构建和运行测试
  • 质量保证构建
  • 生产建设
  • QA依赖于构建和运行测试。生产取决于质量保证

    正常的工作流程如下所示

  • 提交更改
  • 生成和运行测试将自动运行
  • 手动运行QA构建
  • QA批准变更
  • 手动运行生产构建
  • 这很有效。但是,让我们假设在步骤3和步骤5之间的某个时间提交了更改。所以现在我有1个变更等待QA,2个等待生产(其中1个已经过QA批准)

    如果我单击TeamCity中的运行按钮,它将运行QA构建的挂起更改以及生产构建的两个更改

    如果我单击运行按钮上的“…”,我就可以单击“更改”并选择要包含在此版本中的特定修订。但是,这并没有显示QA中当前的版本。因此,现在我必须检查QA批准的版本,并确保选择正确的版本


    是否有类似于工件依赖关系的工作方式?在这方面,我可以指定“最后完成”或“最后固定”。这将确保未经批准的更改不会包含在生成中。

    在此特定场景中,您应该定义从21以及从32。当QA愿意测试1生成的工件时,他们可以转到123的选项卡(正如刚才提到的@neverov),然后从那里手动运行23。这确保在所有链步骤中使用相同的更改


    您还可以在这些配置之间进行定义(从21和从31)因此,由1构建的二进制文件被传递到23,而无需重新创建它们。

    在这个特定场景中,您应该定义从21以及从32。当QA愿意测试1生成的工件时,他们可以转到123的选项卡(正如刚才提到的@neverov),然后从那里手动运行23。这确保在所有链步骤中使用相同的更改


    您还可以在这些配置之间进行定义(从21和从31),以便将1生成的二进制文件传递到23,而无需重新创建它们。

    您检查过版本7吗?如果我没有弄错的话,有一些新的对构建管道的支持,这可能会满足您的需要。文档中没有突出的内容。我目前正在等待我的管理员安装它。如果你能给我指出一些具体的东西,我会很感激的。我想@Lasse的意思是你检查过版本7了吗?如果我没有弄错的话,有一些新的对构建管道的支持,这可能会满足您的需要。文档中没有突出的内容。我目前正在等待我的管理员安装它。如果你能给我指出一些具体的东西,我会很感激的。我想@Lasse的意思是这对TeamCity 7来说是新的。我在6点5分。然而,这看起来正是我想要的。如果我对6.0/6.5没有得到任何回应,我会接受这个答案。我曾经遇到过类似的问题:我如何使用快照依赖关系来表示我希望生成B使用与生成A相同的VCS版本,但在运行生成B时,我不希望生成A再次运行,由于它要生成的版本已经为A成功生成。似乎使用生成链的唯一方法是运行每个步骤。在向B添加“快照依赖项”时,请确保选中“如果有合适的版本,则不运行新版本”复选框(这是默认值)。在这种情况下,如果已包含具有相应源的生成,则不会运行。这对于TeamCity 7来说似乎是新的。我在6点5分。然而,这看起来正是我想要的。如果我对6.0/6.5没有得到任何回应,我会接受这个答案。我曾经遇到过类似的问题:我如何使用快照依赖关系来表示我希望生成B使用与生成A相同的VCS版本,但在运行生成B时,我不希望生成A再次运行,由于它要生成的版本已经为A成功生成。似乎使用生成链的唯一方法是运行每个步骤。在向B添加“快照依赖项”时,请确保选中“如果有合适的版本,则不运行新版本”复选框(这是默认值)。在这种情况下,如果已包含具有相应源的生成,则不会运行。