Skip to end of metadata
Go to start of metadata

This document outlines the import and export facility in Continuum that would allow the movement data and configuration information from one instance of Continuum to another. This facility would most likely be used when upgrading between versions of Continuum.

Trygve's Idea

The converter is a single Java application. It has these arguments:

  • Source JDBC URL
  • Source Continuum version
  • Destination JDBC URL
  • Destination Continuum version?

One way to implement this is like this: When we do a release (of version X) we copy all the model objects and the generated reader and writer into package o.a.m.c.upgrader.X. It would probably be necessary to add the version to all classes. This will leave us with a version of the object model for each version that we have released.

When upgrading a version we could then simply take each "root" object (like the ContinnuumProject) and start walking the graph copying all objects into the new version objects.

It might be useful to collect some thoughs on this so we could try to generate something that does at least parts of this for us.

+1 (evenisse)
For each version we create a converter for the previous version. If a user want to upgrade his old version (not the previous), the converter app will run all converters between the user version and the current version, so we don't have toi write a converter between the current version and all old version.

NOTE: Technically I'm suggesting to use JDO, configured with the arguments given on the command line. Most likely using the the ContinuumJPoxStore for doing the input and output, (not the ContinuumStore).

Emmanuel's Idea

The conversion can be done from the web interface.

  • user choose the location of the new continuum release
  • continuum download it
  • we know the version that actually run and the new downloaded version. This version contains a converter for the previous versions
  • run automatically the conversion for create a temporay database
  • stop continuum
  • upgrade all files of user continuum instance
  • restart continuum
  • user have now the new version with his own configuration
Labels
  • None