Content deployment/publishing with C1

Topics: General
Jan 24, 2011 at 2:57 PM


Does C1 includes content publishing capabilities? I would like to propose it to one of my enterprise customers, which requires multi-environment deployment.

What I need is to be able to develop and create the content in development environment, then publish it to staging/test environment for testing, and then to publish it to multiple geo load-balanced servers around the world. Is this scenario possible with C1?


Jan 24, 2011 at 7:33 PM
Edited Jan 24, 2011 at 7:35 PM

No, it doesn't support it out of the box...

You can setup some auto synchronizing on database or file (xml) level. Using the xml store you should set up a trigger on ~/App_Data/Composite/DataStores/*.xml to sync to a prod server, and trigger a data-flush so the site reloads the data.

Media files should be synced/pushed from ~/App_Data/Media/*

Jan 25, 2011 at 6:21 PM

Maybe even some automation of packaging and installation of packages is possible, that way you could be agnostic of locations and datastore implementation. Ie. push from a local C1 that uses XML to a prod server that uses SQL Database. Marcus, what do you think?

Jan 25, 2011 at 9:47 PM

My personal wet dream is to have a 'recorder' that keeps track of changes done to an installation and is then capable of packaging those changes and push them to another server when desired. The fact that C1 is data store agnostic and aware of schema changes make this a lot easier. For starters we will probably look into making the C1 Package system able to update existing elements (right now it can 'create' ) and once that is running some 'auto build packages based on recorded activity' shouldn't be far away.

The package system that is will already move schema/data from an XML to a SQL site (or the other way around) without problems.

Jan 25, 2011 at 9:56 PM

Even just being able to update items with Packager, i would say naively you don't need a whole recorder but just being able to package all items that has changed after a certain date would be fine. Yes, the package would maybe be bigger than necessary containing metadata and stuff that didn't necessarily change, but it would make the logic SO MUCH simpler.

So for the time being you you would have to manually copy xml-files or do some syncing of databases. Could be based on some "Push changes" event that will trigger the publish/staging or it could happen automatically.