11. Advanced Configuration

This section describes advanced configuration options such as installing components in non-default locations and changing other default properties.

11.1. Inca Component Options

Each inca component has a set of options that can be set in either the $INCA_DIST/etc/common/inca.properties file or from the command line. The inca.properties file has a list of name value pairs of the format "inca.component.property=value". For example, to start the agent on port 5323 instead of 6323 and enter the password on the command line rather than get it from standard in, you could:

  1. edit $INCA_DIST/etc/common/inca.properties and replace:

    • "inca.agent.port=6323" with "inca.agent.port=5323"

    • "inca.agent.password=stdin:password>" with "inca.agent.password=pass:<password>" (where <password> is the password set with the createauth command)


    % cd $INCA_DIST; ./bin/inca start agent
  2. OR execute the following command:

    % cd $INCA_DIST; ./bin/inca start agent -p 5323 -P pass:<password>

Man pages with component options are described in Section 12.

Note: To change the port of the consumer, see Section 6.12.

Note: if you have more than 5 reporter managers running, increase the number of agent and depot threads in the inca.properties file to be 10 more than the number of reporter managers. For example, if running 15 reporter managers edit the inca.properties file as follows:

31 # Maximum number of threads running on the agent
32 inca.agent.numthreads=25
82 # Maximum number of threads running on the depot
83 inca.depot.numthreads=25

11.2. Customizing Series Notification

To customize the notification you receive whenever the result of a series comparison changes, you can either modify the default Inca notification scripts (found in the sbin/ subdirectory of your Inca Depot installation) or write your own. Set inca.incat.notifiers in your inca.property file to add a new script to the options presented in the incat series dialog. For example, to add a script named "MyNotifier" to the options, you would add the following line to inca.properties.


The Inca Depot sets environment variables that provide information to the notification script about the series and comparison, and the script can incorporate these variables into its notification. For example, EmailNotifier uses several of these variables in constructing the email body. These are the environment variable names that the Depot defines:

Table 9. Email Macro Names




the arguments passed to the reporter


the report body


the time the reporter ran


the time the report was entered in the Depot


the comparison specified for this series


the output of the comparison for this report, typically "SUCCESS" or "FAIL" followed by a list of identifiers


whether or not the reporter completed execution


the Inca database id of the series configuration


the complete command, including arguments, used to execute the reporter


the maximum CPU seconds allowed for this reporter to execute


the actual CPU seconds used by this reporter execution


any failure message recorded by the reporter


the name of the host where the reporter executed


the Inca database id of this reporter execution


log messages recorded by the reporter


the maximum memory MB allowed for this reporter to execute


the actual memory MB used by this reporter execution


the nickname of this series


the Inca database id of the report


the name of the reporter


the path to the reporter on the host where it executed


the name of the Inca resource where the reporter executed


"PASS" or "FAIL", depending on whether or not the reporter completed execution


the cron spec for this series' schedule


the Inca database id of this series


any text written by the reporter to stderr


the reporter URI


the reporter version


the maximum wall clock seconds allowed for this reporter to execute


the actual wall clock seconds used by this reporter execution


the working directory for the reporter manager on the host where the reporter executed

Values that are specified as the "Script Arguments" in incat are passed as arguments to the script.

11.3. Report Filtering

The Inca Depot allows you to filtering incoming reports before information about them is placed in the Inca database. To do so, you need to write a class that extends edu.sdsc.inca.depot.util.ReportFilter and set the property inca.depot.reportFilter to the name of the class.

An Inca report consists of five elements, all strings: the execution context (reporter name and arguments), the name of the resource where the reporter ran, the reporter stdout (i.e., report), the reporter stderr, and a report of the system resources used by the reporter execution. Of these, stderr may be null; the other four are required.

The ReportFilter class provides set and get methods for each of these five elements. If the inca.depot.reportFilter property is set, the Inca Depot creates an instance of the named class, then calls each of its set and get methods in turn to allow it to make changes to any of the elements. Changes made by the filter are incorporated into the information stored in the Depot database. If a ReportFilter get method for any of the elements other than stderr returns null, the Depot discards the report.

