3

我正在尝试设置 Jenkins (v1.47) 以使用ClearCase UCM (v1.1.2) 插件构建项目。

使用以下配置(更改名称以保护无辜者):

Stream: project_dev_build@\company_pvob<br/>
Component: project_tools@\company_pvob<br/>
Promotion level: INITIAL

我得到以下输出:

[CCUCM] * Stream: project_dev_build@\company_pvob
[CCUCM] * Component: project_tools@\company_pvob
[CCUCM] * Promotion level: INITIAL
[CCUCM] Removed 45 of 45 Baselines.
[CCUCM] No valid baselines found

我可以在我的 ClearCase 客户端中看到INITIAL,对于该流和组件,正好有 45 个基线,全部都在提升级别。
所以插件显然会找到然后丢弃它们。

但为什么?
本来以为最新的会被取走,怎么都被拒了?
我应该注意,如果我将配置从 " INITIAL" 更改为 " ALL" 没有区别,同样的事情也会发生。

4

1 回答 1

3

该消息是由该net.praqma.hudson.scm.CCUCMScm#pollStream()方法产生的

它调用filterBaselines()删除了所有“ deliver.xxx”基线或未标记的基线。

private int filterBaselines( List<Baseline> baselines ) {

  int pruned = 0;

  /* Remove deliver baselines */
  Iterator<Baseline> it = baselines.iterator();
  while( it.hasNext() ) {
    Baseline baseline = it.next();
    if( baseline.getShortname().startsWith( "deliverbl." ) || baseline.getLabelStatus().equals( LabelStatus.UNLABLED ) ) {
      it.remove();
      pruned++;
    }
  }
  return pruned;
}

如果您的所有基线都是由交付操作生成的,那就可以解释为什么插件会从可能的基线中删除它们以选择构建。

于 2012-06-25T16:07:15.320 回答