Jon Barker
Jon Barker

Reputation: 1828

Unable to MSBUILD Multiple 'Target' parameters in Parallel

When executing the solution build as follows, multiple worker nodes are created and the process finishes in 2 mins.

MSBuild.exe path\to.sln /p:OutDir=C:\out\ -m:4 /p:Configuration=QA /p:Platform="Any CPU"

However, when attempting to execute the SLN with specific targets (T1,T2,T3), these are built in series rather than parallel. Only the main msbuild.exe node is created; no workers

MSBuild.exe -target:Deployment\T1 -target:Deployment\T2 -target:Deployment\T3 path\to.sln /p:OutDir=C:\out\ -m:6 /p:Configuration=QA /p:Platform="Any CPU"

Despite the -m:6 parameter, only a single worker node is created; the process takes 2.5* longer to do the same thing.

Upvotes: 1

Views: 355

Answers (1)

baruchiro
baruchiro

Reputation: 5801

according to my understanding, parallel msbuild is only for "msbuild core tasks". I mean, there is an msbuild basic tasks: restore, build, test etc', and these tasks can run parallel.

But msbuild not try to parallel the targets. In this case, msbuild will run them sequencely.

The targets do for cases like /t:Restore,Build,Test, And it will never happen in parallel.

So, you can say this is limitation.

Upvotes: 1

Related Questions