2009-11-25 52 views
1

当试图编译TeamCity的一个项目,我从cleartool得到一个错误:ClearTool错误:操作“得到明文”失败:权限被拒绝

"get cleartext" failed: Permission denied.

发生故障的命令是cleartool接到一通电话:

cleartool get -to C:\TeamCity\temp\cc_35875temp V:\andrew_CI_view\My_vob\[email protected]@\main\branch\7\Apps\main\branch\1\MyProject.Apps.FileTransferUtility\main\branch\1\App.xaml\main\branch\1 

什么虽然奇怪的是,如果我手动从命令行执行此命令,它工作正常(ERRORLEVEL为0,没有错误消息,等等)。

有没有其他人看过这样的信息,或者有什么想法可能会出错?


这里是我设置的细节:

  • 的TeamCity专业版4.5.5(建立9103)
  • TeamCity的是使用它的构建代理我的用户帐户。
  • 的TeamCity试图连接到ClearCase动态视图: d:\ CCdata \的SnapView \ andrew_CI_view从管理

设置>编辑生成配置>编辑VCS根页:

  • 类型VCS的:ClearCase的
  • ClearCase视图路径:V:\ andrewCIview
  • 在视图中
  • 相对路径:My_vob \ MyProject的
  • 使用ClearCase的:BASE
  • 没有结帐规则

的ClearCase 7.0.1.3-IFIX01

配置规格的动态视图:

element * CHECKEDOUT 
element * .../MyProject/LATEST 

下面是从相关线路teamcity-vcs.log

[2009-11-25 13:20:20,905] INFO [ Cached pool 12] -  jetbrains.buildServer.VCS - ClearCase executing cleartool get -to C:\TeamCity\temp\cc_35875temp V:\andrew_CI_view\My_vob\[email protected]@\main\branch\7\Apps\main\branch\1\MyProject.Apps.FileTransferUtility\main\branch\1\App.xaml\main\branch\1 
[2009-11-25 13:20:20,905] INFO [ Cached pool 12] - .clearcase.ClearCaseConnection - interactive execute: cleartool get -to C:\TeamCity\temp\cc_35875temp V:\andrew_CI_view\My_vob\[email protected]@\main\branch\7\Apps\main\branch\1\MyProject.Apps.FileTransferUtility\main\branch\1\App.xaml\main\branch\1 
[2009-11-25 13:20:21,155] INFO [ Cached pool 12] -  jetbrains.buildServer.VCS - ClearCase executing cleartool quit 
[2009-11-25 13:20:21,155] INFO [ Cached pool 12] - .clearcase.ClearCaseConnection - interactive execute: cleartool quit 
[2009-11-25 13:20:21,155] WARN [ Cached pool 12] -  jetbrains.buildServer.VCS - Failed to build patch for build #15, build id: 17, VCS root: ClearCaseVCS, due to error: java.io.IOException: cleartool: Error: Operation "get cleartext" failed: Permission denied. 
jetbrains.buildServer.vcs.VcsException: java.io.IOException: cleartool: Error: Operation "get cleartext" failed: Permission denied. 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.CCPatchProvider.loadFile(CCPatchProvider.java:171) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.CCPatchProvider.access$200(CCPatchProvider.java:31) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.CCPatchProvider$2.processFile(CCPatchProvider.java:111) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.structure.CacheProcessor.processAllRevisions(CacheProcessor.java:71) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.structure.CacheElement.processAllVersionsInternal(CacheElement.java:178) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.structure.CacheElement.processAllVersions(CacheElement.java:96) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.ClearCaseConnection.processAllVersions(ClearCaseConnection.java:665) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.CCPatchProvider.buildPatch(CCPatchProvider.java:52) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.ClearCaseSupport.buildPatchForConnection(ClearCaseSupport.java:294) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.ClearCaseSupport.buildPatch(ClearCaseSupport.java:281) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.ClearCaseSupport$7.buildPatch(ClearCaseSupport.java:755) 
    at jetbrains.buildServer.serverSide.impl.projectSources.BuildPatchUtil$1.buildPatch(BuildPatchUtil.java:2) 
    at jetbrains.buildServer.vcs.VcsSupportUtil.buildPatch(VcsSupportUtil.java:81) 
    at jetbrains.buildServer.serverSide.impl.projectSources.BuildPatchUtil.buildPatch(BuildPatchUtil.java:2) 
    at jetbrains.buildServer.serverSide.impl.projectSources.PatchComposer.buildCleanPatchToStream(PatchComposer.java:121) 
    at jetbrains.buildServer.serverSide.impl.projectSources.PatchComposer.access$100(PatchComposer.java:65) 
    at jetbrains.buildServer.serverSide.impl.projectSources.PatchComposer$2.constructPatch(PatchComposer.java:1) 
    at jetbrains.buildServer.serverSide.impl.projectSources.SmallPatchCache.getCachedCleanPatch(SmallPatchCache.java:36) 
    at jetbrains.buildServer.serverSide.impl.projectSources.PatchCacheImpl.requestCachedPatch(PatchCacheImpl.java:25) 
    at jetbrains.buildServer.serverSide.impl.projectSources.PatchComposer.getOrMakeCacheableCleanPatch(PatchComposer.java:140) 
    at jetbrains.buildServer.serverSide.impl.projectSources.PatchComposer.makePatch(PatchComposer.java:36) 
    at jetbrains.buildServer.serverSide.impl.projectSources.PatchComposer.buildPatchForRoot(PatchComposer.java:71) 
    at jetbrains.buildServer.serverSide.impl.projectSources.PatchComposer.buildPatch(PatchComposer.java:125) 
    at jetbrains.buildServer.serverSide.impl.BuildTypeImpl.buildPatch(BuildTypeImpl.java:290) 
    at jetbrains.buildServer.serverSide.impl.BuildTypeImpl$$FastClassByCGLIB$$a84db719.invoke(<generated>) 
    at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149) 
    at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:700) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) 
    at jetbrains.buildServer.serverSide.impl.auth.TeamCityMethodSecurityInterceptor.invoke(TeamCityMethodSecurityInterceptor.java:33) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) 
    at org.springframework.aop.framework.Cglib2AopProxy$FixedChainStaticTargetInterceptor.intercept(Cglib2AopProxy.java:582) 
    at jetbrains.buildServer.serverSide.impl.BuildTypeImpl$$EnhancerByCGLIB$$effc1aaa.buildPatch(<generated>) 
    at jetbrains.buildServer.serverSide.impl.BuildStarter$2.call(BuildStarter.java:5) 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:123) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) 
    at java.lang.Thread.run(Thread.java:595) 
