Migration from a Staging/Lab system to production


We are developing a solution based on CouchBase.
I want to be able to develop all my buckets, views, etc in a lab environment, and then migrate it to a production env (and continue to do so for additional changes, updates, etc).

Is there an easy way to “export/import” the “schema” part (buckets, views, reduce functions) from one system to another?


Hello uris200. I’m not sure of the specific development language you’re using but the general approach would be similar.

The bucket creation can be done via our REST interface. Although this would likely be done at deployment time it can be handled programmatically if needed.

To create the views I believe all our SDK’s support creating views programatically. I am most familiar with JAVA/Node and they both support this.

Here is a recent blog on doing this via Node by one of our Managers on our team.

A java sample is here in section 'loading views programatically’

In short, you would define and create your view structure in your DEV/QA/etc cluster using a maintenance program. This would then be validated through you’re testing that everything was created as expected. To migrate to production you would simply create you’re client object to point to production at deployment time.