p4-search Copyright (c) 2014, Perforce Software Installation --- At the root of this directory is the install script (./install.sh) which will * prompt for some basic installation information * download jetty (8.1) and solr (4.5.1) if the required tarballs are not in the directory * unpack them and configure both for use by P4Search * create a start.sh and stop.sh for starting and stopping the services The installation location is ./install by default. You can run ./install/start.sh to start both services and stop.sh to stop them. The P4Search tool uses a Perforce Server trigger (see scripts/ search-queue.sh) to receive new changelists, so the trigger must be installed on the Perforce Server or no indexing past the initial scan will take place. Uninstall --- To remove the installation stop the service (install/stop.sh) and run "rm -rf ./install" to delete the installation files. Configuration --- The install script creates a search.config properties file in the ./install/jetty-.../resources directory. Configuration changes currently require the service to be restarted. Except for server configuration (serverProtocol, serverHost, serverPort, indexerUser, indexerPassword), reasonable defaults are assumed for the other properties: com.perforce.search... (general Solr configuration) searchEngine: URL of the solr installation, e.g. http://localhost:8983 searchEngineToken: magic token matching the Perforce Server trigger collectionName: solr collection that contains the indexed data (general processing configuration) queueLocation: location of queued changelist files to be indexed maxSearchResults: maximum results returned by the service maxStreamFileSize: largest file size to attempt to index content ignoredExtensions: file with a CRLF list of extensions to skip content processing neverProcessList: file with a CRLF list of extensions to never index indexMethod: ALL_REVISIONS | HEAD_REVISIONS, HEAD... means to only keep the index up to date with the latest revision blackFstatRegex: for Perforce attributes, which p4 attr to skip (empty means do not index fstat data) whiteFstatRegex: for Perforce attributes, which p4 attr to include (empty means anything not in the blacklist) changelistCatchupKey: key name where the latest processed changelist is located. On startup the service will try to "catch up" based on this value. (file scanner config) fileScannerTokenKey: key name to indicate when the initialization is complete, empty implies "do not scan" fileScannerTokenValue: key value to indicate when the initialization is complete, empty implies "do not scan" scanPaths: CSV paths in the Perforce server to scan fileScannerThreads: number of threads handling the processing fileScannerSleep: used to throttle the scanner back fileScannerDepth: when scanning how many revisions down to go, 0 implies all revisions, 1, is head only, etc. maxScanQueueSize: used to throttle the amount of files in the scan queue (GUI config) commonsURL, swarmURL, p4webURL: URLs of services that can show the files via links in the web browser. Swarm and P4Web settings are mutually exclusive, with a preference to the Swarm URL.