Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Missing SDK With Grid Build
randomsolutions
#1 Posted : Thursday, March 27, 2014 4:43:41 PM(UTC)
Rank: Newbie

Groups: Registered
Joined: 12/18/2013(UTC)
Posts: 9
Location: United States of America

Was thanked: 1 time(s) in 1 post(s)
Hello,

When I try to set up grid processing, I seem to be getting this error:

NCrunch: The following files are expected but do not seem to exist on the computer responsible for building this project:
C:\NCrunch Grid Node\Snapshots\1\Project1.Tests\_ncrunchsdks\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll

Please make sure you have all SDKs required to build this project installed on this computer.

Any idea how I can fix it?
Remco
#2 Posted : Thursday, March 27, 2014 9:32:18 PM(UTC)
Rank: NCrunch Developer

Groups: Administrators
Joined: 4/16/2011(UTC)
Posts: 7,144

Thanks: 959 times
Was thanked: 1290 time(s) in 1196 post(s)
Hi, thanks for sharing this issue.

I've heard several reports of this issue. I think it happens on systems that are using non-standard VS install locations. After many attempts, I haven't yet been able to reproduce it ... something is going wrong inside the path translation.

It may be worth moving the Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll into your solution and referencing it from there to see if this allows you to work around the problem.

If at all possible, I'd really like to get hold of a server-side log file that shows what's happening when your client connects to the node. If you have time, can you send one through to me? You can submit it through the contact form.
randomsolutions
#3 Posted : Friday, March 28, 2014 12:36:38 AM(UTC)
Rank: Newbie

Groups: Registered
Joined: 12/18/2013(UTC)
Posts: 9
Location: United States of America

Was thanked: 1 time(s) in 1 post(s)
I'm not sure it has anything to do with non-standard VS installations because I'm pretty sure my VS install is in the standard location in this case.

How do I find the server logs you're talking about in order to send them to you?

(I installed the grid node on an old box that had NCrunch for VS on it already, do you think that could be the cause?)
Remco
#4 Posted : Friday, March 28, 2014 1:03:39 AM(UTC)
Rank: NCrunch Developer

Groups: Administrators
Joined: 4/16/2011(UTC)
Posts: 7,144

Thanks: 959 times
Was thanked: 1290 time(s) in 1196 post(s)
Interesting ... That's a useful piece of information. Is your solution being opened from C drive? Or from another drive on your system?

You'll need to turn on logging on the grid node first. This can be done using the node configuration tool. Make sure you set the Log Verbosity to 'Detailed'. I recommend setting the log directory to somewhere easy to find (the default is buried somewhere in the system user profile directories).

Once the client has connected to the node, you should see an explosion of logging. The log files will individually grow to about 500k each but should compress very well. The key piece of information I'm interested in is the initial log files that cover the synchronisation of the snapshot between the client and the node. This should be fairly easy to spot in the log file. After the node has synchronised itself, it will begin executing builds and other tasks (which is fairly irrelevant information in this case).
randomsolutions
#5 Posted : Friday, March 28, 2014 1:19:50 AM(UTC)
Rank: Newbie

Groups: Registered
Joined: 12/18/2013(UTC)
Posts: 9
Location: United States of America

Was thanked: 1 time(s) in 1 post(s)
Is this relevant?

[18:17:56.6057-Core-17] Removing surplus file from snapshot: C:\NCrunch Grid Node\Snapshots\7\Project1.Tests\_ncrunchsdks\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
[18:17:56.6067-Core-17] Removing surplus file from snapshot: C:\NCrunch Grid Node\Snapshots\7\Project1.Tests\_ncrunchsdks\Microsoft.VisualStudio.QualityTools.UnitTestFramework.xml

Oh and my code is on the D drive.
Remco
#6 Posted : Friday, March 28, 2014 1:22:33 AM(UTC)
Rank: NCrunch Developer

Groups: Administrators
Joined: 4/16/2011(UTC)
Posts: 7,144

Thanks: 959 times
Was thanked: 1290 time(s) in 1196 post(s)
Yes! That is VERY relevant.

Would you be able to send me this log file?

Also, I'm just wondering if you can confirm something ...

If you clear out all the snapshots on the grid node (while the service is stopped), then get the client to connect and resynchronise, does everything work correctly for the full end-to-end test run?
randomsolutions
#7 Posted : Friday, March 28, 2014 1:31:50 AM(UTC)
Rank: Newbie

Groups: Registered
Joined: 12/18/2013(UTC)
Posts: 9
Location: United States of America

Was thanked: 1 time(s) in 1 post(s)
Sent the log files. Stopping the service, removing the files and then reconnecting didn't seem to fix the issue.
Remco
#8 Posted : Friday, March 28, 2014 1:34:00 AM(UTC)
Rank: NCrunch Developer

