By Sitecore Coder to Sitecore Coders

Menu

Sitecore upgrade recommendations and best practices

If you are planning to upgrade your Sitecore to latest version, there are a few different ways of doing it. But be careful. Sitecore upgrades aren’t always straightforward.

Sitecore upgrade could introduce many problems if it’s done without planning. Here I will talk about recommendations and best practices to follow-up while doing upgrade

There are two upgrade approaches mentioned below–

Install of 8.X and migration of content

Incremental upgrades as per Sitecore’s documentation

Lets talk about each approach in detail

Install of 8.X and migration of content

o In this approach we can move content (content items and media library) from old Sitecore installation to new fresh Sitecore installation via Sitecore packages. It’s a quick upgrade approach for small websites but it’s not the recommended approach.

o Pros

Quick upgrade process for small websites

o Cons

Not supported by Sitecore

Migrating content to a new solution can be a bit risky since the moved items are not updated and new versions of the UpdateInstallationWizard performs some post installation steps which fixes some field values on standard fields

Migrating Sitecore users to new solution reset their password. Admin has to resent password to all the users

Migrating content to new solution does not work well for larger projects, it’s become time consuming as compare with installing the upgrade packages

Incremental upgrade

If you are upgrading from 6.6 to 8.1, for example, this approach requires a series of intermediate steps of installing packages, updating configuration files and running update scripts on the databases

o Pros

Supported by Sitecore

No need to worry about package installation and user migration

Give opportunity to migrate analytics database

Opportunity to upgrade Sitecore modules like WFFM and ECM without losing data

o Cons

With this approach we have to run upgrade two time first during development and second before prod release with content freeze

QA will do smoke testing of website and record and error found. Common error after upgrading from version to 6 to 7 is

The major API change between 6 and 7 is Sitecore.Search. This can be a big task depending on project size and lucene usage

If there are some modules installed which are not supported by Sitecore then update their code to support new API

If there any customization in Sitecore using OLD API that may not work in new version

Bug fixing

Fix the issues raised by QA

Alpha Testing

QA will run one more round of testing and validate issues raised during internal testing

Beta Testing

Setup UAT environment so that client can validate website

Preparation for Prod release

This is content freeze and code freeze step. From the start of this step till prod release client’s content team is not allow to make any update on content tree

Take latest database backups from production server and restore it on local development machine

Run upgrade again from initial Sitecore version

To save some time and avoid any human error we can do below

Install the Sitecore recommended upgrade packages and run the sql scripts.

For config updates don’t do it again instead copy all the configs from back that was created during initial upgrade for specific Sitecore version. Manually updating config files consumes lots of time and increase chances of error because of human mistake.

Merge any code update to UAT (if client IT team is doing it)

i. Make sure client IT team is not doing any major code update using initial version Sitecore API