Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to keep Sitecore database consistent?

We have 5 environments - Development, UAT, Staging, Live and DR.

Having more than 100 content editors, makes the Live Sitecore database content grow faster.

So almost every fortnight the content tree is out of sync with Development and UAT environment. When we try to develop new things, it is out dated content and sometimes new functionality breaks the live environment.

Please can anyone suggest an ideal way of keeping all the Sitecore databases in sync apart from creating packages and updating regularly so that we can follow a proper CI?

like image 308
Chandler23 Avatar asked Oct 17 '13 22:10

Chandler23


2 Answers

RAZL is not a solution that you should rely on for Continuous Integration, it's merely a database comparison tool.
Setting up proper CI for Sitecore is exactly what I'm doing for my current project and this is what we came up with:

TDS:
If you are willing to spend money, then take a look at TDS (Team Development for Sitecore).
It integrates with Visual Studio and provides you with tools for serialization of Sitecore items which you can then store in your source control.
A build server would then be able to pick up any changes in those serialized files and deploy them to your Test, Staging and even Production environment.

Alternative:
A free alternative to this is to use a combination of three open source modules:

  • Unicorn (for automatic serialization of your changes to Sitecore items)
  • Courier (for package generation based on serialized items)
  • Sitecore Ship (for automated deployment of Sitecore packages)

I'm working with the free alternative myself at the moment and it works great.

like image 175
Ruud van Falier Avatar answered Jan 03 '23 14:01

Ruud van Falier


Have you come across RAZL, it is a Sitecore Database Comparison Tool.

This is what they say about Razl:

Razl allows developers to have a complete side by side comparison between two Sitecore databases; highlighting features that are missing or not up to date. Razl allows you to find that one missing template, move it to the correct database.

like image 43
Shriroop Avatar answered Jan 03 '23 15:01

Shriroop