Question

I am trying to create a new project to cruise control. To do that, I added this to my ccnet.config file

<project name="MyProj"
         description="MyProjproject">

  <triggers/>

  <sourcecontrol type="git">
    <repository>GitAddr</repository>
    <branch>releaseName</branch>
    <autoGetSource>true</autoGetSource>
    <fetchSubmodules>true</fetchSubmodules>
    <executable>C:\Program Files (x86)\Git\cmd\git.exe</executable>
    <tagOnSuccess>false</tagOnSuccess>
    <commitBuildModifications>false</commitBuildModifications>
    <commitUntrackedFiles>false</commitUntrackedFiles>
    <tagCommitMessage>Unation Web Build {0}</tagCommitMessage>
    <tagNameFormat>Unation-Web-Build-{0}</tagNameFormat>
    <committerName>Oscar Albrecht</committerName>
    <committerEMail>oalbrecht@unation.com</committerEMail>
    <workingDirectory>d:\GIT\Sources\WEB</workingDirectory>
    <timeout>60000</timeout>
  </sourcecontrol>

  <tasks>
      <exec>
        <!-- if you want the task to fail, ping an unknown server -->
        <executable>ping.exe</executable>
        <buildArgs>localhost</buildArgs>
        <buildTimeoutSeconds>15</buildTimeoutSeconds>
        <description>Pinging a server</description>
      </exec>
  </tasks>

  <publishers>
    <xmllogger />
    <artifactcleanup cleanUpMethod="KeepLastXBuilds"
                     cleanUpValue="50" />
  </publishers>

</project>

But I get a

ThoughtWorks.CruiseControl.Core.CruiseControlException: Source control operation has timed out.
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.ProcessSourceControl.Execute(ProcessInfo processInfo)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Git.GitFetch(IIntegrationResult result)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Git.CreateUpateLocalRepository(IIntegrationResult result)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Git.GetModifications(IIntegrationResult from, IIntegrationResult to)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.QuietPeriod.GetModificationsWithLogging(ISourceControl sc, 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)
   at ThoughtWorks.CruiseControl.Core.IntegrationRunner.Integrate(IntegrationRequest request)

I am able to use git extensions and git bash to pull the files, but CruiseControl gives me this error. It is very strange and frustrating, because for a while it worked, I could even create a msbuild file to compile it and so on, but it stopped working without changes and now I am stuck.

What could happen?

Edit: I increased the timeout to 2 hours. I started the build and I also started in a second machine the pull. I could complete 3 pulls and the info I get in the ccnet is still "git fetch origin". It seems it is locked. Is there any way to check the console output for the operations?

Was it helpful?

Solution

It might be account issues. You need to change the CC service account.. Git is based on ssh and ssh tied to user account.

OTHER TIPS

It is the account issue. I had a similar problem and resolved it by restarting the service CruiseControl.NET Server from services.msc.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top