Building Bedework

Building and Deploying Bedework

The Bedework release is made of up a number of related parts which are built and deployed through the action of the bw (bw.bat on Windows) script found in the quickstart directory. 

  1. To run bw, first cd to the quickstart directory.

The bw commands that immediately follow deploy the bedework core:  the calendar server (including the caldav server) and the web clients.  You'll need to reinvoke the bw command with different arguments to build and deploy the timezone server, the carddav server, the addressbook client, etc.  Those commands are covered in the sections below. 

Invoking the bw script without arguments displays very useful usage information.

To insure you have the latest bug fixes, it is a good idea to update the Bedework source prior to building.  See Applying Fixes and Updates to Bedework.

Apart from the Bedework core, only the timezone server is critical to getting Bedework running.  You'll need to rebuild the timezone server after you change <tzid> in bwbuild/myconfig/cal.options.xml.

Assuming your configuration is bwbuild/myconfig in your home directory, run this command:

./bw -bwc myconfig clean.deploy

If you created a configuration area somewhere else in your filesystem, then

./bw -bwchome configdir -bwc myconfig deploy

To build with the jboss-mysql configurations shipped in the quickstart: 

./bw -quickstart -bwc jboss-mysql deploy

These commands build a number of EAR and WAR files in <quickstart>/bedwork/dist/, then deploy them to <quickstart>/jboss-5.1.0.GA/server/default/bwdeploy

If you build with "clean", the build will remove all the previously built files before building.

./bw -bwc myconfig clean.deploy  <-- builds with clean
./bw -bwc myconfig deploy  <-- builds without clean

Build and Deploy the Bedework Timezone Server

As with the above examples, unless your configuration files are under <home>/bwbuild, specify where the configuration files come from (-quickstart/-bwchome) and unless you are using the "default" configuration, specify the name of your configuration folder (-bwc).

./bw <config files args> -tzsvr
(e.g. ./bw -bwc myconfig -tzsvr ) 

This command builds bw-tzsvr.ear and deploys it to jboss-5.1.0.GA/server/default/bwdeploy.

Build and Deploy the Bedework CardDAV Server

Use -quickstart, -bwchome, -bwc as appropriate.

./bw <config files args> -carddav

This command builds bw-carddav.ear and deploys it to <qs>/jboss-5.1.0.GA/server/default/bwdeploy.

Deploy the Bedework Addressbook Client

Use -quickstart, -bwchome, -bwc as appropriate.

./bw <config files args> -carddav deploy-addrbook

This command copies the files in <qs>bedework-carddav/clients/javascript/bwAddrbookClient to <qs>/jboss-5.1.0.GA/server/default/deploy/ROOT.war.

Deploy the Bedework Synch Server

Use -quickstart, -bwchome, -bwc as appropriate.

./bw <config files args> -synch 

This command builds the bw-synch.ear and deploys it to <qs>/jboss-5.1.0.GA/server/default/bwdeploy.

Build and Deploy webcache/urlbuilder

See this section.

Hot Deploys

If you build and deploy Bedework while Bedework is running, JBoss <<should>> undeploy what was already running in favor of the newer packages.  Often it works as advertises.  Sometimes it doesn't.  Stopping Bedework, re-deploying, and starting Bedework is safer.   If you succeed in "hot deploying", you might want to schedule a restart for the next convenient time.   Even successful hot deploys are likely to result in a larger memory footprint.

Bedework Enterprise Calendar, version 3.9