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



NCrunch Grid nodes - VS2017+VS2019?
#1 Posted : Tuesday, August 6, 2019 11:46:41 AM(UTC)
Rank: Newbie

Groups: Registered
Joined: 8/6/2019(UTC)
Posts: 1
Location: United Kingdom

Thanks: 1 times

Is it possible to have both VS2017 and VS2019 clients both use the same set of grid node servers?

I'm currently experiencing an issue where NCrunch is warning - "Compiler results are not consistent between machines in the grid".

If I install multiple versions of MS Build Tools, how does NCrunch know which msbuild compiler to use? Is there a way I can specify this as a capability?

Many thanks
#2 Posted : Tuesday, August 6, 2019 10:55:52 PM(UTC)
Rank: NCrunch Developer

Groups: Administrators
Joined: 4/16/2011(UTC)
Posts: 6,248

Thanks: 810 times
Was thanked: 1077 time(s) in 1022 post(s)
Hi, thanks for posting.

The grid nodes have an awareness of versions of Visual Studio. Essentially, the client tells the node which version of VS it's using, and the grid node will do its best to match that version. Where the version used on the client isn't available on the grid node, it will first look for a later version of VS, then an earlier one. Best practice is to make sure that whatever version of Visual Studio is being used on the client is also installed on the node.

We've tested the above case fairly extensively, but what we haven't tested extensively is how well this works with multiple versions of the MS Build Tools installed and no Visual Studio present on the node.

In theory, the MS Build Tools should publish their location via the same API we use to establish the install paths of VS2017/2019. However, we haven't found this API to be particularly reliable, so it may be required to specify the path using environment variables as such:
NCrunchVSInstallPath.VS2017 = path to 'C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools' or equivalent
NCrunchVSInstallPath.VS2019 = path to 'C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools' or equivalent

Make sure you set the above variables at system level so that the apply for all user accounts. You'll probably need to reboot for it to take full effect.

The error you're receiving can still happen even if the node is using the correct major version of VS/BuildTools. This is because under VS2017 and VS2019 there are many different minor versions of the IDE/BuildTools and these often have compiler updates. We usually find that unless our entire grid is kept carefully synchronised with VS updates then this warning tends to appear.
1 user thanked Remco for this useful post.
alexitg on 8/7/2019(UTC)
Users browsing this topic
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.036 seconds.
Trial NCrunch
Take NCrunch for a spin
Do your fingers a favour and supercharge your testing workflow
Free Download