Caused by: java.io.IOException: cleartool: Error: Operation "get cleartext" failed: Permission denied. 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.process.InteractiveProcess.executeAndReturnProcessInput(InteractiveProcess.java:64) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.ClearCaseConnection$ClearCaseInteractiveProcess.copyFileContentTo(ClearCaseConnection.java:997) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.ClearCaseConnection.loadFileContent(ClearCaseConnection.java:308) 
    at jetbrains.buildServer.buildTriggers.vcs.clearcase.CCPatchProvider.loadFile(CCPatchProvider.java:141) 
    ... 37 more 

回答

1

发现从这个线程解决方案:

http://www.jetbrains.net/devnet/thread/283380

看起来这是由具有分配给TeamCity的Web服务器服务的用户错误造成的。将用户从本地SYSTEM帐户更改为我的用户帐户解决了问题。

+0

没有马上看到您的答案:好点。 +1 – VonC 2009-11-25 21:54:02

1

这一般是由于执行该客户机上此访问的用户权限不足:

MyVob.vbs/s/sdft池可能有权限加载与用户声明

你可以尝试CLEARCASE_PRIMARY_GROUP不兼容直接从用户机器中去sdft池并尝试添加一个文件。

检查TeamCity进程实际使用哪个用户。

+0

我想我通过更改TeamCity Web服务来使用我的用户帐户而不是本地SYSTEM帐户来解决问题。我很奇怪Web服务需要这些权限。我想我只是不了解TeamCity那么好,以及它在后台真正做什么。 – 2009-11-25 21:06:08

0

如果它在命令行中适用于您,您必须确保从TeamCity运行它的环境与您的命令行环境相同。

坦米尔,GoMidjets

相关问题