Forums / Developer / Version control for database changes

Version control for database changes

Author Message

Magnus Hellman

Wednesday 17 August 2011 4:22:08 am

This is for all you version control users out there and how you go about handling your database changes when developing. I'm not sure what do to.

This is my scenario:

I have jumped into a project to implement forum functionality. I make a branch and start develop. I add a few classes, permissions and roles that affects the database. When I'm finished I could make packages for the classes in the admin siteaccess and add them to the versioning system. (It would be handy to install them via the CLI.)

As for the roles and permissions Jérôme suggest in his article Using Subversion with eZ Publish that one could make SQL dumps of the ezrole and ezpolicy_xx tables. For another developer to be able to merge with this, it would mean he/she needs to dump his/her local version of those tables as well, am I right? If so, how likely is this to cause a severe merging conflict?

Overall, would this be a good strategy? How are you guys dealing with this?

Your thoughts are much appreciated!

Gaetano Giunta

Friday 19 August 2011 3:57:31 am

I'm afraid there is no silver bullet at the moment for versioning roles and policies in eZ...

While you wait for the packaging system to catch up you might find useful extensions such as ggsysinfo (shows "report"pages with complete lists of roles and policies and class definitions) or xmlinstaller (can import roles and policies from xml files)

Principal Consultant International Business
Member of the Community Project Board

Magnus Hellman

Friday 19 August 2011 7:48:24 am

Thanks Gaetano, I will take a closer look at them. Anything that can reduce mouse clicks in the admin siteaccess and help automate this process is really helpful.