Jenkins (+MSBuild) not building my .specs dll (just building the start up project)
-
I have a solution with several projects. In VS, I have my host project set as startup for Debugging in [IIS Express], but I want to make sure that when I check into my git repository and a build is triggered in Jenkins, it will always build my test project. Is there something I can add to the MSBuild script in my sln file to instruct that I *always* want the test assembly to be built? Something that I'm noticing is that if I change the startup project in Visual Studio and commit the sln file, whenever an automated build triggers in Jenkins, it only builds the "current" project. Any idea how to override this behavior? I want the Jenkins build to build the same artifacts every time and I don't want tinkering in VS to impact the automated build (unless their change actually breaks it) [Edit] ...the gist of this is that I have my specs.csproj file set up with
bin\Debug\
for a Debug build and
bin\Release
for a Release build. But the automated build does not output anything to the bin folder for this project. If I trigger a build of the project manually in VS, everything works as expected.
"I need build Skynet. Plz send code"
-
I have a solution with several projects. In VS, I have my host project set as startup for Debugging in [IIS Express], but I want to make sure that when I check into my git repository and a build is triggered in Jenkins, it will always build my test project. Is there something I can add to the MSBuild script in my sln file to instruct that I *always* want the test assembly to be built? Something that I'm noticing is that if I change the startup project in Visual Studio and commit the sln file, whenever an automated build triggers in Jenkins, it only builds the "current" project. Any idea how to override this behavior? I want the Jenkins build to build the same artifacts every time and I don't want tinkering in VS to impact the automated build (unless their change actually breaks it) [Edit] ...the gist of this is that I have my specs.csproj file set up with
bin\Debug\
for a Debug build and
bin\Release
for a Release build. But the automated build does not output anything to the bin folder for this project. If I trigger a build of the project manually in VS, everything works as expected.
"I need build Skynet. Plz send code"
Awww...son of a crap. No idea how this happened, but Jenkins was generating falsely succeeding builds. This is an "old new" ci server (early in the config but I haven't visited it in 8 or 9 months) I had installed the MSBuild plug in but hadn't handled the config bug (you have to configure the job with the folder specified in the plug-in sans executable, but you have to go back and edit the value to point the agent to the actual executable) I also had forgotten to specify my MSBuild Agent in the project's job, but the build was succeeding on checkin. I have no idea how Jenkins was using MSBuild to build when I hadn't pointed the MSBuild plugin to the executable, but fixing this fixed the problem.
C:/server.ci/baz.inga/baz.inga.resources.sln
/t:build /p:PlatformTarget=x86 /p:Configuration=Release...and everything builds just fine. When did Jenkins start building MSBuild straight out of the box? ...In fact, when did it start checking out of a git repository with no polling trigger? These were what really confused me.
"I need build Skynet. Plz send code"