[Kolab-devel] Kolab 3.2 Migration

Jeroen van Meeuwen (Kolab Systems) vanmeeuwen at kolabsys.com
Mon Aug 4 02:05:35 CEST 2014


On 2014-08-01 10:11, Daniel Morlock wrote:
> Hi,
> 
> we almost finished the Gentoo packages for Kolab 3.2. Now we're
> challenging the migration path from Kolab 3.1 to Kolab 3.2. To 
> determine
> the database changes between those versions, we could setup a fresh
> Kolab 3.1 and a fresh Kolab 3.2, run the "setup-kolab" script and
> compare the differences. Since this is a really hard way to go, we are
> wondering whether there is an easier way to get the changes?
> 
> How to you migrate enterprise updates? You do offer an migration path,
> do you?
> 
> Also the "setup-kolab" tool is one-way only and - as far as I know - it
> only supports a fresh installation but no updates. Are there any
> attempts to add update routines?
> 

The "setup-kolab" routine is indeed a one-shot, one-kill delivery 
mechanism with the *sole* purpose of initially setting up a Kolab 
server.

As for the enterprise -- this works so much differently, you can't 
really compare it. For one, upgrades are different from updates over 
there.

That said, we support updates of course, prohibit requiring manual 
intervention, refactoring bug fixes and enhancements to not require 
database schema upgrades, etc. Like I said, it's completely different 
;-)

Database schema upgrades to those components that indeed do need 
database schema upgrades every once in a while are triggered by their 
respective packages, in a post installation routine:

   Line 300-303 at 
https://obs.kolabsys.com/package/view_file/Kolab:Development/roundcubemail/roundcubemail.spec?expand=1:

>   /usr/share/roundcubemail/bin/updatedb.sh \
>     --dir /usr/share/doc/roundcubemail-%{version}/SQL/ \
>     --package core || : \
>     >/dev/null 2>&1

and:

   Line 188-206 at 
https://obs.kolabsys.com/package/view_file/Kolab:Development/roundcubemail-plugins-kolab/roundcubemail-plugins-kolab.spec?expand=1

>   for plugin in calendar kolab_activesync kolab_addressbook \
>           kolab_auth kolab_config kolab_delegation kolab_files \
>           kolab_folders kolab_notes libkolab libcalendaring odfviewer \
>           owncloud piwik_analytics tasklist; do
> 
>       for dir in `find /usr/share/roundcubemail/plugins/${plugin}/ 
> -type d -name "SQL"`; do
>           # Skip plugins with multiple drivers and no kolab driver
>           if [ ! -z "$(echo $dir | grep driver)" ]; then
>               if [ -z "$(echo $dir | grep kolab)" ]; then
>                   continue
>               fi
>           fi
> 
>           /usr/share/roundcubemail/bin/updatedb.sh \
>               --dir $dir \
>               --package ${plugin} \
>               >/dev/null 2>&1 || :
>       done
>   done
> 

Kind regards,

Jeroen van Meeuwen

-- 
Systems Architect, Kolab Systems AG

e: vanmeeuwen at kolabsys.com
m: +44 74 2516 3817
w: http://www.kolabsys.com

pgp: 9342 BF08


More information about the devel mailing list