Jibe - Installation

Introduction
Unpacking
JBoss/Tomcat
CVS
Database Support
Next Steps

Introduction 

Jibe integrates version control, unit testing, component testing and continuous integration. In order to start using jibe, you need access to a cvs repository. This can be repository on sourceforge or a local repository in your company.
You will also need a servlet runner and if you plan to use J2EE components in your product(s) you will also need an application server. This installation guide will show you how to install JBoss with Tomcat.

The philosofy behind jibe is that everything is checked into the cvs tree. So not only your modules, components, web-applications and applications are in the cvs tree, but also the build system itself, along with ant, JBoss/Tomcat and the lib directory. Big advantage of this approach is that all developers always work with the latest (compatible) libraries. A disadvantage is that your cvs repository will become fairly large, but in general this is not a big problem for a company. In the next sections we'll walk through installing jibe and the various external parts.

Installing Jibe - Unpacking the distribution 

If you unpack the jibe distribution, you will see the following directory structure appear:

 -+ant
 -+build
 -+lib

These directories will form the root of your new cvs tree, together with JBoss/Tomcat which you will need to install and configure. It is wise to check these directories in to your cvs tree.

Installing Jibe - JBoss/Tomcat 

As said before, you will need a servlet runner and an application server if you want to do some serious development. We use the combined JBoss/Tomcat distribution that can be downloaded from JBoss.org. We currently work with JBoss-2.4.3-Tomcat-3.2.3 so all the configuration examples will be for this combination. We experienced some problems with JBoss-2.4.4 and databases sothat is the reason we don't have that version. Tomcat-4.0.0 should be easy to integrate.

Download the JBoss-2.4.3-Tomcat-3.2.3 distribution and unpack in the same directory where you have unpacked the JIBE distribution. In order to configure Tomcat to work with JIBE, you will need to add two contexts to the server.xml file in the tomcat/conf directory in the distribution:

	<Context path="/build"
			 docBase="../../build/etc"
			 crossContext="false"
			 debug="0"
			 reloadable="true" >
	 </Context>

	 <Context path="/cruisecontrol"
			 docBase="../../build/etc/cruisecontrol"
			 crossContext="false"
			 debug="0"
			 reloadable="true" >
	</Context>
	        
As you can see, we use relative paths that point to the build directory from the JIBE distribution.

When you are finished with this, check in the whole distribution to the cvs repository.

@todo: explain about the properties

Installing Jibe - CVS 

What we have now is nothing more than a bunch of predefined ant scripts that make your life as a single developer easier. That is nice, but we want more out of our Jibe. The first thing you probably want to do is add cvs to the equation. You can either install a local version of cvs, or use the cvs of (for instance) SourceForge. For installing your own version of cvs please visit their website. When installation is complete and you have created your own repository, we can move on to the next step.

Once you've got a cvs repository up and running the first thing to do is to check in the Jibe related directories into the cvs. This way, your fellow programmers can checkout a ready to use build environment.

@todo: explain about configuration properties

Installing Jibe - Database Support 

Real world applications more often than not have database support. JIBE offers integrated database support that automaticaly creates the database tables for a component/application in order to run tests against it. We currently run a MySQL setup in our standard JIBE environment, so we will explain how integrate MySQL into the JIBE environment.

@todo: explain about etc/db directory
@todo: explain about configuration properties
@todo: explain about jboss configuration

Next Steps 

Now you should have everything set up to start developing within the JIBE. Please refer to the Running JIBE section to see how to move on from here