Installation

Prerequisites

  • The icat lucene server distribution: icat.lucene-2.0.2-SNAPSHOT-distro.zip
  • Java 11+
  • A suitable deployed application server that supports JakartaEE 10+. Testing has been carried out with Payara Server Community 6. Other applications servers such as GlassFish and WildFly may work but have not been tested. Glassfish installation instructions are available.
  • Python 3.6+

The setup.properties file

container
Values must be chosen from: TargetServer Though only Glassfish is working properly at the moment.
home
is the top level of the container installation. For Glassfish it must contain "glassfish/domains" and for JBoss (wildfly) it must contain jboss-modules.jar.
port
is the administration port of the container which is typically 4848 for Glassfish and 9990 for JBoss.
secure
must be set to true or false. If true then only https and not http connections will be allowed.

The logback.xml file

If you wish to modify the provided logging levels then rename logback.xml.example to logback.xml and edit to suit.

The run.properties file

directory
The path to a directory (whose parent must exist) in which to store the lucene index. Any environment variables will be respected.
commitSeconds
the interval in seconds between committing lucene changes to disk and updating the index.
ip
Ranges of ip addresses to accept requests from. This should be as restrictive as possible - just list the icats you need to listen to. Provide a space separated list of allowed values. These take the form of an IPV4 or IPV6 address followed by the number of bits (starting from the most significant) to consider. For example 127.0.0.1/32 is the IPV4 value for localhost.