CruiseControlException when connecting to source control

蓝咒 提交于 2019-12-07 07:06:56

问题


I'm getting an exception from Cruise Control about not being able to connect to the server. However, if I force a build it works just fine. I've also tried using the repo-browser to connect to the server without any problems so I know that the server is up and running. I'm running CCNET 1.4.4 and SlikSVN 1.5.3. Below is the exception from the CCNET log:

ThoughtWorks.CruiseControl.Core.CruiseControlException:
Source control operation failed: svn: OPTIONS of 'https://some-server.com/trunk': could not connect to server (https://some-server.com) .
Process command: C:\Program\SlikSvn\bin\svn.exe log https://some-server.com/trunk -r "{2009-06-23T01:36:19Z}:{2009-06-23T07:20:25Z}" --verbose --xml --username ccnet --password auto --non-interactive --no-auth-cache
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.ProcessSourceControl.Execute(ProcessInfo processInfo) 
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Svn.GetModifications(IIntegrationResult from, IIntegrationResult to)
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.MultiSourceControl.GetModifications(IIntegrationResult from, IIntegrationResult to)
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.QuietPeriod.GetModifications(ISourceControl sourceControl, IIntegrationResult lastBuild, IIntegrationResult thisBuild)
at ThoughtWorks.CruiseControl.Core.IntegrationRunner.GetModifications(IIntegrationResult from, IIntegrationResult to) vid ThoughtWorks.CruiseControl.Core.IntegrationRunner.Integrate(IntegrationRequest request)

Any ideas would be much appreciated!


回答1:


I finally got it working again and this is what I've done.

  • Set maxSourceControlRetries to 10 in my CCNET-config
  • Set sourceControlErrorHandling to ReportOnEveryRetryAmount in my CCNET-config
  • Switched to the latest version of CollabNet client

As it turns out, CCNET swallowed sourcecontrol-errors like this in previous versions so I might have had troubles even before I updated to CCNET 1.4.4 but was unaware of it.

Thanks for your comments!




回答2:


I have encountered this problem when changing the SVN source near a code freeze. I create a release tag, and change the source control section to refer to the tag and not the development branch. However, the build working directory will still contain the source for the development branch, including all the SVN metafiles. This triggers the exception due to collision of SVN sources (the original dev branch and the new release tag).

In this case, the simple solution is to delete the code (directories and all) from the build working directory, and let CruiseControl pull source for the development branch from the new location.

Here is an excerpt from a ccnet.config file that has been modified to cause this problem. Does it look familiar?

<sourcecontrol type="multi">
    <sourceControls>
        <svn>
            <!--
            <trunkUrl>https://svn/Engineering/Applications/Quasar/branches/TeamRowdy</trunkUrl>
            -->
            <trunkUrl>https://svn/Engineering/Applications/Quasar/tags/REL-TeamRowdy-RC1-2013.07.17.003</trunkUrl>
            <workingDirectory>Quasar</workingDirectory>
            <cleanUp>true</cleanUp>
            <forceUpdate>true</forceUpdate>
        </svn>
        <svn>
            <!--
            <trunkUrl>https://svn/Engineering/Applications/Acme/branches/TeamRowdy</trunkUrl>
            -->
            <trunkUrl>https://svn/Engineering/Applications/Acme/tags/REL-TeamRowdy-RC1-2013.07.17.003</trunkUrl>
            <workingDirectory>Acme</workingDirectory>
            <cleanCopy>true</cleanCopy>
        </svn>
    </sourceControls>
</sourcecontrol>


来源:https://stackoverflow.com/questions/1031230/cruisecontrolexception-when-connecting-to-source-control

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!