Jenkins ClearCase UCM插件检索更改错误

时间:2015-02-10 13:58:26

标签: jenkins integration clearcase clearcase-ucm baseline

我正在尝试将Jenkins与UCM ClearCase环境集成,我在构建过程中遇到了问题。

首先,我在我的集​​成流上创建了一个推荐的基线,并在我的开发流上重新设置了这个基线。

我的jenkins作业在我的集成流上配置并轮询“子流”

我在文件中添加了一个“#”以进行一些更改并在轮询后触发构建。在更改之后,我创建了将由插件检测到的基线。

在导致构建失败的错误之前似乎工作正常:

[CCUCM] Getting snapshotview
[CCUCM] Updating view using all modules.
java.io.IOException: Error while retrieving changes
    at net.praqma.hudson.remoting.deliver.GetChanges.invoke(GetChanges.java:49)
    at net.praqma.hudson.remoting.deliver.GetChanges.invoke(GetChanges.java:21)
    at hudson.FilePath.act(FilePath.java:981)
    at hudson.FilePath.act(FilePath.java:959)
    at net.praqma.hudson.scm.CCUCMScm.generateChangeLog(CCUCMScm.java:563)
    at net.praqma.hudson.scm.CCUCMScm.checkout(CCUCMScm.java:246)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1265)
    at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:622)
    at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:528)
    at hudson.model.Run.execute(Run.java:1759)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:89)
    at hudson.model.Executor.run(Executor.java:240)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
    at java.lang.String.substring(String.java:1949)
    at java.lang.String.substring(String.java:1916)
    at net.praqma.clearcase.ucm.entities.Activity$Parser.parse(Activity.java:275)
    at net.praqma.hudson.remoting.deliver.GetChanges.invoke(GetChanges.java:43)
    ... 13 more
Processing baseline
[CCUCM] Build result: FAILURE
[CCUCM] Cancelling the deliver. Cancelling
Failed.
[CCUCM] Performing common post build steps
[CCUCM] Build failed.

如果我在更改后没有创建新基线并且我在“INITIAL”级别更改了旧基线,则构建成功但由于旧基线不包含上次更改,因此未进行更改。

有人对这个问题有所了解吗?

1 个答案:

答案 0 :(得分:0)

您的问题可能有很多可能的原因,但是从子流传递到目标集成流似乎存在问题。 要找出导致问题的原因,您可能希望手动执行Clearcase传递操作,即从源流视图启动传递到目标流。尝试使用类似的条件:

- 快照视图

- 快照根视图文件夹的路径的相同长度(如果您在Windows上,如果达到255个字符限制)

可能的原因是:

1)无法传递元素,因为无法在目标视图中检出该元素。这可能是由于权限问题,因为它已经在流上检出但在另一个视图中,或者由于某些元素在路径方面超过255个字符这一事实。

2)交付时元素需要手动合并。

如果您使用的是早于1.2.0的插件版本,则可以在DEBUG模式下设置日志级别ccucm_loglevel。如果您使用1.2.0插件或更高版本,您可能会发现另一种调查方法也是设置