Groups: Administrators
Joined: 4/16/2011(UTC)
Posts: 7,144

Thanks: 959 times
Was thanked: 1290 time(s) in 1196 post(s)
Thanks. I'll need to have a closer look at the log files to see if I can now reproduce the issue. I'll get back to you soon.
randomsolutions
#9 Posted : Friday, March 28, 2014 1:40:43 AM(UTC)
Rank: Newbie

Groups: Registered
Joined: 12/18/2013(UTC)
Posts: 9
Location: United States of America

Was thanked: 1 time(s) in 1 post(s)
Thanks, does it have anything to do with the file being in the GAC, so it gets removed, but the references don't get updated?

C:\NCrunch Grid Node\5704\4\Project1.Tests\Project1.Tests.csproj

<Reference Include="C:\NCrunch Grid Node\Snapshots\1\Project1.Tests\_ncrunchsdks\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll" />
Remco
#10 Posted : Friday, March 28, 2014 1:45:03 AM(UTC)
Rank: NCrunch Developer

Groups: Administrators
Joined: 4/16/2011(UTC)
Posts: 7,144

Thanks: 959 times
Was thanked: 1290 time(s) in 1196 post(s)
Not really. This particular DLL file is 'magic' in the sense that NCrunch tries to copy it over to the node, whereas with other GAC references it will simply inform you that the file is missing and expect you to solve the problem yourself.

The idea behind this is that the file is effectively self contained, and is so universally needed for test execution that this seemed like the more convenient option.

I think that the problem lies somewhere in the path translation in the synchronisation code.
randomsolutions
#11 Posted : Friday, March 28, 2014 3:37:32 AM(UTC)
Rank: Newbie

Groups: Registered
Joined: 12/18/2013(UTC)
Posts: 9
Location: United States of America

Was thanked: 1 time(s) in 1 post(s)
A few other interesting things that may or may not help.

1. My old machine (which is now the "Grid" server I'm having problems with) was able to run this same solution on another grid server with the code in the same place (D:\Projects\...) and the Grid node in the default location. I'm unable to test on the other previously working grid box at the moment, but should be able to try it out on Monday.

2. My new machine has VS2013 only, and the "Grid" server (my old box) has VS2010, 2012, and 2013.

I'm pretty certain everything has been installed with the default values (VS, NCrunch, NCrunch Grid).
1 user thanked randomsolutions for this useful post.
Remco on 3/28/2014(UTC)
Remco
#12 Posted : Sunday, March 30, 2014 8:24:46 PM(UTC)
Rank: NCrunch Developer

Groups: Administrators
Joined: 4/16/2011(UTC)
Posts: 7,144

Thanks: 959 times
Was thanked: 1290 time(s) in 1196 post(s)
Hi,

I've done a bit of a deep dive on this issue to try and figure it out.

I haven't yet had any luck in piecing things together in a way that will let me reproduce the problem, but I have found a number of things around the path translation for this file that clearly were not right.

I've put together a build containing fixes for these problems. I'm wondering if you'd like to give it a try?

http://downloads.ncrunch.net/NCrunch_GridNodeServer_2.6.0.10.msi
http://downloads.ncrunch.net/NCrunch_GridNodeServer_2.6.0.10.zip
http://downloads.ncrunch.net/NCrunch_VS2008_2.6.0.10.msi
http://downloads.ncrunch.net/NCrunch_VS2010_2.6.0.10.msi
http://downloads.ncrunch.net/NCrunch_VS2010_2.6.0.10.zip
http://downloads.ncrunch.net/NCrunch_VS2012_2.6.0.10.msi
http://downloads.ncrunch.net/NCrunch_VS2012_2.6.0.10.zip
http://downloads.ncrunch.net/NCrunch_VS2013_2.6.0.10.msi
http://downloads.ncrunch.net/NCrunch_VS2013_2.6.0.10.zip

Cheers,

Remco
randomsolutions
#13 Posted : Monday, March 31, 2014 4:55:13 PM(UTC)
Rank: Newbie

Groups: Registered
Joined: 12/18/2013(UTC)
Posts: 9
Location: United States of America

Was thanked: 1 time(s) in 1 post(s)
Awesome. It compiles now. The "Is Enabled" checkbox in on the Distributed Processing window is really nice.

Thanks!
Remco
#14 Posted : Monday, March 31, 2014 9:50:37 PM(UTC)
Rank: NCrunch Developer

Groups: Administrators
Joined: 4/16/2011(UTC)
Posts: 7,144

Thanks: 959 times
Was thanked: 1290 time(s) in 1196 post(s)
Excellent! Thanks!
Users browsing this topic
Guest
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

YAF | YAF © 2003-2011, Yet Another Forum.NET
This page was generated in 0.078 seconds.
Trial NCrunch
Take NCrunch for a spin
Do your fingers a favour and supercharge your testing workflow
Free Download