From templates to remote provisioning (with self-service site creation enabled)
-
10-12-2019 - |
Question
How to allow users to apply branding to new site collection (when self-service site creation is enabled) without having any code, solutions or features running server-side?
The requested functionality has traditionally been done via farm scoped solution packages and web templates, but now the probability of moving to O365 is likely to increase long-term costs of server-side functionality - and thus I am wondering about moving logic away from SharePoint.
What would be the best way to create a "template-style" functionality without deploying any code or declarative solutions server-side when self-service site creation is enabled?
Some possibilities might be
- Using PowerShell to add a link globally to the suitebar of all site collections for applying branding from an external solution (MVC via CSOM for example)
- Moving whole site collection creation to an external solution (technically, the external application could create site collections on-premises using the admin web services, and in O365 via CSOM and Tenant)
- Creating a simple slightly customized template on-premises which applies simple branding and puts most logic (and long-term maintenance) to an external solution. However, this would naturally not currently be compatible with O365
Would it be possible to put above-mentioned approaches in order of preference (or shoot them down)? What other alternatives would work and why?
Related question: Easy and maintainable way to create templates for sites?
Solution
We have only discussed this internally but not created an actual solution yet. Here are some of the thoughts I have on the subject:
I would probably opt for a pattern with a provider hosted app that create the site collection using the correct master page etc. This means that you could host on your own IIS on-premises, and when you move it to the cloud you could move the app to Azure.
There are several examples with similar issues:
Site provisioning patterns in CAM scenarios: http://blogs.msdn.com/b/vesku/archive/2013/09/09/sharepoint-2013-site-provisioning-techniques-presentation-video-recording.aspx
Provider hosted app to customize My Site http://blogs.msdn.com/b/vesku/archive/2013/11/25/office365-apply-automatically-custom-branding-to-personal-site-skydrive-pro.aspx
Vesa also has a lot of recent articles about FTC > CAM scenarios.