Version 7 (modified by 12 years ago) ( diff ) | ,
---|
How to Upgrade Roundcube
Roundcube is being maintained via git on stallman.mayfirst.org in the /srv directory.
We have both a /srv/roundcube-dev (accessible via https://roundcube.dev.mayfirst.org) and /srv/roundcube (https://roundcube.mayfirst.org).
Both installations are maintained via git. In addition, there is a roundcube-code user that owns the code. Be sure to add your monkeysphere user id to /home/roundcube-code/.monkeysphere/authorized_user_ids and run (as root): monkeysphere-authentication update-users roundcube-code
then login as the roundcube-code user when making all changes.
Please follow these directions when upgrading.
Basic Setup (only needed once)
- Create a roundcube directory on your local machine, initialize git and set your various remotes:
0 jamie@animal:mfpl$ mkdir roundcube 0 jamie@animal:mfpl$ cd roundcube/ 0 jamie@animal:roundcube$ git init Initialized empty Git repository in /home/jamie/projects/mfpl/roundcube/.git/ 0 jamie@animal:roundcube$ git remote add origin https://github.com/roundcube/roundcubemail 0 jamie@animal:roundcube$ git remote add gmo gitosis@git.mayfirst.org:mfpl/roundcube 0 jamie@animal:roundcube$ git remote update Fetching origin remote: Counting objects: 60301, done. remote: Compressing objects: 100% (15914/15914), done. remote: Total 60301 (delta 43892), reused 59892 (delta 43566) Receiving objects: 100% (60301/60301), 16.07 MiB | 1.71 MiB/s, done. Resolving deltas: 100% (43892/43892), done. From https://github.com/roundcube/roundcubemail * [new branch] dev-advanced-ldap-groups -> origin/dev-advanced-ldap-groups * [new branch] devel-ldap-refactoring -> origin/devel-ldap-refactoring * [new branch] keep-alive -> origin/keep-alive * [new branch] master -> origin/master * [new branch] release-0.6 -> origin/release-0.6 * [new branch] release-0.7 -> origin/release-0.7 * [new branch] release-0.8 -> origin/release-0.8 * [new branch] release-0.9 -> origin/release-0.9 * [new branch] schema_upgrades -> origin/schema_upgrades * [new branch] session_backport -> origin/session_backport * [new branch] topics/composer -> origin/topics/composer From https://github.com/roundcube/roundcubemail * [new tag] v0.1-beta2 -> v0.1-beta2 * [new tag] v0.7.3 -> v0.7.3 * [new tag] v0.8-rc -> v0.8-rc * [new tag] v0.8.0 -> v0.8.0 * [new tag] v0.8.1 -> v0.8.1 * [new tag] v0.8.2 -> v0.8.2 * [new tag] v0.8.3 -> v0.8.3 * [new tag] v0.8.4 -> v0.8.4 * [new tag] v0.8.5 -> v0.8.5 * [new tag] v0.9-beta -> v0.9-beta * [new tag] v0.9-rc -> v0.9-rc Fetching gmo remote: Counting objects: 4182, done. remote: Compressing objects: 100% (1135/1135), done. remote: Total 3429 (delta 2507), reused 3142 (delta 2287) Receiving objects: 100% (3429/3429), 972.47 KiB | 1.47 MiB/s, done. Resolving deltas: 100% (2507/2507), completed with 347 local objects. From git.mayfirst.org:mfpl/roundcube * [new branch] master -> mfpl/master * [new branch] mfpl -> mfpl/mfpl 0 jamie@animal:roundcube$
- Now, checkout (and create a branch) for the mfpl branch of the gmo remote.
0 jamie@animal:roundcube$ git checkout -b mfpl gmo/mfpl Branch mfpl set up to track remote branch mfpl from gmo. Switched to a new branch 'mfpl' 0 jamie@animal:roundcube$
Doing an upgrade
We're leaning toward rebasing as a matter of common practice, and leaving a trail of signed tags:
- start by rebasing, inspecting, verifying, signing a tag, and then pushing to
git.mayfirst.org
:git rebase 0.8.6 # examine the changelog and the git history; make sure things look sane. git tag -s -m 'Tagging roundcube with MF/PL changes version 0.8.6' roundcube-mfpl-0.8.6 git push gmo --tags
- Now, as
roundcube-code@stallman.mayfirst.org
, verify the tag and check it out if it looks reasonable:cd /srv/roundcube-dev git remote update git tag -v roundcube-mfpl-0.8.6 git checkout roundcube-mfpl-0.8.6
- Test via: https://roundcube.dev.mayfirst.org/
- If all works fine, pull into the live server via
roundcube-code@stallman.mayfirst.org
:cd /srv/roundcube git remote update git tag -v roundcube-mfpl-0.8.6 git checkout roundcube-mfpl-0.8.6
- and test it one last time at https://roundcube.mayfirst.org/