For example, this class directs the Depot to ignore reports that arrive from blue.ufo.edu and modifies report stderr values that contain particular messages.

public class MyReportFilter extends edu.sdsc.inca.depot.util.ReportFilter {

  public String getResource() {
    String resource = super.getResource();
    return resource.equals("blue.ufo.edu") ? null : resource;

  public String getStderr() {
    String stderr = super.getStderr();
    stderr = stderr.replaceAll("Try again.*\n", "");
    return stderr;


To install your filter, first compile the class.

% javac -classpath lib/inca-depot.jar MyReportFilter.java

Copy the compiled class to your $INCA_DIST/lib directory. For example,

% cp MyReportFilter.class $INCA_DIST/lib

Then add the inca.depot.reportFilter property to your $INCA_DIST/etc/common/inca.properties file.


Finally, restart the depot.

% ./bin/inca restart depot

11.3.1. Downtime Filter

The depot has a ready to use filter called "DowntimeFilter" that prefixes the error messages of resources marked as down with "DOWNTIME: +optionalString+:". By default the consumer will display results with a error message starting with "DOWNTIME:" neutrally - summary pages print the result as "down" instead of "error" and historical graphs show the result as "unknown". The consumer has templates in the inca-common.xsl stylesheet called "getLink" and "getDownErr" to display errors generated by the downtime filter in the report summary and details pages.

The downtime filter is included in the inca-depot.jar and looks like:

package edu.sdsc.inca.depot.util;

import org.apache.log4j.Logger;
import java.net.URL;
import java.util.Properties;
import java.io.InputStream;
import java.io.IOException;

 * Prefixes error messages in depot reports with "DOWNTIME: +optionalString+: "
 * if the resource the report ran on is in downtime.   Resources are determined
 * to be in downtime if they are listed in a downtime properties file.  In order
 * to reduce overhead, the downtime properties file is retrieved and cached at
 * a refresh interval in the getDowntimes() method instead of being retrieved
 * for each filter instance.
public class DowntimeFilter extends edu.sdsc.inca.depot.util.ReportFilter {
  private static Logger logger = Logger.getLogger(DowntimeFilter.class);
  private static Properties downtimes = new Properties();
  private static long lastRefresh = 0;

   * Returns cached property list of resources in downtime.  Gets and caches
   * property list from file in classpath (downtime.properties) if cache has
   * expired according to refreshMins.
   * The property list file contents can be:
   *  downResource1=optionalErrorMessagePrefixStringForResource1
   *  downResource2=optionalErrorMessagePrefixStringForResource2
   * OR
   *  downResource1
   *  downResource2
  synchronized static Properties getDowntimes()  {
    String downtimePropFile = System.getProperty("inca.depot.downtimeFile");
    if(downtimePropFile == null) {
      downtimePropFile  = "downtime.properties";
    String downtimeRefresh = System.getProperty("inca.depot.downtimeRefresh");
    if(downtimeRefresh == null) {
      downtimeRefresh  = "15";
    Integer refreshMins = Integer.parseInt(downtimeRefresh);
    long minSinceLastRefresh = (System.currentTimeMillis()-lastRefresh)/60000;
    if (minSinceLastRefresh >= refreshMins){
      URL url = ClassLoader.getSystemClassLoader().getResource(downtimePropFile);
      if(url == null) {
        logger.error( downtimePropFile + " not found in classpath" );
      logger.debug( "Located file " + url.getFile() );
      try {
        InputStream is = url.openStream();
      } catch (IOException e){
        logger.error( "Can't load properties file" );
      lastRefresh = System.currentTimeMillis();
    return downtimes;

   * Writes new report with modified error message to depot if resource is down
   * @return  string with depot report (reporter Stdout)
  public String getStdout() {
    String resourceProp  = getDowntimes().getProperty(super.getResource());
    if (resourceProp != null){
      logger.debug( super.getResource() + " is down " + resourceProp );
      return super.getStdout().replaceFirst(
          "<errorMessage>", "<errorMessage>DOWNTIME:"+ resourceProp +": ");
    } else{
      return super.getStdout();


To use this filter, first write a script that prints the names of down resources to a file called "downtime.properties" in the classpath of the depot (e.g. $INCA_DIST/etc/downtime.properties). If you prefer to call the file something besides "downtime.properties", set the name of the file in your $INCA_DIST/etc/common/inca.properties file:


In order to reduce depot overhead, the properties file is retrieved and cached every 15 minutes by default. The caching frequency can be changed in $INCA_DIST/etc/common/inca.properties to a different number of minutes:


The "downtime.properties" file contents can be something like:


Next add the inca.depot.reportFilter property to your $INCA_DIST/etc/common/inca.properties file.


Finally, restart the depot.

% ./bin/inca restart depot

11.3.2. All2All Filter

The depot has a ready to use filter called "All2AllFilter" that prefixes error messages in depot reports with "NOT_AT_FAULT: " if the resource the report ran on is not at fault for the "all2all" error and the report is not already prefixed with "DOWNTIME" (see Section 5.9.2 for more information about configuring "all2all" tests). Resources are determined to not be at fault if the summary property that matches their nickname has failed. Summary properties are written for any reports with the "summary.successpct.performance" reporter name.

By default, errors that begin with "NOT_AT_FAULT" are displayed neutrally (see Section 6.10). The all2all filter is included in the inca-depot.jar and is configured by adding the inca.depot.reportFilter property to your $INCA_DIST/etc/common/inca.properties file


and restarting the depot.

% ./bin/inca restart depot

11.3.3. Multiple Filters

The depot can apply multiple filters to reports. To specify more than one filter, use a comma separated list for the inca.depot.reportFilter property in $INCA_DIST/etc/common/inca.properties:

inca.depot.reportFilter=edu.sdsc.inca.depot.util.DowntimeFilter, edu.sdsc.inca.depot.util.All2AllFilter
Filters are applied in the order they are listed.

11.4. Depot Database Configuration

The Inca depot uses Hibernate to interface to a relational database backend for storing reports and incat configuration. By default, the Inca depot uses Hibernate's HSQL database but can be configured to use any Hibernate supported database. We have tested the Inca depot with PostgreSQL and Oracle.

Steps for using a depot database other than HSQL are as follows:

  1. Stop the depot

    % cd $INCA_DIST; ./bin/inca stop depot

  2. Edit $INCA_DIST/etc/hibernate.properties

    • Comment out the first 5 lines which specifies for hibernate to use hsql as its backend database:

      1 #hibernate.dialect=org.hibernate.dialect.HSQLDialect
      2 #hibernate.connection.driver_class=org.hsqldb.jdbcDriver
      3 #hibernate.connection.url=jdbc:hsqldb:test
      4 #hibernate.connection.username=sa
      5 #hibernate.connection.password=

    • Uncomment the block which specifies for hibernate to use your database (i.e., for PostgreSQL uncomment 8-13, for MySQL uncomment 17-21, for Oracle uncomment 24-28).

    • Change the uncommented hibernate.connection.url, hibernate.connection.username and hibernate.connection.password property values to be the host/db name, login username and password for your database.

  3. Put JDBC drivers for your database in the $INCA_DIST/lib directory. Driver download locations: PostgreSQL, MySQL, Oracle

  4. Initialize the depot (set up the Inca tables):

    % cd $INCA_DIST; ./bin/inca depot -d
    You should see something like:
    Initializing c3p0 pool... 
    Database Initialization Completed

  5. Start the depot

    % ./bin/inca start depot

11.5. Depot Fault Tolerance

In order to respond to unexpected depot failure, configure peer depots to mirror each other so that if one fails another can take over. NOTE: the depots must be using a database other than the default hibernate database. There's a bug in hibernate that prevents synchronization. To configure the depot database see Section 11.4.

Figure 25. Inca deployment with fault tolerant depot

The steps for depots mirroring are as follows:

  1. Install the software for each peer depot

    % wget http://inca.sdsc.edu/releases/2.6/incaInstall.sh;
    % sh incaInstall.sh $INCA_DIST depot;

  2. Copy the $INCA_DIST/etc/depot*.pem and $INCA_DIST/etc/trusted/* files from the original depot to the peer depot $INCA_DIST/etc and $INCA_DIST/etc/trusted directories respectively. Copy any custom notification scripts or filters from the original depot to the peer.

  3. Edit $INCA_DIST/etc/common/inca.properties on both the original and peer depot and uncomment the blocks which specify the peer hosts for your depots. These should be the full hostname and should not be "localhost" for either. For example, if your original depot is on rocks-101.sdsc.edu:6324 and your peer depot is on cuzco.sdsc.edu:6324, your edits on rocks-101.sdsc.edu would look like:

    # URIs of peer depots

    Edits on cuzco.sdsc.edu would look like:

    # URIs of peer depots
  4. Edit $INCA_DIST/etc/common/inca.properties where the consumer and agent are installed and uncomment the block which specifies the hosts for your depots. For example, if your original depot is on rocks-101.sdsc.edu:6324 and your peer depot is on cuzco.sdsc.edu:6324, your edits would look like:

    inca.consumer.depot=incas://rocks-101.sdsc.edu:6324 incas://cuzco.sdsc.edu:6324
    inca.agent.depot=incas://rocks-101.sdsc.edu:6324 incas://cuzco.sdsc.edu:6324

    Restart the agent and consumer.

  5. Start each new peer depot with the "sync" command below and look for "DB synchronization succeeded" in the $INCA_DIST/var/depot.log files:

    % cd $INCA_DIST; bin/inca start depot --sync

  6. Stop the original depot and restart it using the "sync" command below and look for "DB synchronization succeeded" in $INCA_DIST/var/depot.log

    % cd $INCA_DIST; bin/inca stop depot; bin/inca start depot --sync

In addition to a redundant depot, the consumer can also be configured for fault tolerance as shown in the figure below.

Figure 26. Inca deployment with fault tolerant depot and consumer

The steps for adding a consumer for each peer depot are as follows:

  1. Install a consumer for each peer depot that doesn't have one (move the inca.properties file if it has already been edited as this step will overwrite it)

    % wget http://inca.sdsc.edu/releases/2.6/incaInstall.sh;
    % sh incaInstall.sh $INCA_DIST consumers;

  2. Copy the $INCA_DIST/etc/consumer.*pem and $INCA_DIST/etc/trusted/* files from the original consumer to the peer consumer $INCA_DIST/etc and $INCA_DIST/etc/trusted directories respectively. Copy any custom xsl or tag files from the original consumer.

  3. Edit $INCA_DIST/etc/common/inca.properties for each consumer and configure one consumer per depot where each consumer/depot pair are usually on the same machine. For example, if your depot is on rocks-101.sdsc.edu:6324, your edit would look like:

    # URI to the depot -- use incas:// if auth is required and inca:// if not
  4. Configure a proxy server to accept all traffic and direct it to the appropriate consumer address on the internal network.

  5. Restart each depot and consumer using the --sync flag to start the depots.

11.6. Manual Access Method

A resource administrator may be unable to start a reporter manager using one of the automated methods (ssh, globus2, or local). In this case, an Inca administrator can add the resource using the access method 'manual'. The following steps will need to be taken by the Inca administrator and resource administrator:

Inca Administrator

Step 3: Generate a certificate for the reporter manager.
Step 4: Add resource in incat with access method 'manual'

Resource Administrator

Step 1: Install reporter manager
Step 2: Generate private key and certificate request
Step 5: Install certificate and trusted certificate.
Step 6: Start reporter manager

  1. RESOURCE ADMIN: install the reporter manager distribution on your resource using the following steps.

    1. Create an installation directory for the reporter manager (e.g., $RM_INSTALL_DIR). Download the reporter manager tarball and build script:

      % cd $RM_INSTALL_DIR; \
        wget http://inca.sdsc.edu/releases/2.6/Inca-ReporterManager.tar.gz; \
        wget http://inca.sdsc.edu/releases/2.6/buildRM.sh

      At this point the directory on the remote machine should look something like this:

      % ls         

    2. Install the reporter manager and list directories to verify files unpacked correctly:

      % bash buildRM.sh $RM_INSTALL_DIR Inca-ReporterManager.tar.gz
      % ls $RM_INSTALL_DIR 
      Inca-ReporterManager-9.6764    build.log    lib    share
      Inca-ReporterManager.tar       buildRM.sh   man    var
      bin                            etc          sbin
  2. RESOURCE ADMIN: create a set of credentials for the reporter manager (i.e., private key and certificate request) using the command below.

    % cd $RM_INSTALL_DIR; ./sbin/inca createRmCertRequest -P stdin:password: 

    Enter a password for your key (to use when you start up the reporter manager). Two files will be created in $RM_INSTALL_DIR/etc: an encrypted private key called rmkey.pem and a certificate request called rmreq.pem. Email rmreq.pem to your Inca administrator and they will generate a certificate for your reporter manager.

  3. INCA ADMIN: upon receiving a rmreq.pem file, generate a certificate for a reporter manager using the command below. Replace "rmreq.pem" with to the path to the rmreq.pem file that you received from the resource administrator and "rmcert-resource.pem" with the path to the reporter manager certificate that will be generated by the command.

    % cd $INCA_DIST; ./bin/inca createRmCert -P stdin:password: rmreq.pem rmcert-resource.pem

    Enter the password for the inca distribution (i.e., created in Step 4 during the initial installation process). Email the reporter manager certificate, "rmcert-resource.pem", and trusted certificate to the resource administrator. The trusted certificate is the file ending with the .0 extension in your $INCA_DIST/etc/trusted directory. For example f73fee74.0 is the trusted certificate in the following directory:

    % ls etc/trusted/
    agentcert.pem  f73fee74.0  rocks-101.sdsc.educert.pem
  4. INCA ADMIN: add the specified resource within incat and choose 'manual' as below:

    Figure 27. Add Resource Screen

    Make sure the "Equivalent" box is checked, otherwise the depot may discard reports with "unattached to any DB config" warnings. The new "manualResource" will also need to be added to the "defaultGrid" resource in order to run the default sampleSuite. Select "Agent->Commit" from the menu to commit the changes.

  5. RESOURCE ADMIN: install the certificate and trusted certificate from the Inca admin in your reporter manager installation. Replace "rmcert-resource.pem" and "trusted.0" with the names of the files received from your Inca administrator.

    % cd $RM_INSTALL_DIR
    % cp rmcert-resource.pem $RM_INSTALL_DIR/etc/rmcert.pem
    % mkdir $RM_INSTALL_DIR/etc/trusted
    % cp trusted.0 $RM_INSTALL_DIR/etc/trusted
  6. RESOURCE ADMIN: Finally, you can start up the reporter manager using the commands below. Replace "depotHost" with the hostname where the depot is running and replace "manualResource" with the manual resource group name added in step 4:

    % cd $RM_INSTALL_DIR
    % ./sbin/inca reporter-manager -m \
     -a incas://agentHost:6323 \
     -d incas://depotHost:6324 \
     -c etc/rmcert.pem \
     -k etc/rmkey.pem -t etc/trusted \
     -e bin/inca-null-reporter \
     -r var/reporter-packages \
     -R sbin/reporter-instance-manager \
     -v var \
     -w 1 \
     -i manualResource \
     -L DEBUG \
     -l var/reporter-manager.log \
     -P true
    <enter your password>

    Command will hang until the password for the reporter manager key is entered. If the private key is not password protected, don't use the -P option in the command above. Check to make sure the reporter manager is running by doing a "ps | grep reporter-manager" and make sure there aren't errors by doing a "grep ERROR $RM_INSTALL_DIR/var/*".

    To stop the reporter manager at any time, type

    % ./sbin/inca stop reporter-manager

    Make sure all reporter-manager ps are stopped

     % ps | grep manager 

11.7. Batch Systems

The cluster.batch.wrapper reporter can be useful when running Inca on batch systems. Without an --exec argument, this reporter submits a trivial program to the batch scheduler and reporters the amount of time it spends in the queue before executing. If given an --exec argument, cluster.batch.wrapper instead submits the argument value (which should contain a reporter invocation) and collects and reports it output. This use allows reporters to be executed on batch nodes, rather than on the submission host. For example, this command will report the version of gcc that is installed on the batch nodes of a PBS cluster.

% cluster.batch.wrapper --scheduler=pbs --exec=cluster.compiler.gcc.version

The --scheduler argument is the only one required; valid values are cobalt, dqs, loadleveler, lsf, pbs, and sge. Additional recognized arguments are as follows.

Table 10. cluster.batch.wrapper options



Default value


User account to charge



Number of batch nodes to request



How often (in seconds) to check for job completion



The name of the queue to submit to



The shell to use to run the batch job



Additional batch-scheduler-specific parameters to use in the submission



The maximum time (in minutes) the job may wait in the batch queue

0 (unlimited)


Submission type, used with LoadLeveler (job_type parameter), PBS (-l nodes parameter) and SGE (-pe parameter)



Path to a temp file directory

Current working directory


The amount of time (in minutes) to request for the job


Here are some additional examples of using cluster.batch.wrapper to submit Inca reporters to a batch queue.

% cluster.batch.wrapper --scheduler=pbs --account=alf63 \

% cluster.batch.wrapper --scheduler=loadleveler --queue=normal --type=parallel \
  --exec='network.ping.unit --host=ufo.edu'

% cluster.batch.wrapper --scheduler=sge --submitparam='-js 1' \
  --submitparam='-l h_vmem=600' \
  --exec='cluster.ps.unit --process=init --psargs=-x'

In incat, you can specify that cluster.batch.wrapper should be used to submit a series by including its name and arguments in the series context string. Inca stores installed reporters in the directory $INSTALL_DIR/bin, so the path to cluster.batch.wrapper will be $INSTALL_DIR/bin/cluster.batch.wrapper. The figure below shows the context string for the network.ping.unit series mentioned above.

11.8. Manual Run Now

Oftentimes resource or system administrators will want to show that a problem has been resolved by independently executing inca tests before they are scheduled to run so that their results appear on status pages. Rather than granting resource administrators full privileges just to use incat's "run now" button, the inca administrator can provide resource administrators with a "manual run now" option - a command line script to execute tests and send results to the depot. A "run now" can also be invoked via the Inca web pages if configured (by default "run now" is not enabled). See Section 6.5 for more information.

11.8.1. Configuring the Manual Run Now Script

The instructions below need to be done *once* by the Inca administrator on each resource where the resource administrator would like to manually run tests.

  1. To allow system administrators or others to execute tests with their own password, copy the reporter manager key and cert for them and change the password. The old password is the same as the password used in the createauth step of installing inca.

    % cd $INCA_DIST/etc; cp rmkey.pem adminkey.pem
    % cp rmcert.pem admincert.pem
    % chmod 600 adminkey.pem
    % ssh-keygen -p
    Enter file in which the key is (/home/.ssh/id_rsa):
    Enter old passphrase: 
    Key has comment '/home/incaReporterManager/etc/adminkey.pem'
    Enter new passphrase (empty for no passphrase): 
    Enter same passphrase again: 
    Your identification has been saved with the new passphrase.

  2. Create a custom wrapper script for $INCA_DIST/bin/inca-run-now called $INCA_DIST/bin/admin-run-now using the script below as an example. Use the agent and depot URIs for your installation as AGENT and DEPOT and the agent's name for the resource as RESOURCE. You may need to add the "-u" parameter for the appropriate user if the reporter manager is not running as inca. Run the script with the "-h" flag for more information about its input parameters:

    % setenv PERL5LIB lib/perl:$PERL5LIB; bin/inca-run-now -h

    Example wrapper script:

    if ( test -z "${PERL5LIB}" ); then
    export PERL5LIB
    ./bin/inca-run-now -a $AGENT -c etc/admincert.pem -d $DEPOT \
      -k etc/adminkey.pem -P "stdin:password:" \
      -t etc/trusted -i $RESOURCE $* 

  3. (optional)The command to use the admin-run-now script could be added to the reporter details status pages. This would require editing the $INCA_DIST/etc/instance.xsl file on the machine where the consumer is running and adding the xsl required to print a command like:

     % cd /home/inca/inca2install; ./bin/admin-run-now ant-unit 
    The xsl would be similar to:
      <td colspan="2" class="header">
        <xsl:text>Run now command (system admins only):</xsl:text>
      <td colspan="2">
        <xsl:variable name="repPath" select="$report/reporterPath"/>
        <xsl:variable name="incaloc" select=
          "replace($report/reporterPath, '/var/reporter-packages/bin/.*', '')" />
        <p class="code"> <xsl:text>% cd </xsl:text>
        <xsl:value-of select="$incaloc"/>
        <xsl:text>; ./bin/admin-run-now </xsl:text>
        <xsl:value-of select="$nickName"/></p>

11.8.2. Using the Manual Run Now Script

  1. Log into the inca account on the desired resource and change to the $INCA_DIST directory.

    % cd $INCA_DIST

  2. Execute admin-run-now script using the series nickname as the input parameter and the password from your inca administrator:

    % ./bin/admin-run-now ant_version
    Started Inca reporter-manager
    You can also print the XML result that gets sent to the Inca server in $INCA_DIST/var/run-now.log by using the "-L DEBUG" flag:
    % ./bin/admin-run-now -L DEBUG ant_version
    Started Inca reporter-manager

  3. Check for errors in $INCA_DIST/var/run-now.log. Wait about 10-15 minutes to view the result on your inca status page (data is cached and takes a few minutes to update).

  4. (optional)Execute multiple tests: in order to specify that more than one test be executed, use a Perl regex expression instead of the test name like:

    % ./bin/admin-run-now <perl regex>

    For example, to execute all ant tests

    % ./bin/admin-run-now "ant.*"

    In order to check your regular expression, you can use the "-l" flag. This option will list the tests but will NOT execute them. For example, to display all ant tests that would be executed:

    % ./bin/admin-run-now -l "ant.*"
    Suite:  sampleSuite (2 series)

    To view all tests, use the regular expression ".*" as below:

    % ./bin/admin-run-now -l ".*"

    You will notice that test names are listed under a "Suite: <name>" header. You can also use that suite name to execute all of the tests included in it. For example, the following shows the tests available in the sampleSuite kit:

    Suite:  sampleSuite (10 series)

    To execute all test in a kit using the suite name, type:

    % ./bin/admin-run-now sampleSuite

Run the script with the "-h" flag for help information:

% ./bin/admin-run-now -h

11.9. Source Distributions

Source distributions of the Inca components are also available. The following table lists the Inca component source distributions and shows how to build each of them. Note, that Apache Ant is needed for the Inca components implemented in Java.

Table 11. Inca component source distributions




ant -Dinstalldir=$INCA_DIST install

common (used by all Inca Java components)

ant -Dinstalldir=$INCA_DIST install


ant -Dinstalldir=$INCA_DIST install


ant -Dinstalldir=$INCA_DIST install


ant -Dinstalldir=$INCA_DIST install


make <options>

reporter manager

perl Makefile.PL <options>

web services

perl Makefile.PL <options>