Antmod has been developed from the ground up with everything being configurable. This means that directories, properties, log levels, and more is customizable to your personal or group's taste.
Antmod determines its configuration with the following priority:
${HOME}/.antmodrc file${antmod.checkoutdir}/antmod-conf directory${ANTMOD_HOME}/resources/conf/antmod.propertiesantmodrc: Generally you will always have this file for customizing Antmod to your personal taste. Override any of the parameters in this file.
antmod-conf: In the default SCM repository
you can create a module called "antmod-conf". Once it exists, every Antmod client
that has "antmod.conf.enabled=true" in their ".antmodrc" will checkout the trunk
of the "antmod-conf" module into the "${antmod.checkoutdir}/antmod-conf"
directory, and override any default configuration parameters with values in any of the
files in that module.
Example:
if you create a file called 'moduledirectories.properties' in the trunk of that module,
all properties in that file will be loaded everytime Antmod runs on any of the machines
where developers are using the same default repository.
antmod.properties: This is the set of all antmod configuration parameters, with default values.
Here you see a dump of all the Antmod configuration parameters, with the default configuration value for each of them.
#
# scm repository url for the repository with the name "default"
#
# CVS examples:
# scm:cvs:pserver:user:password@host:/cvs/root
# scm:cvs:local:ignored:/cvs/root
# scm:cvs:ext:user@host:/cvs/root
#
# Subversion examples:
# scm:svn:http://user:password@host.example.com/path/to/svn
# scm:svn:http://host.example.com/path/to/svn
# scm:svn:svn://host.example.com/path/to/svn
# scm:svn:file:///path/to/svn
#
antmod.repositories.default=
# Turn on or off Antmod's default YGuard obfuscation
antmod.obfuscation.enabled=false
# the base directory for antmod checkouts
antmod.checkoutdir=${user.home}/projects/
# cvs provider setting: the executable to be used for cvs commands
antmod.scm.cvs.executable=cvs
# subversion provider setting: the executable to be used for svn commands
antmod.scm.svn.executable=svn
# scm url specifying repository and module with XML release descriptors
antmod.descriptor.xml.repos.url=${antmod.repositories.default}:releases
# the absolute path where release descriptors are 'cached' locally
antmod.descriptor.xml.localdir=${antmod.checkoutdir}/antmod-releases
# http url, or scm url specifying repository and module with Java libraries
antmod.javalib.url=${antmod.repositories.default}:javalib
#antmod.javalib.url=http://intranetserver/javalib
# the absolute path where javalibs are 'cached' locally, if url is an "scm:" one
antmod.javalib.localdir=${antmod.checkoutdir}/antmod-javalib
# enable usage of centralized configuration by the Antmod repository client
antmod.conf.enabled=false
# the antmod configuration module in scm, allowing centralized config for antmod
antmod.conf.repos.url=${antmod.repositories.default}:antmod-conf
# the absolute path where antmod configuration is 'cached' locally
antmod.conf.localdir=${antmod.checkoutdir}/antmod-conf
# how often the antmod-conf module is checked out from scm
antmod.conf.checkoutinterval.minutes=60
# how long Antmod waits for the checkout of antmod-conf to finish
antmod.conf.checkoutwait.seconds=6
# Outputlevels for Ant
antmod.ant.output.level=1
antmod.verbose=false
# Confirmations before deleting some things, valid values are: auto, confirm, never
antmod.delete.unusedmodules=confirm
antmod.delete.unusedjavalibs=auto
# Ant buildfiles per module, with 'local' overriding ant targets in standard antfile
antmod.module.antfile=build.xml
antmod.module.antfile.source=${env.ANTMOD_HOME}/resources/ant/ant-module.xml
antmod.module.antfile.local=local.build.xml
# Ant buildfiles per release
antmod.release.antfile=build.xml
antmod.release.antfile.source=${env.ANTMOD_HOME}/resources/ant/ant-release.xml
# Local 'temp' directory for Antmod
antmod.local.dir=${user.home}/.antmod
# Module directory structure
antmod.module.dirs.src=src
antmod.module.dirs.src.java=${antmod.module.dirs.src}/java
antmod.module.dirs.src.jsp=${antmod.module.dirs.src}/jsp
antmod.module.dirs.src.webapp.web-inf=${antmod.module.dirs.src}/webapp/web-inf
antmod.module.dirs.src.webapp.meta-inf=${antmod.module.dirs.src}/webapp/meta-inf
antmod.module.dirs.doc=doc
antmod.module.dirs.lib=lib
antmod.module.dirs.resources=resources
antmod.module.dirs.resources.conf=${antmod.module.dirs.resources}/conf
# Module build directory structure
antmod.module.dirs.build=build
antmod.module.dirs.build.classes=${antmod.module.dirs.build}/classes
antmod.module.dirs.build.webapp.web-inf=${antmod.module.dirs.build}/webapp/web-inf
antmod.module.dirs.build.webapp.meta-inf=${antmod.module.dirs.build}/webapp/meta-inf
antmod.module.dirs.build.dist=${antmod.module.dirs.build}/dist
antmod.module.dirs.build.resources=${antmod.module.dirs.build}/resources
# The name of the directory where javalib files
# are exported to within a release (using antmod.javalib.repos.url)
antmod.release.dirs.javalib=javalib
# relative dir for dist and package results in 'release' directory
antmod.release.dirs.build=build
antmod.release.dirs.dist=${antmod.release.dirs.build}/dist
antmod.release.dirs.package=${antmod.release.dirs.build}/package
# the obfuscation logfile
antmod.obfuscate.logfile=yguardlog.xml
# scm (source configuration management) provider implementations
antmod.scm.providers.cvs=org.antmod.scm.impl.CvsSystemImpl
antmod.scm.providers.svn=org.antmod.scm.impl.SvnSystemImpl
# the storage provider to be used for release descriptor
antmod.descriptor.provider=xml
# storage provider implementations for release descriptors
antmod.descriptor.providers.xml=org.antmod.descriptor.impl.XmlFileDescriptorStoreImpl
# directory containing the build plugins
antmod.plugins.home=${env.ANTMOD_HOME}/plugins
# the version of Antmod
antmod.version=1.3.2
antmod.target=Antmod ${antmod.version}