10

I'm hoping someone can give me some tips. Is there a relatively easy/efficient way to keep content in sync across multiple environments (say live, staging, qa, dev). We're using Tridion 2011 SP1 and Content Porter 2009 SP2.

  • I know there's Content Porter. However I find Content Porter to be extremely time-stealing and cumbersome -- especially when there is a large delta between the content.
  • I also know that you may suggest that we don't NEED to port the content across environments. However, there are times for a full regression test, that this is handy.

Are there any other solutions or options available? What do you do in your environments?

7

Indeed it is not a usual scenario, here some options.

CM Side

  • If you don't care about loosing the data in a lower environment, you can just restore a full database backup from a higher environment.
  • You can rely on your database technology to synchronize data for instance SQL Server Integration Services. For this option you will need to get familiar with the Tridion CM database model which is not documented.

In general words I would recommend to keep using Content Porter or use the first option is possible.

CD Side

  • You can restore a full database backup from a higher environment. Additionally you will need to synchronize the file system if you have things published to the file system including configuration files.
  • You can republish everything once the CM side has been synchronized.
| improve this answer | |
4

The usual scenario (with a DTAP - Dev, Test, Acceptance, Production, or similar set up) is to use Content Porter when moving towards P (Production) and database restores going the other way. Mostly you should be aiming to move things like Schemas, templates etc. with Content Porter. You can move content too, and this makes sense for things like layout images etc., but as you say, it can get cumbersome. Sometimes you'll find a situation where content needs to be ported from P to A at a smaller granularity than a database dump - can't be helped... suck up the pain!

Moving database dumps back up the street is immensely impractical until you start doing it. The first time is always a learning experience, but pretty soon you'll find you can automate most things. Obviously, you'll also be using content porter, but in this case to move stuff out of the environment you are going to clobber, with a view to replacing it afterwards. A few scripts to fix up publication targets etc. are handy, and you might find it useful to keep an admin for every environment in your trustees. If you put in the work to make this process lightweight, you can definitely do it every sprint if that makes sense.

| improve this answer | |
3

There are quite a lot of challenges implementing a "proper" solution to content synchronization across instances, and almost all of them are linked to dependency management in Tridion.

Back in my consulting days I had written a tool that would basically create the content porter export list by looking at a the results of a search (all content modified in the last X days), make sure the items and dependencies were exported from their blueprint "owner" publications, and then run Content Porter in automated mode.

This was not error free, but it kinda worked most of the time. I detail most of this solution in this other question. It certainly worked well for "run-of-the-mill" changes that did not include schema changes (I wouldn't want to do that automatically anyway).

| improve this answer | |
2

I understand your use case scenario of Regression Testing or may be the phase of User Acceptance testing which might require you to have your Dev environment in sync with the UAT environment so that you can really re-produce issues raised during UAT.

We had used below process in our environment - quite a few time back in SDL Tridion 2009 SP1 environment:

  • Used Content Porter and save its configurations for a full publication(s) containing content (components) which are in scope of testing
  • Automate the Content Porter Execution with this configuration file and scheduled it for a specific time

Of-course the above process is quite Business Context oriented and you may need to verify if it suits your business requirement; but if it does, then removes the cumbersomeness in use of Content Porter

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.