Package & Publish is a SharePoint provisioning feature provided by Teamsware Studio that allows you to deliver your custom SharePoint solution from development to production. With this feature, you can package lists and libraries, customizations, etc., and deploy them to any target site regardless if they are in the same or different environment. A simple and user-friendly interface in Teamsware Studio allows users to easily manage the deployment and update process.
During the deployment process, for some occasion user may need to deploy certain solution elements to different customer environments. The Selective Deployment feature gives you a great possibility to manage which solution elements will be published during deployment (or update deployment) to the target site, instead of deploying everything included in the package. This option will let user be more flexible and keep up with customer demand.
Note: The Selective Deployment feature is available only for the ‘Direct to SharePoint site' publish method in Solution Studio.
The Selective deployment process has some specifics which are described in this article. The Selective deployment is available on the Verification step during deployment process. On the "Publish" tab start the deployment process and choose ‘Direct to SharePoint site' publish method. Start the Verification process.
To use the Selective Deployment option select the second option and click on the Next button.
Note: If you choose 'Selective Deployment' during the first deployment process, it will be selected automatically during the further update deployment process. You can always switch to the Full Deployment option, the confirmation message will appear.
On the wizard you can manage which package elements you want to include/exclude from the deployment. You have a several options to do that:
- Check/Uncheck package element (node):
You can check or uncheck the whole parent node (list or library, Site Navigation, Site Settings, etc) or you can also check/uncheck only some child node (certain fields, field settings, view, etc ).
Note: During the next deployment update, an unchecked node will remain unchecked until a change is made to the node. If there are changes, the node will be checked automatically.
- Include/Exclude from deployment(s) option:
You can include/exclude the package element. Excluded package element will be not published to the target site. Here you can also include/exclude or whole parent package element or its child package element.
Note: During the next deployment update, this node will remain excluded by default and all changes in this package element will not be detected until you manually include it. Also, Force Update and Reset options don't affect excluded nodes.
- Prevent overwritting display name: This option is available only for the list/libraries Fields node and Site Field node.
- Force update (overwrite all): You can overwrite changes certain node on the context menu (right-click) or the whole structure.
- Reset: You can revert the changes to the original state in the package.
When you made some changes in the Selective deployment wizard before the starting the deployment process you need to restart verification to make sure there are no conflicts, etc.
During the publishing process, the system compares changes in the previous package with the current package. Also, changes made in the target site are detected. If there are some changes, the user will see them in the Selective deployment wizard after the verification.
In some cases, the changes made in the package or made in the target site can cause conflicts that should be resolved. For example, conflicts related to the lookup, data lookup, and cross-site fields, conflicts related to the adding/renaming fields in the lists/libraries, removed lists/libraries, etc.
Note: Some conflicts can be resolved automatically, and some conflicts should be resolved manually. The ways you can resolve a conflict - to use the 'Force update' option or to uncheck the conflict package node or in some cases, you need to make changes on the source/target site and restart verification again.