Practices

AstroGrid components must be buildable and executable on Windows and GNU/Linux platforms. Eclipse is the recommended IDE. All code in CVS must be buildable by Maven. It is strongly recommended that developers install a copy of Maven and build using it regularly.

Building AstroGrid with Maven

AstroGrid components can to be built using Maven via a number of custom goals. These may be executed from the command line by typing

maven {goal}

while in the project's root directory.

For example, to build the "common" library,

  1. checkout astrogrid/common into (for example) working/common
  2. checkout astrogrid/maven-base into working/maven-base
  3. cd to working/common
  4. execute maven astrogrid-install-snapshot

Maven will build the appropriate jars and wars and place them in your local repository (typically under ~user/.maven/repository).

The AstroGrid Custom Goals

All AstroGrid components should implement the following goals. A simple example of how to do this may be found here.

Build artifacts

astrogrid-build-artifact: compile code and assemble jar files

astrogrid-install-artifact: as above but install the artifacts in your local repository (useful if you're working offline using Maven's -o switch)

astrogrid-deploy-artifact as above but install the artifacts in the astrogrid repository on Uluru for other components to use

astrogrid-install-snapshot: as astrogrid-install-artifact but create snapshots version

astrogrid-deploy-snapshot: as astrogrid-deploy-artifact but create snapshot version

Documentation

astrogrid-build-site: generate documentation site

astrogrid-deploy-site: generate documentation site and publish it on our webserver

Cleanup

astrogrid-clean: delete all local build products