SharePoint Solution Deployer, by Matthias Einig has been around from 2012. You can find it in Codeplex – SPSD SharePoint Solution Deployer here. Initially it was targeted for SharePoint 2007 deployment but has been evolved many times and now it support SharePoint 2010 and SharePoint 2013.
There is big change from SPSD SharePoint 2007 and SPSD SharePoint 2010/2013 version. The former is using MSBuild task to perform the delivery, while the later is using PowerShell to do the delivery. Unfortunately, due to the SharePoint for PowerShell cmdlet requirement – we can not mix between SPSD SharePoint 2007 and SPSD SharePoint 2010/2013. Which means, that if you work for SharePoint 2007 project, you must use SPSD SharePoint 2007.
Today SPSD is one of standard template for deployment included in SPSF SharePoint Software Factory at http://spsf.codeplex.com.
In order to utilize SPSD for your deployment, you will need to put WSP in specific location. The script (msbuild or Powershell) will then search through the specific folder location and perform delivery based on the configuration.
Today I publish SolutionDeployer-v12 nugget package contains SPSD SharePoint 2007 and SolutionDeployer nugget package contains SPSD SharePoint 2010/2013 based on package released by Matthias in Codeplex.
So what is the rational behind these two nugget packages?
- In Progressive Solution Installation Package series (Part1, Part2, Part3) , I explained the needs to build Installation Package with ease. An installation package that provides entry point to retrieve all components consistently and easily.
- In Introduction to Installation Package MsBuild , I provided a msbuild tools that will be able to convert any .NET project to installation package producer.
So far, we have SharePointPkg – a component package that contains SharePoint Solution (WSP) from our project and Installation Package for the entry point to retrieve all of components in our complex project.
One missing things however if the deployment tools. Since I don’t want to reinvent the wheel – I then choose SPSD as my deployment tools. This deployment tools is specific for SharePoint Solution. Since the original distribution of SPSD is a zip file – I decided to create nugget package from SPSD.
New SPSD dependencies for SharePoint solution deployment
Finally, I will add SolutionDeployer-v12 or SolutionDeployer dependencies to my SharePoint 2007 Installation Package or SharePoint 2010/2013 Installation Package respectively. Having all dependencies together in the Installation Package, allows me to publish installation package along with deployment automation script.
Keeping SharePointPkg and SolutionDeployer package as separate nugget package allows me to upgrade either the project or deployment script individually.