teognost
03-07-2008, 02:13 PM
We are doing a couple of intraday builds.During the build unit tests are performed using nunit console but launched from NCover(in order to create coverage reports as well):
"C:\Program Files\NCover\NCover.Console.exe" "C:\Program Files\NUnit-Net-2.0 2.2.8\bin\nunit-console.exe" "ConfigMgrTests.dll" //w D:\LatestUnitTestBinaries\IntradayTrunk //a ConfigMgr //ea TranslatorGen.GeneratedTranslatorAttribute;Seriali zation.GeneratedSerializatorAttribute //l D:\Reports\NCover\2008.0307.1.0\ConfigMgrTests.dll .Coverage.log //x D:\Reports\NCover\2008.0307.1.0\ConfigMgrTests.dll .Coverage.xml /noshadow /xml:"D:\Reports\UnitTests\2008.0307.1.0\ConfigMgrTests. dll.xml"
The command is run for all the dlls,one by one.
But after build finished-some dlls remained locked,cannot delete them so next intraday build would fail.
In Task Manager it appears the process nunit-console.exe even after build is finished.
If I kill this process manually-files are not locked anymore.
I am thinking about doing this automatically at the end of each build-determine the process ID of nunit-console.exe launched by current build and kill it.
I need to kill specific ID as it can run in the same time a branch build and I do not want to kill its nunit-console.exe which is still running...
Is there any way to do this in VBuild?
Or is there a way to kill all the processes launched inside the build process as soon as build is finished?
The build is launched with VisBuildCmd.exe.
"C:\Program Files\NCover\NCover.Console.exe" "C:\Program Files\NUnit-Net-2.0 2.2.8\bin\nunit-console.exe" "ConfigMgrTests.dll" //w D:\LatestUnitTestBinaries\IntradayTrunk //a ConfigMgr //ea TranslatorGen.GeneratedTranslatorAttribute;Seriali zation.GeneratedSerializatorAttribute //l D:\Reports\NCover\2008.0307.1.0\ConfigMgrTests.dll .Coverage.log //x D:\Reports\NCover\2008.0307.1.0\ConfigMgrTests.dll .Coverage.xml /noshadow /xml:"D:\Reports\UnitTests\2008.0307.1.0\ConfigMgrTests. dll.xml"
The command is run for all the dlls,one by one.
But after build finished-some dlls remained locked,cannot delete them so next intraday build would fail.
In Task Manager it appears the process nunit-console.exe even after build is finished.
If I kill this process manually-files are not locked anymore.
I am thinking about doing this automatically at the end of each build-determine the process ID of nunit-console.exe launched by current build and kill it.
I need to kill specific ID as it can run in the same time a branch build and I do not want to kill its nunit-console.exe which is still running...
Is there any way to do this in VBuild?
Or is there a way to kill all the processes launched inside the build process as soon as build is finished?
The build is launched with VisBuildCmd.exe.