Team City 6 EAP and svn:externals

Hi all,

Im currently experiencing an issue with Team City EAP 6 and SVN 1.6. Please see stacktrace below.

The strcuture of the SVN repo is as follows:
root
- > tags
   -> 1.0
   -> 1.1
-> release
   -> svn:externals current <path>tags/1.1
-> trunk

I have setup Team City to checkout of both trunk (for trunk development tests) using MSBuild and all works fine. I replicated the setup of this script to do a release build (the only difference being that I changed Externals Support to 'Full Support'), which checks out the contents of the release folder and builds it out (as you can see there is a 'folder' in release called current which is an svn:externals link to the last tagged version). However running this builds returns multiple errors, has anyone any ideas? Cheers

Unable to collect changes
java.util.concurrent.ExecutionException:  jetbrains.buildServer.vcs.VcsException: Problem collecting changes for  'Cubic.WebServices.API :: Release Build (Staging)' : Error collecting  changes for VCS root  'https://cubictelecom.svn.cvsdude.com/Cubic.WebServices.API/release'
org.tmatesoft.svn.core.SVNException: svn: Cannot replace a directory from within
svn: REPORT of '/Cubic.WebServices.API/!svn/vcc/default': 500 Internal Server Error (https://cubictelecom.svn.cvsdude.com)
at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
at java.util.concurrent.FutureTask.get(Unknown Source)
at jetbrains.buildServer.serverSide.impl.CancelableTaskHolder.waitForTaskToComplete(CancelableTaskHolder.java:31)
at  jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl.doCollectChanges(TopBuildDependencyGraphImpl.java:91)
at jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl.access$000(TopBuildDependencyGraphImpl.java:20)
at jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl$3.run(TopBuildDependencyGraphImpl.java:1)
at jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl$3.run(TopBuildDependencyGraphImpl.java:2)
at jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl$4.run(TopBuildDependencyGraphImpl.java:1)
at jetbrains.buildServer.serverSide.impl.auth.SecurityContextImpl.runAs(SecurityContextImpl.java:33)
at jetbrains.buildServer.serverSide.impl.auth.SecurityContextImpl.runAsSystem(SecurityContextImpl.java:0)
at jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl.runAsSystem(TopBuildDependencyGraphImpl.java:7)
at  jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl.collectChangesForGraph(TopBuildDependencyGraphImpl.java:60)
at  jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl.collectChangesForGraph(TopBuildDependencyGraphImpl.java:64)
at jetbrains.buildServer.serverSide.impl.BuildChangesCollector.collectChangesForBuild(BuildChangesCollector.java:23)
at jetbrains.buildServer.serverSide.impl.BuildStarter$1.run(BuildStarter.java:27)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: jetbrains.buildServer.vcs.VcsException: Problem collecting  changes for 'Cubic.WebServices.API :: Release Build (Staging)' : Error  collecting changes for VCS root  'https://cubictelecom.svn.cvsdude.com/Cubic.WebServices.API/release'
org.tmatesoft.svn.core.SVNException: svn: Cannot replace a directory from within
svn: REPORT of '/Cubic.WebServices.API/!svn/vcc/default': 500 Internal Server Error (https://cubictelecom.svn.cvsdude.com)
at jetbrains.buildServer.vcs.impl.ChangesCollectorResultImpl.rethrowIfOurBuildType(ChangesCollectorResultImpl.java:75)
at jetbrains.buildServer.vcs.impl.ChangesCollectorResultImpl.checkNoProblemsInMyBuildTypes(ChangesCollectorResultImpl.java:47)
at jetbrains.buildServer.vcs.impl.ChangesCollectorResultImpl.checkingForChangesFinished(ChangesCollectorResultImpl.java:79)
at jetbrains.buildServer.vcs.impl.VcsChangesCollectorImpl$1.call(VcsChangesCollectorImpl.java:7)
at jetbrains.buildServer.vcs.impl.VcsChangesCollectorImpl$1.call(VcsChangesCollectorImpl.java:17)
... 5 more
Caused by: jetbrains.buildServer.vcs.VcsException: Error collecting  changes for VCS root  'https://cubictelecom.svn.cvsdude.com/Cubic.WebServices.API/release'
org.tmatesoft.svn.core.SVNException: svn: Cannot replace a directory from within
svn: REPORT of '/Cubic.WebServices.API/!svn/vcc/default': 500 Internal Server Error (https://cubictelecom.svn.cvsdude.com)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnSupport.collectBuildChanges(SvnSupport.java:338)
at jetbrains.buildServer.vcs.VcsSupportUtil.collectBuildChanges(VcsSupportUtil.java:54)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnSupport.collectBuildChanges(SvnSupport.java:211)
at jetbrains.buildServer.vcs.VcsSupport.collectChanges(VcsSupport.java:62)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.collectChanges(VcsChangesLoader.java:101)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.collectBuildChanges(VcsChangesLoader.java:32)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.collectChangesForRule(VcsChangesLoader.java:37)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.collectChanges4CommonCheckoutRule(VcsChangesLoader.java:104)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.loadChangesForRoot(VcsChangesLoader.java:210)
at jetbrains.buildServer.vcs.impl.VcsManagerImpl.loadChanges(VcsManagerImpl.java:615)
at jetbrains.buildServer.serverSide.impl.auth.SecuredVcsManager.loadChanges(SecuredVcsManager.java:58)
at jetbrains.buildServer.vcs.impl.VcsChangesCollectorImpl$3.call(VcsChangesCollectorImpl.java:2)
at jetbrains.buildServer.vcs.impl.VcsChangesCollectorImpl$3.call(VcsChangesCollectorImpl.java:1)
... 5 more
Caused by: org.tmatesoft.svn.core.SVNException: svn: Cannot replace a directory from within
svn: REPORT of '/Cubic.WebServices.API/!svn/vcc/default': 500 Internal Server Error (https://cubictelecom.svn.cvsdude.com)
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:64)
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:51)
at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.runReport(DAVRepository.java:1263)
at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.status(DAVRepository.java:803)
at org.tmatesoft.svn.core.io.SVNRepository.status(SVNRepository.java:2034)
at jetbrains.buildServer.buildTriggers.vcs.svn.ExternalsLoader.buildExternalsDelta(ExternalsLoader.java:92)
at jetbrains.buildServer.buildTriggers.vcs.svn.ExternalsLoader.loadExternalsDelta(ExternalsLoader.java:53)
at jetbrains.buildServer.buildTriggers.vcs.svn.ExternalsLoader.loadExternalsForDirectory(ExternalsLoader.java:46)
at jetbrains.buildServer.buildTriggers.vcs.svn.ExternalsLoader.calcExternals(ExternalsLoader.java:32)
at jetbrains.buildServer.buildTriggers.vcs.svn.PathExternals.calcExternals(PathExternals.java:41)
at jetbrains.buildServer.buildTriggers.vcs.svn.ExternalsProvider.collectExternals(ExternalsProvider.java:28)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnConnection.processExternalsChanges(SvnConnection.java:241)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnConnection.addChanges(SvnConnection.java:217)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnSupport.collectBuildChanges(SvnSupport.java:313)
... 17 more

[15:37:45]: java.util.concurrent.ExecutionException:  jetbrains.buildServer.vcs.VcsException: Problem collecting changes for  'Cubic.WebServices.API :: Release Build (Staging)' : Error collecting  changes for VCS root  'https://cubictelecom.svn.cvsdude.com/Cubic.WebServices.API/release'
org.tmatesoft.svn.core.SVNException: svn: Cannot replace a directory from within
svn: REPORT of '/Cubic.WebServices.API/!svn/vcc/default': 500 Internal Server Error (https://cubictelecom.svn.cvsdude.com)
java.util.concurrent.ExecutionException:  jetbrains.buildServer.vcs.VcsException: Problem collecting changes for  'Cubic.WebServices.API :: Release Build (Staging)' : Error collecting  changes for VCS root  'https://cubictelecom.svn.cvsdude.com/Cubic.WebServices.API/release'
org.tmatesoft.svn.core.SVNException: svn: Cannot replace a directory from within
svn: REPORT of '/Cubic.WebServices.API/!svn/vcc/default': 500 Internal Server Error (https://cubictelecom.svn.cvsdude.com)
at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
at java.util.concurrent.FutureTask.get(Unknown Source)
at jetbrains.buildServer.serverSide.impl.CancelableTaskHolder.waitForTaskToComplete(CancelableTaskHolder.java:31)
at  jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl.doCollectChanges(TopBuildDependencyGraphImpl.java:91)
at jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl.access$000(TopBuildDependencyGraphImpl.java:20)
at jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl$3.run(TopBuildDependencyGraphImpl.java:1)
at jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl$3.run(TopBuildDependencyGraphImpl.java:2)
at jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl$4.run(TopBuildDependencyGraphImpl.java:1)
at jetbrains.buildServer.serverSide.impl.auth.SecurityContextImpl.runAs(SecurityContextImpl.java:33)
at jetbrains.buildServer.serverSide.impl.auth.SecurityContextImpl.runAsSystem(SecurityContextImpl.java:0)
at jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl.runAsSystem(TopBuildDependencyGraphImpl.java:7)
at  jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl.collectChangesForGraph(TopBuildDependencyGraphImpl.java:60)
at  jetbrains.buildServer.serverSide.impl.dependency.TopBuildDependencyGraphImpl.collectChangesForGraph(TopBuildDependencyGraphImpl.java:64)
at jetbrains.buildServer.serverSide.impl.BuildChangesCollector.collectChangesForBuild(BuildChangesCollector.java:23)
at jetbrains.buildServer.serverSide.impl.BuildStarter$1.run(BuildStarter.java:27)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: jetbrains.buildServer.vcs.VcsException: Problem collecting  changes for 'Cubic.WebServices.API :: Release Build (Staging)' : Error  collecting changes for VCS root  'https://cubictelecom.svn.cvsdude.com/Cubic.WebServices.API/release'
org.tmatesoft.svn.core.SVNException: svn: Cannot replace a directory from within
svn: REPORT of '/Cubic.WebServices.API/!svn/vcc/default': 500 Internal Server Error (https://cubictelecom.svn.cvsdude.com)
at jetbrains.buildServer.vcs.impl.ChangesCollectorResultImpl.rethrowIfOurBuildType(ChangesCollectorResultImpl.java:75)
at jetbrains.buildServer.vcs.impl.ChangesCollectorResultImpl.checkNoProblemsInMyBuildTypes(ChangesCollectorResultImpl.java:47)
at jetbrains.buildServer.vcs.impl.ChangesCollectorResultImpl.checkingForChangesFinished(ChangesCollectorResultImpl.java:79)
at jetbrains.buildServer.vcs.impl.VcsChangesCollectorImpl$1.call(VcsChangesCollectorImpl.java:7)
at jetbrains.buildServer.vcs.impl.VcsChangesCollectorImpl$1.call(VcsChangesCollectorImpl.java:17)
... 5 more
Caused by: jetbrains.buildServer.vcs.VcsException: Error collecting  changes for VCS root  'https://cubictelecom.svn.cvsdude.com/Cubic.WebServices.API/release'
org.tmatesoft.svn.core.SVNException: svn: Cannot replace a directory from within
svn: REPORT of '/Cubic.WebServices.API/!svn/vcc/default': 500 Internal Server Error (https://cubictelecom.svn.cvsdude.com)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnSupport.collectBuildChanges(SvnSupport.java:338)
at jetbrains.buildServer.vcs.VcsSupportUtil.collectBuildChanges(VcsSupportUtil.java:54)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnSupport.collectBuildChanges(SvnSupport.java:211)
at jetbrains.buildServer.vcs.VcsSupport.collectChanges(VcsSupport.java:62)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.collectChanges(VcsChangesLoader.java:101)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.collectBuildChanges(VcsChangesLoader.java:32)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.collectChangesForRule(VcsChangesLoader.java:37)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.collectChanges4CommonCheckoutRule(VcsChangesLoader.java:104)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.loadChangesForRoot(VcsChangesLoader.java:210)
at jetbrains.buildServer.vcs.impl.VcsManagerImpl.loadChanges(VcsManagerImpl.java:615)
at jetbrains.buildServer.serverSide.impl.auth.SecuredVcsManager.loadChanges(SecuredVcsManager.java:58)
at jetbrains.buildServer.vcs.impl.VcsChangesCollectorImpl$3.call(VcsChangesCollectorImpl.java:2)
at jetbrains.buildServer.vcs.impl.VcsChangesCollectorImpl$3.call(VcsChangesCollectorImpl.java:1)
... 5 more
Caused by: org.tmatesoft.svn.core.SVNException: svn: Cannot replace a directory from within
svn: REPORT of '/Cubic.WebServices.API/!svn/vcc/default': 500 Internal Server Error (https://cubictelecom.svn.cvsdude.com)
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:64)
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:51)
at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.runReport(DAVRepository.java:1263)
at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.status(DAVRepository.java:803)
at org.tmatesoft.svn.core.io.SVNRepository.status(SVNRepository.java:2034)
at jetbrains.buildServer.buildTriggers.vcs.svn.ExternalsLoader.buildExternalsDelta(ExternalsLoader.java:92)
at jetbrains.buildServer.buildTriggers.vcs.svn.ExternalsLoader.loadExternalsDelta(ExternalsLoader.java:53)
at jetbrains.buildServer.buildTriggers.vcs.svn.ExternalsLoader.loadExternalsForDirectory(ExternalsLoader.java:46)
at jetbrains.buildServer.buildTriggers.vcs.svn.ExternalsLoader.calcExternals(ExternalsLoader.java:32)
at jetbrains.buildServer.buildTriggers.vcs.svn.PathExternals.calcExternals(PathExternals.java:41)
at jetbrains.buildServer.buildTriggers.vcs.svn.ExternalsProvider.collectExternals(ExternalsProvider.java:28)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnConnection.processExternalsChanges(SvnConnection.java:241)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnConnection.addChanges(SvnConnection.java:217)
at jetbrains.buildServer.buildTriggers.vcs.svn.SvnSupport.collectBuildChanges(SvnSupport.java:313)
... 17 more
4 comments

Hello Chris,

   Can you checkout your sources using command-line client? Does SVN externals configuration work for such a case?

   Regards,
   KIR

0

Hi Kir,

Yes the checkout from the command line and using Tortoise SVN pulls down the correct files (ie. I checkout the folder release/current and I am presented with an exact linked replica of what is in tag 1.2)

Cheers for your help,
Chris

0

Hello Chris,

  I'm sorry for delay with the answer.
  Could you please create an issue in our tracker http://youtrack.jetbrains.net/issues/TW and post there your build log and TeamCity debug logs?

  Thanks for your help!
  KIR

0

Please sign in to leave a comment.