Hi Nicolas,

Very nice ideas. You made me think of a simple and beautiful solution based
on your mentioning of plugins:

For example, you create a plugin called UpgradeToOfbiz16 and
UpgradeToOfbiz17 etc ... and this plugin when installed using ./gradlew
installPlugin -PpluginName=UpgradeToOfbiz16 would take care of everything
:) so this would be things like:
- changes to the database. maybe we can even use something like liquibase
- copying / adding / deleting
- installing or uninstalling other plugins

So someone takes care of all the complexity and users just install another
plugin :) I don't know if this is sort of what you have in mind?

Taher Alkhateeb

On Friday, 29 July 2016, Nicolas Malin <nicolas.ma...@nereide.fr> wrote:

> Many times when I try to refactor some code, I discovered some entities
> that need to be refactored in order to homogenise or improve them with
> the new framework functionnalities.
>
> We have a page to describe how to do this migration for each modification
> https://cwiki.apache.org/confluence/display/OFBIZ/Revisions+Requiring+Data+Migration+-+upgrade+ofbiz
>
> I think that this is not easy for an end user nor useful with the OFBiz
> release workflow.
> Maybe we can improve it with this :
> * Organize this page by OFBiz release branch since we don't change the
> data model on stable (all the release) branch. When we announce the
> availability of a new release branch, we can fix the data model changes
> between this branch and the previous one
> * Create a state table to indicate some information between the OFBiz and
> the database, I think about the OFBiz release that exploit this database
> * Store each datamodel migration script into a specific directory for
> each component. Those scripts describe the migration through SQL scripts,
> dedicated services or any automated operations needed to achieve the
> migration. (and maybe we should use plugins for that)
> * Create a new build target to apply the upgraded datamodel
> ** check the database OFBiz release
> ** apply migration scripts for each component
> ** increase the database OFBiz release
>
> If we have a more efficient datamodel modification workflow, we can
> improve and homogenise our historical datamodel with serenity.
>
> WDYT ?
>
>
> --
> [image: logoNrd] <http://nereide.fr/>
> Nicolas Malin
> The apache way <http://theapacheway.com/> : *Openness* Technical
> decisions are made publicly
> informat...@nereide.fr
> <javascript:_e(%7B%7D,'cvml','informat...@nereide.fr');>
> 8 rue des Déportés 37000 TOURS, 02 47 50 30 54
> Apache OFBiz <http://ofbiz.apache.org/> |  The Apache Way
> <http://theapacheway.com/> |  ofbiz-fr <http://www.ofbiz-fr.org/> |  réseau
> LE <http://www.libre-entreprise.org/>
>

Reply via email to