尝试使用TeamCity编译项目时,我收到了一个来自cleartool的错误:
“get cleartext”失败:权限被拒绝。
失败的命令是对cleartool get的调用:
cleartool get -to C:\TeamCity\temp\cc_35875temp V:\andrew_CI_view\My_vob\MyProject@@\main\branch\7\Apps\main\branch\1\MyProject.Apps.FileTransferUtility\main\branch\1\App.xaml\main\branch\1
但奇怪的是,如果我从命令行手动执行此命令,它可以正常工作(ERRORLEVEL为0,没有错误消息等)。
是否有其他人看过这样的消息,或者知道可能出现什么问题?
以下是我的设置详情:
管理设置>编辑构建配置>编辑VCS根页:
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\MyProject@@\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\MyProject@@\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
答案 0 :(得分:1)
从这个帖子找到解决方案:
http://www.jetbrains.net/devnet/thread/283380
看起来这是因为将错误的用户分配给TeamCity Web Server服务。将用户从本地SYSTEM帐户更改为我的用户帐户解决了该问题。
答案 1 :(得分:1)
这通常是由于用户在客户端计算机上执行此访问权限不足:
MyVob.vbs/s/sdft
池可能有权加载与用户声明的CLEARCASE_PRIMARY_GROUP
不兼容的
您可以尝试从用户计算机直接转到sdft
池并尝试添加文件。
检查TeamCity流程实际使用的用户。
答案 2 :(得分:0)
如果它在命令行中适用于您,则必须确保从TeamCity运行它的环境等同于您的命令行环境。
Tamir,GoMidjets