I'm new to SharePoint (SP) deployment. I need to deploy a SharePoint Foundation (SPF) 2010 solution.

Currently, while debugging, I've been deploying it locally a la CTRL+F5. This generates the WSP and deploys it to the SPF server. what is deployed works as expected.

Now, I've got the VS.NET solution (an SPF2010 application page deployed to the SPF farm) building on a ci server, CruiseControl.NET. Here's the exec task in ccnet:

<exec executable="C:\builderTools\WSPBuilderExtensions\WSPBuilder.exe">
    <buildArgs>-WSPName MyWsp.wsp -BuildMode Release -OutputPath "C:\SomeSharePointDeploymentFolder"</buildArgs>

Everything builds great then I run WSPBuilder 2010 Beta to build the WSP that will be "XCOPY"ied to a share on the SharePoint server where I'll run some PowerShell to deploy it.

The first thing I noticed when looking at the contents of the WSP generated by WSPBuilder vs. the one that the VS.NET SP2010 project generates is that all the files I have in my Layouts folder are missing from the manifest.xml and from the WSP itself. In fact all files are missing aside from DLLs.

The other issue is CAS is all messed up.

I'm wondering how to generate the WSP just like VS.NET 2010 does via WSPBuilder.

From what I read on the Net, lots of people swear by WSPBuilder (even for 2010) but I found recent articles and some SO questions talking about building via MSBuild instead of WSPBuilder. Is one better than the other?

1 Answer 1


I wouldn't go for WSPBuilder (a third party product) anymore in SharePoint 2010 as all the building is done from within Visual Studio and MSBUILD today.

To create a wsp package just like Visual Studio's there are a couple of steps:

  1. Use MSBUILD with argument /p:IsPackaging=True
  2. Done

I guess it was just one step... :-)

Read up on Continuous Integration of SharePoint projects with Team Foundation Server to find more meat to this than just an argument. The Team Foundation Server is encouraged from MS for CI, but I'm sure you are able to do what you want with CruiseControl.NET.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.