Reputation: 7625
getting started with Jenkins. Learning as fast as I can! Trying to setup msbuild in the tools config. i have this:
Then I have a job set up to do a build using an explicit setting and another using the msbuild from above:
When I run this job, the first build works but the second one fails:
D:\var\lib\jenkins\workspace\VisionTest>"c:\program files (x86)\msbuild\14.0\bin\msbuild.exe" TBSM.Vision.Database\TBSM.Vision.Database\TBSM.Vision.Database.sqlproj
Microsoft (R) Build Engine version 14.0.25420.1
Copyright (C) Microsoft Corporation. All rights reserved.
Build started 2/27/2019 9:05:25 AM.
Project "D:\var\lib\jenkins\workspace\VisionTest\TBSM.Vision.Database\TBSM.Vision.Database\TBSM.Vision.Database.sqlproj" on node 1 (default targets).
GenerateSqlTargetFrameworkMoniker:
Skipping target "GenerateSqlTargetFrameworkMoniker" because all output files are up-to-date with respect to the input files.
CoreCompile:
Skipping target "CoreCompile" because all output files are up-to-date with respect to the input files.
SqlBuild:
Skipping target "SqlBuild" because all output files are up-to-date with respect to the input files.
CopyFilesToOutputDirectory:
TBSM.Vision.Database -> D:\var\lib\jenkins\workspace\VisionTest\TBSM.Vision.Database\TBSM.Vision.Database\bin\Debug\TBSM.Vision.Database.dll
SqlPrepareForRun:
TBSM.Vision.Database -> D:\var\lib\jenkins\workspace\VisionTest\TBSM.Vision.Database\TBSM.Vision.Database\bin\Debug\TBSM.Vision.Database.dacpac
Done Building Project "D:\var\lib\jenkins\workspace\VisionTest\TBSM.Vision.Database\TBSM.Vision.Database\TBSM.Vision.Database.sqlproj" (default targets).
Build succeeded.
0 Warning(s)
0 Error(s)
Time Elapsed 00:00:04.35
D:\var\lib\jenkins\workspace\VisionTest>exit 0
FATAL: "c:\program files (x86)\msbuild\14.0\bin\msbuild.exe" doesn't exist
Build step 'Build a Visual Studio project or solution using MSBuild' marked build as failure
Finished: FAILURE
I figure its just me being a noob. Why does Jenkins find msbuild.exe in the first build step but not the second? What do I need to change?
Update: I also tried it like this:
And selected MSBuildAgent in the job config, yet I still get:
FATAL: "c:\program files (x86)\msbuild\14.0\bin\" doesn't exist
Build step 'Build a Visual Studio project or solution using MSBuild' marked build as failure
Finished: FAILURE
Upvotes: 6
Views: 2076
Reputation: 3651
In the Global Tool config you DO need to specify the full path to msbuild.exe and include the file name. Ignore the error message it is a red herring. Note: No double quotes around the path, not required.
Using this tool definition in a freestyle job requires an "Build a Visual Studio project or solution using MSBuild" Step, not a Windows Batch step.
In a freestyle job:
It is recommended that you migrate from Freestyle jobs to pipeline.
Upvotes: 0
Reputation: 7625
The Jenkins community found my error:
Remove the double quotes surrounding the path
thanks to Lionel Cabasson!!
Upvotes: 2