我正在尝试设置 Jenkins (v1.47) 以使用 ClearCase UCM (v1.1.2) plugin 构建项目.
使用以下配置(更改名称以保护无辜者):
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 客户端中看到该流和组件正好有 45 个基线,都在 INITIAL
提升级别。
所以插件显然会找到然后丢弃它们。
但为什么呢?
原以为最新的会被采纳,怎么都被拒了?
我应该注意,如果我将配置从“INITIAL
”更改为“ALL
”,它没有任何区别,同样的事情会发生。
最佳答案
该消息由 net.praqma.hudson.scm.CCUCMScm#pollStream()
method 生成
它调用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;
}
如果您的所有基线都是通过交付操作生成的,那就可以解释为什么插件将它们从可能的基线中删除以选择构建。
关于jenkins - 为什么 Jenkins 中的 ClearCase UCM 插件找不到任何基线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11192289/