I have a cruise control server running a build on a VM. All I did was change the source control from Perforce to Git, and the build is now failing.
CCNet Config
<tasks>
<msbuild>
<executable>C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable>
<workingDirectory>c:\Build\Pcp_Main</workingDirectory>
<buildArgs>/v:d Pcp.proj /target:Clobber;Build /property:Configurations="Debug;Release" /property:NUnitRedirectConsoleOutput=1</buildArgs>
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MSBuild.dll</logger>
<timeout>2700</timeout>
</msbuild>
</tasks>
Build Log
Done Building Project "c:\Build\Pcp_Main\Pcp.proj" (Clobber;Build target(s)).
Build succeeded.
0 Warning(s)
0 Error(s)
Time Elapsed 00:01:32.39
MSBUILD : error MSB4015: The build stopped unexpectedly because the "ReusableLogger" logger failed unexpectedly during shutdown.
System.IO.DirectoryNotFoundException: Could not find a part of the path 'c:\Build\Pcp_Main\Artifacts\msbuild-results-2d082e8c-0e88-4c0b-9a6b-aa0e3094cab9.xml'.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at System.Xml.XmlDocument.Save(String filename)
at ThoughtWorks.CruiseControl.MSBuild.XmlLogger.Shutdown()
at Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.Shutdown()
at Microsoft.Build.BackEnd.Logging.LoggingService.ShutdownLogger(ILogger logger)
</build>
The folder c:\Build\Pcp_Main\Artifacts\ exists and the user running the build has write access to the folder.
I have also tried changing the logging dll to Rodemeyer.MsBuildToCCnet.dll and I get the same exception.
The project also builds from the command line without any problems.
The issue was having the artifacts folder inside the build folder. Moving it outside of the build folder resolved the issue.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With