Continuous integration 竹子';s 3.1.1手动依赖项管理/依赖项阻止功能未按预期工作?

Continuous integration 竹子';s 3.1.1手动依赖项管理/依赖项阻止功能未按预期工作?,continuous-integration,bamboo,build-dependencies,Continuous Integration,Bamboo,Build Dependencies,我们使用竹子作为我们的CI环境,并且有几个构建依赖项(使用手动依赖项管理&依赖项阻塞特性)。我们使用SVN轮询作为构建策略,所有项目都具有相同的轮询频率 假设我们有以下构建计划结构: 项目a的父级构建计划PA 项目B的子构建计划CB依赖于PA,已选择“如果父计划有未构建更改,则阻止构建”作为依赖项阻止策略 我们的目标是建立依赖关系树,以便: 如果项目B应该建立,首先检查A是否有变化,如果有,首先建立PA并阻止CB,在PA完成后立即恢复CB 对手动构建和自动构建都执行此操作(由于SVN轮询而

我们使用竹子作为我们的CI环境,并且有几个构建依赖项(使用手动依赖项管理&依赖项阻塞特性)。我们使用SVN轮询作为构建策略,所有项目都具有相同的轮询频率

假设我们有以下构建计划结构:

  • 项目a的父级构建计划PA
  • 项目B的子构建计划CB依赖于PA,已选择“如果父计划有未构建更改,则阻止构建”作为依赖项阻止策略
我们的目标是建立依赖关系树,以便:

  • 如果项目B应该建立,首先检查A是否有变化,如果有,首先建立PA并阻止CB,在PA完成后立即恢复CB
  • 对手动构建和自动构建都执行此操作(由于SVN轮询而触发的构建)
上面描述的目标似乎正是依赖项阻塞特性(请参阅)的全部内容。但是,我可能有配置错误,或者没有正确理解此功能

为了测试,我构建了以下案例:

  • 在中创建类DummyClassA
  • 在B中创建一个引用DummyClassA的类DummyClassB,以便首先构建项目a以便项目B编译 *手动调用CB
我希望通过上述配置,CB意识到父项目有变化,因此需要阻止CB、构建PA和恢复CB。 然而,发生的事情是,CB试图构建,但显然失败了(编译错误),因为项目B还不知道DummyClassA。当手动触发CB时,似乎没有对父项目A的SVN进行活动检查,对吗

我错过了什么?我非常确定,在几乎每个严肃的软件项目中都会出现这种情况,因此必须有一个简单的解决方案,所以我希望Bambor能够正确地处理这种开箱即用的问题。 有人能解释一下吗

最好的, 克里斯