Gump
workspace
This represents the combination of projects (either referenced directly or indirectly, via profiles) that are to be built together. By default, workspaces are named after the hostname of the computer which you are building on.
Attribute | Description | Required? |
---|---|---|
basedir | Fully qualified directory into which all projects will be extracted built. | No |
name | Name of this workspace. | Required by Python Gump |
pkgdir | Default directory in which to find projects which are installed as packages instead of being built. Examples being various jars which can be downloaded from Sun's web site. | No |
cvsdir | Workarea for cvs extracts. The generated update script will do the cvs checkouts or updates into this directory. The generated build script will copy the results into the basedir prior to building. | No. Defaults to ${basedir}/cvs |
logdir | Directory into which the generated html logs are placed. | No. Defaults to ${basedir}/log |
jardir | Directory into which the generated jars are copied. This May be useful for a number of reasons. First, the results themselves may be something worth publishing. Second, it allows an greater range of development - e.g., build clean won't affect the availability of jars. Finally, it may allow you to get further without hitting command line length restrictions. | No. If this option is not specified, the jars aren't copied. |
version | Which version of the Gump dtd this workspace was defined against. The current version is "0.4". | Yes |
sync | The name of the command, along with any desired parameters, used to synchronize the build directory with the cvs directory. This can make a considerable performance advantage over the default action which is to recursively remove the directory and copy the entire directory tree. Recommended value for this parameter is "rsync -r -a --delete". Note: Not used ny Python Gump, which builds this in. | No |
bootclass | If this value is set to "yes", it will enable placing jars on the bootclasspath. Default is "no". Consider this function experimental at this time. See the description for project for details. | No |
makeCommand | The make executable to use. | No, defaults to make. |
mvnRepoProxyPort | TCP port to bind the mvn repository proxy to. | No, defaults to 8192. |
property
Global properties which are to be applied to every Ant execution. Commonly used to specify the "build.sysclasspath" property which tells Ant how to deal with classpaths specified inside the build.xml files
Attribute | Description | Required? |
---|---|---|
name | Name of the property to set. | Yes |
value | Desired value | Yes |
sysproperty
Global properties which are to be applied to every Ant execution. Unlike property this will be translated into a Java system property that is passed to the Java VM instead of the application. Commonly used to specify the "java.awt.headless" property which tells the Java VM to run in "headless mode" so that it doesn't require an X-server on Unix or a logged in user on MacOS X.
Attribute | Description | Required? |
---|---|---|
name | Name of the property to set. | Yes |
value | Desired value | Yes |
profile
Collections of projects and repositories. While a complete profile can be defined here, typically one is referenced via href. For a complete description, see the documentation for profile.
Attribute | Description | Required? |
---|---|---|
href | URI of the file containing the profile definition | Yes |
module
An individual module to be included. While a complete module can be defined here, typically one is referenced via href. For a complete description, see the documentation for module.
Attribute | Description | Required? |
---|---|---|
href | URI of the file containing the module definition | Yes |
project
An individual project to be included. While a complete project can be defined here, typically one is referenced via href. For a complete description, see the documentation for project.
Attribute | Description | Required? |
---|---|---|
name | Name of the project to be modified | Yes |
home | Convenient way to specify an override for a root/home element. | No |
repository
An repository from which one or more modules may be obtained While a complete repository can be defined here, typically one is referenced via href. For a complete description, see the documentation for repository.
Attribute | Description | Required? |
---|---|---|
href | URI of the file containing the repository definition | Yes |
method | Convenient way to specify an override for a root/method element | No |
user | Convenient way to specify an override for a root/user element | No |
path | Convenient way to specify an override for a root/path element | No |
javadoc
Enables publishing of a summary page linking all of the javadocs produced in the process. This will be placed in the workspace log directory with the name "javadoc.html".
Attribute | Description | Required? |
---|---|---|
url | The prefix to be used for hrefs on the javadoc.html page. This can be used to point directly into the build directory or used in conjunction with the dir attribute described below. If this attribute is not specified, file:/// urls will be generated - this is generally only suitable for viewing on the local machine. | No |
dir | This attribute tells where the physical directory associated with the url can be found. Note: the script which copies the javadocs to this directory is named pubdoc.pl and is placed in the work subdirectory of gump. Normally, it would be executed immediately after a "build all" | No |
junitreport
Enables publishing of a summary page linking all of the junit reports produced in the process. This will be placed in the workspace log directory with the name "junitreport.html".
Attribute | Description | Required? |
---|---|---|
url | The prefix to be used for hrefs on the junitreport.html page. This can be used to point directly into the build directory or used in conjunction with the dir attribute described below. If this attribute is not specified, file:/// urls will be generated - this is generally only suitable for viewing on the local machine. | No |
dir | This attribute tells where the physical directory associated with the url can be found. Note: the script which copies the reports to this directory is named pubreport.pl and is placed in the work subdirectory of gump. You can generate this script using 'ant pubreport'. Normally, it would be executed immediately after a "build all" | No |
nag
Gump will send email reports of first time build successes/failures to a list of recipients. Note: reminder failure reports will be sent on --oficial runs.
A nag element in the workspace can be used to override some values in project's nag elements, which are used to define which reports will be sent.
Attribute | Description | Required? |
---|---|---|
to | Overrides the to attributes of the nag elements in all projects. | No |
from | Overrides the from attributes of the nag elements in all projects. | No |
prefix | A prefix to put into the subject of all generated nag mails, defaults to "[GUMP]". | No |
database
Gump will utilize a MySQL database for storing statistics and run information. Without this element Gump will default to using a DBM database (not currently available on with Python on Microsoft ™ platforms) for statistics. Note: MySQL SQL scripts for creating the database tables are to be found in ./mysql.
Attribute | Description | Default | Required? |
---|---|---|---|
host | The hostname that the MySQL server resides upon | localhost | No |
user | The username Gump uses to log in with | root | No |
passwd | The passwd Gump uses to log in with | No | |
database | The database Gump uses | gump | No |
by Sam Ruby