Model Change Workflow » History » Revision 9
Revision 7 (Andreas Müller, 08/30/2013 04:40 PM) → Revision 9/17 (Andreas Müller, 03/07/2019 02:48 PM)
# WORKFLOW for Changing CDM Model * Create branch in cdmlib called cdm-x.x where x.x is the model version * Adapt version number and create SchemaUpdater (should be simplified) * create new package in cdmlib-persistence/eu.etaxonomy.cdm.database.update for the new version * create new SchemaUpdater in this package (compare with older SchemaUpdaters) * link method getPreviousUpdater to last used SchemaUpdater, accordingly link last used SchemaUpdater with the new SchemaUpdater * in CdmUpdater set getCurrenSchemaUpdater to new SchemaUpdater * in new SchemaUpdater set startSchemaVersion with current value in CdmMetaData.dbSchemaVersion * in new SchemaUpdater set endSchemaVersion with new value, adapt CdmMetaData.dbSchemaVersion with exact same value (should represent the expected release date) * Run all tests in current trunk * Create branch for new model * Run all test in new branch * Change model * Check for * hibernate annotations * JAXB annotations (on attribute and class level) * clone methods * other methods * write tests (for all layers) * write database update (persistence layer), also test that hibernate_sequences is up-to-date after updates * adapt testing data (xsd, xml, etc.) * run tests for all layers * test brach with applications (Taxonomic Editor, Data Portals) on local databases, including update script * test branch with applications (Taxonomic Editor, Data Portals) on developer server, including update script * integrate into trunk * test trunk with local database and developer server * create new milestone, move all open tickets to new milestone, close old milestone * roll-out Taxonomic Editor and CDM Server at the same time * update uml model * update project pages (java doc) * document on "What has changed" sites