Does anybody have experience automating deployments with Kentico? E.g. the difficulty of synchronizing document types, bizforms etc to another server?
4 Answers
I've used the built in content staging module to do this sort of thing. Unfortunately it's not all Unicorns and Rainbows. There were definitely some bugs in the module which essentially serializes the data from one server, and deserializes on the target server.
That was back in version 5.5 or 5.5R2 though, and they released version 6 a few months ago. I would take some time and look at the documentation for it's limitations, and then maybe give it a test before committing to it. It can definitely work for some, but it may not be Content Editor friendly.

- 20,062
- 35
- 120
- 170
-
They are planning on adding more staging/deployment/workflow levels for v7. See http://kentico.uservoice.com/forums/33825-staging/suggestions/616133-implement-staging-profiles and http://kentico.uservoice.com/forums/33855-workflow/suggestions/388613-versioning-workflow-options-for-design-view-chan – Jon Adams Jan 06 '12 at 16:32
-
For the most part Content Staging works well. I have used it in multiple sites. And in version 6 you can now do Bi-Directional Content Staging http://devnet.kentico.com/docs/6_0/devguide/index.html?bidirectional_staging.htm – Mcbeev Jan 07 '12 at 02:56
-
@Mcbeev Technically, you could do bi-directional content staging in 5.5R2 (possibly earlier), but I never used it, personally. Also, one thing we were able to do was temporarily reverse the sync direction because the customer had accidentally created a significant amount of content on the production server. This worked, but we were careful and took backups to make sure we had an undo option. – John B Jan 09 '12 at 17:59
Another possibility would be to utilize a tool that does database comparisons and syncing. I've used the SQL Examiner Suite before, but I've heard that Red Gate makes good tools too.
While this probably isn't the best method, it can work. If you're not making significant changes on a regular basis this can be good for one off syncs between your local/dev server and production. This probably wouldn't be a good solution for "content staging", but more for changes that occurred due to development oriented tasks.

- 20,062
- 35
- 120
- 170
With Kentico 10 you could use the Continuous Integration Feature. It is now working much better than in Kentico 9. With the Continuous Integration Feature Database objects could be deployed together with the code files and are serialized automatically into the target database.
If you do not want to use this module, you need to use the Object Export Feature in Kentico (Site => Export site or objects).
In both scenarios you have to know, that content (Pages) are difficult to stage between different servers. Content staging is only usefull if you have a "real" staging server, where contend editors prepare the contet that should be staged to the live server on time. In case you want to stage from a DEV server to the LIVE server, the pages will be overwritten by the dev version, if the GUID of the page is matching. If you use Continuous Integration, all pages which are not in the DEV server instance will be deleted!
All other objects (Develop objects like Templates, Web Parts, Page Types, etc.) could be imported without any issues.

- 372
- 2
- 7
Another option is to use the Export/Import feature in Kentico: http://devnet.kentico.com/docs/6_0/devguide/index.html?export_and_import_overview.htm.
I haven't automated this process, but you can have a look at the ExportManager class in Kentico's API Reference: http://devnet.kentico.com/Documentation.aspx.
Hope this helps

- 845
- 8
- 18