Building Zimbra using Git: Difference between revisions
Line 48: | Line 48: | ||
==Building Zimbra Collaboration Suite: "IronMaiden"== | ==Building Zimbra Collaboration Suite: "IronMaiden"== | ||
IronMaiden is the 8.0 series release. Current version & changelist can be found on [http://pm.zimbra.com/pm_release.php?rel=8.0 Pmweb] | IronMaiden is the 8.0 series release. Current version & changelist can be found on [http://pm.zimbra.com/pm_release.php?rel=8.0 Pmweb] | ||
The primary | The primary git respository for IRONMAIDEN development is: '''ironmaiden-foss''' | ||
The current release branch is '''ironmaiden-806-foss''' | |||
To obtain the source: | |||
* git clone git@git.zimbra.com:REPOSITORY Example: | |||
** git clone git@git.zimbra.com:ironmaiden-foss | |||
==Building Zimbra Collaboration Suite: "Helix"== | ==Building Zimbra Collaboration Suite: "Helix"== |
Revision as of 21:40, 29 January 2014
General Information
The git fusion server gives users access to download and build/modify Zimbra source code for Open Source products. Building Zimbra Collaboration Suite from Zimbra's git fusion server requires advanced knowledge of troubleshooting. It is not available for Network Edition components. Changes cannot be committed to the git fusion server.
By building Zimbra, you agree to Zimbra's licensing terms. Building from source is not covered under the ZEUL, unlike pre-compiled binaries, but rather the ZPL or YPL.
Technical support for source building can be found in the Zimbra Developers forum.
By default, you will only be able to build "out of the box" with supported operating systems (see list on site or files in ZimbraBuild/defs). However, you may be able to modify the source to get Zimbra to build on your OS of choice.
Initial Setup
At it's simplest, to obtain the source you need to essentially:
- Install git
- yum install git (RHEL, SLES, etc)
- aptitude install git (Ubuntu, etc)
- Obtain the git ssh access keys
- mkdir -p /tmp/zimbra-git
- cd /tmp/zimbra-git
- wget http://files2.zimbra.com/downloads/git-fusion/zimbra-git-ssh.tgz
- tar xfz zimbra-git-ssh.tgz
- Either create a user named "public" or add the access keys to your own user account:
- If using a public user:
- create ~public/.ssh
- cp /tmp/zimbra-git/id_rsa_git* .
- If using your own user:
- cp /tmp/zimbra-git/id_rsa_git* .
- If using a public user:
- Add the following ~/.ssh/config. Create the file if it doesn't exist:
Host git.zimbra.com User public Hostname git.zimbra.com IdentityFile ~/.ssh/id_rsa_git IdentitiesOnly yes
IMPORANT: Before attempting to build, please be sure to read the README for the branch release you're building.
--
New master script for (5.0.14+):
./home/public/p4/BRANCH/ZimbraBuild/buildZCS.sh -t
(This will help you through adding Ant & JDK, check dependencies, build ThridParty using a public CPAN mirror for Perl, then start the ZCS build process.)
IMPORTANT: NOT YET UPDATED FOR GIT
Building Zimbra Collaboration Suite: "IronMaiden"
IronMaiden is the 8.0 series release. Current version & changelist can be found on Pmweb The primary git respository for IRONMAIDEN development is: ironmaiden-foss The current release branch is ironmaiden-806-foss
To obtain the source:
- git clone git@git.zimbra.com:REPOSITORY Example:
- git clone git@git.zimbra.com:ironmaiden-foss
Building Zimbra Collaboration Suite: "Helix"
Helix is the 7.0, 7.1, and 7.2 series release. Current version & changelist can be found on Pmweb The primary branch that releases are cut off of is //depot/zcs/HELIX. The current release branch is //depot/zcs/HELIX-723
Building Zimbra Collaboration Suite: "Guns And Roses"
Guns and Roses is the 6.0 series release. Current version & changelist can be found on Pmweb
BRANCH names start with GNR. For example, the 6.0.2 release would be GNR-602. GNR by itself is the tip of code for that branch.
Building_GNR_on_FreeBSD_7.2_amd64
Building Zimbra Collaboration Suite: "FRANKLIN"
Franklin is the latest 5.0 series release. Current version & changelist can be found on Pmweb
Building FRANKLIN on RedHat Enterprise Linux 4
Feel free to create additional how-to articles.
Building Zimbra Collaboration Suite: "FRANK"
Frank is the latest 4.5 series release. Current version & changelist can be found on PMweb
Building Zimbra Desktop
Building Zimbra Desktop on Linux
Building Zimbra Desktop on Windows (win32)
Building Zimbra Desktop on Macintosh (OS 10.4.6+)
Buiding Zimbra Mobile Edition
ZME (J2ME) Client: Building ZimbraME
Building a Zimbra Development Environment
Setting up a Zimbra development environment
Under Construction:
Building Zimbra Dev Env README | Building Zimbra Dev Env on CentOS 5
Building "Nighties"
The 'main' branch, (often referred to as mainline) contains the latest code - if your interested in seeing pre-release software check it out.
It is constantly in flux (for instance we might stagger spec files to avoid the need to always rebuild ThirdParty), if your hitting a error in the Zimbra build side the first thing to do is re-sync, as we typically resolve these fast.
Under Construction:
Building nightlies README
Building Older Versions
Sometimes BRANCH-xxx is created (such as FRANKLIN-5013) giving you the ability to get just a particular prior version rather than the tip of FRANKLIN.
The source for older ZPL versions can be found at SourceForge.
Troubleshooting
Connection issues
Perforce server throwing client connection, reset errors, or generally appear hung?
Search the forums for any recent reports or create a new thread letting us know and we'll get right on it.
In the meantime you can occasionally find tars on sourceforge.net/projects/zimbracommunity.
Third Party Component Failures | Perl Components fail to build configure: error: User zimbra (and/or group zimbra) doesn't exist.