In this session, I discuss and demonstrate how you can use SharePoint 2010 Web Templates and PowerShell scripts to give your team-based SharePoint development process a much needed productivity boost. Using these techniques, you enable your team to quickly test and review their custom components against your complete SharePoint solution while simultaneously eliminating inconsistencies often created by manual configurations.
By the end of this session, you will have learned:
How SharePoint web templates can be used to provision customized SharePoint sites
How to leverage PowerShell scripts to automate your custom site build and feature deployments
The key benefits of this approach for team-based SharePoint development
So stop wasting time and come see how you can help make your SharePoint team development better, faster, and stronger!
Developer Data Modeling Mistakes: From Postgres to NoSQL
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using SharePoint 2010 Web Templates and PowerShell
1. Better, Faster, Stronger!
Boost Your Team-Based SharePoint Development Using
SharePoint 2010 Web Templates and PowerShell
Richard Calderon
Principal Consultant, Catapult Systems
3. More About Me
Live in Austin, Texas
Part-time musician
Played the drums since I was a kid
Studied music in college (Percussion Performance)
Huge fan of Star Wars, saw all six movies in the theater 3
4. Web Templates – What are they and why should we use
them for provisioning SharePoint sites?
PowerShell – Automating site deployment during
development phase using PowerShell scripts
Key Benefits of this pattern for SharePoint
team-based development
4
8. Provision one
Create custom site
SharePoint web Enable SharePoint
columns and content
application and site Publishing features
types
collection
Provision list instances Apply custom Provision custom
based off of custom branding, including publishing pages
lists custom page layouts from page layouts
Set default (welcome)
Deploy a few custom
page and navigation
.NET component
options for each web
(web parts, etc.)
in the site collection
8
14. Site Definitions Traditional WebTemp*.xml + onet.xml Changes to existing
combination, contains one or more site site definitions not
definition configurations supported by MS
Stored on file system of SharePoint Can only be deployed
server(s) in folder: using farm solutions,
%ProgramFiles%Common FilesMicrosoft so not an option for
Sharedweb server deployment to
extensions14TEMPLATESiteTemplates SharePoint Online
Site Templates* Created in the SharePoint UI by using an “Save site as template”
existing site as a model method not supported
by MS when publishing
“Save as site template” saves .wsp file to features are enabled
Solution Gallery of site collection (stored in
the content database)
Site Types: WebT atesand Site Definitions
empl
14
15. Feature Stapling Used to extend and customize Can only extend existing
existing site definitions site definitions, cannot
create new site “types”
Portal Replace onet.xml file with code + WebTemp*.xml files must
Provisioning WebTemp*.xml files be deployed to file system,
Providers so not an option for
deployment to SharePoint
Online
Custom code Typically used for automated site Can be used but is a non-
provisioning from existing site standard method
definitions or site templates
Web Templates New feature element available in SharePoint 2010
15
50. Richard Calderon, Catapult Systems
Email: richard.calderon@catapultsystems.com
Twitter: @rcatx
LinkedIn: www.linkedin.com/in/rcatx
50
Editor's Notes
Star Wars: Machete Order makes a lot of sense to me. Haven’t made time to try it yet, though. http://www.nomachetejuggling.com/2011/11/11/the-star-wars-saga-suggested-viewing-order/
I have been asked before how this session relates to Continuous Integration for SharePoint (for more on that topic, you can refer to blogs from Chris O’Brien (MVP), Mike Morton (MS), and Kirk Evans (MS)).http://blogs.msdn.com/b/sharepointdev/archive/2011/08/04/continuous-integration-for-sharepoint-2010-mike-morton.aspxhttp://www.sharepointnutsandbolts.com/2011/06/sp2010-continuous-integrationpt-1.htmlMost if not all of the methods discussed today can be used in a SharePoint CI process.
The first two bullets apply to any kind of site “template” (site definition, site template, etc.) but the last point, regarding maintenance and upgrades, is the most compelling reason to switch to using web templates.
Many thanks to Wes Hackett and the rest of the CKS Dev team for all the great work on the CKS and esp. for adding the WebTemplate SPI!
Add screen shots to this slide
Add screen shots to this slide
Other thoughts:Is it supportable after initial production deployment?Does the customer or customersupport team have the skills to maintain?