Objective
Most organizations have strong governance over their O365 tenant and it is critical to their
operations and security. The Governance would take care of the site requests and approval,
Navigations, Branding or Theme (Layouts, colors, logos, icons and fonts), page contents and most
importantly the roles and responsibilities of the various users.
To ensure governance, organizations may have detailed site provisioning scripts that use Pattern
and Practice(PnP) provisioning engine that need to be applied each time a new site is created. That
includes defining security levels for documents, custom lists, document libraries, custom pages etc.
In Office 365, SharePoint Modern sites are created by various ways namely MS Teams, O365
groups, Planner etc. Continuous monitoring of the newly created sites through these apps and
applying governance manually or individually is a tedious job.
To help this scenario, Microsoft introduced Site designs and Site scripts to apply your governance/customization during the site creation event for Modern sites (Modern Team sites and
Communication sites). They can automate the custom configurations of modern sites across the
enterprise.
Overview of Office 365 and few applications
Microsoft Office 365 includes the Office suite and collaboration apps. To help this scenario, Office
365 supports Microsoft’s vision of cloud computing, specifically that of running a company’s
groupware suite of apps.
With Exchange Online, SharePoint Online, and Lync Online, users get all the benefits of accessing
their email, calendar, company resources, and communication tools without the need of an
extensive infrastructure or a big IT department.
O365 subscription includes many applications. Let me brief the ones relating to SharePoint tenant
and Site designs.
SharePoint Online: SharePoint Online brings its world-class collaboration and information-sharing
platform to the cloud. Organizations using older versions of SharePoint on-premises can migrate
their content and take advantage of all the new features. One thing to note if you are planning to
migrate your old SharePoint solution to SharePoint Online is that custom on-premise solutions may
not work or be supported. This can add significant cost to your migrations. White Paper
Customizing SP Modern sites using Site Design & Site Scripts
Microsoft Teams: Members of the modern enterprise workforce are very familiar and comfortable
with chat applications. To satisfy the needs of those employees, Office 365 now includes Microsoft
Teams, a chat-based workspace that integrates people, content, and tools into a single platform.
Microsoft Flow: Microsoft Flow is a service that helps you create automated workflows between
your favorite apps and services to synchronize files, get notifications, collect data and more. It is
very similar to SharePoint Designer Workflows but connects many applications and will easily
replace SPD workflows going forward.
Site Design & Site Scripts
Site Designs are templates that can be used each time a new site is created to apply a consistent set
of actions. Site Designs are created and registered to one of the modern site templates i.e Modern
Team site or the Communication site and Site scripts help to apply your own customization during
the site creation event for Modern sites (Modern Team sites and Communication sites).
Site Design & Site Script is capable of,
Branding sites: Apply company theme or custom home page at the time of creation.
Custom scripting: Site designs invoke associated site scripts to automate consistent site creation.
Custom solutions: Trigger MS Flow to execute PowerShell scripts and apply custom configurations.
White Paper Customizing SP Modern sites using Site Design & Site Scripts
Flow of Site Design & Site Scripts
When a custom site design is selected in “Create a site” window, SharePoint creates the new site,
and runs site scripts for the site design. The site script contains the actions such as creating new lists
or applying a theme. These script actions are run in the background. The progress bar will be
displayed, which the user can click to view the status of the actions being applied.
Anatomy of the Site Script
Site scripts are JSON files that specify an ordered list of actions to run when creating the new site.
The following example here is a script that has two top-level actions. First, it applies a theme that
was previously created named Custom theme. It then creates a Customer Tracking list. White Paper
Customizing SP Modern sites using Site Design & Site Scripts
JSON {
"$schema": "schema.json",
"actions": [
{
"verb": "applyTheme",
"themeName": "Custom theme"
},
{
"verb": "createSPList",
"listName": "Customer Tracking",
"templateType": 100,
"subactions": [
{
"verb": "SetDescription",
"description": "List of Customers and Orders"
},
{
"verb": "addSPField",
"fieldType": "Text",
"displayName":"Customer Name",
"isRequired": false,
"addToDefaultView": true
},
{
"verb": "addSPField",
"fieldType": "Number",
"displayName": "Requisition Total",
"addToDefaultView": true,
"isRequired": true
},
{
"verb": "addSPField",
"fieldType": "User",
"displayName": "Contact",
"addToDefaultView": true,
"isRequired": true
},
{
"verb": "addSPField",
"fieldType": "Note",
"displayName": "Meeting Notes",
"isRequired": false
}
]
}
],
"version": 1
}}
Comments