1#!/bin/bash 2 3# default period for reindexing (in minutes) 4if [ -z "$REINDEX" ]; then 5 REINDEX=10 6fi 7 8indexer(){ 9 # Wait for Tomcat startup. 10 date +"%F %T Waiting for Tomcat startup..." 11 while [ "`curl --silent --write-out '%{response_code}' -o /dev/null 'http://localhost:8080/'`" == "000" ]; do 12 sleep 1; 13 done 14 date +"%F %T Startup finished" 15 16 if [[ ! -d /opengrok/data/index ]]; then 17 # Populate the webapp with bare configuration. 18 BODY_INCLUDE_FILE="/opengrok/data/body_include" 19 if [[ -f $BODY_INCLUDE_FILE ]]; then 20 mv "$BODY_INCLUDE_FILE" "$BODY_INCLUDE_FILE.orig" 21 fi 22 echo '<p><h1>Waiting on the initial reindex to finish.. Stay tuned !</h1></p>' > "$BODY_INCLUDE_FILE" 23 /scripts/index.sh --noIndex 24 rm -f "$BODY_INCLUDE_FILE" 25 if [[ -f $BODY_INCLUDE_FILE.orig ]]; then 26 mv "$BODY_INCLUDE_FILE.orig" "$BODY_INCLUDE_FILE" 27 fi 28 29 # Perform initial indexing. 30 NOMIRROR=1 /scripts/index.sh 31 date +"%F %T Initial reindex finished" 32 fi 33 34 # Continue to index every $REINDEX minutes. 35 if [ "$REINDEX" == "0" ]; then 36 date +"%F %T Automatic reindexing disabled" 37 return 38 else 39 date +"%F %T Automatic reindexing in $REINDEX minutes..." 40 fi 41 while true; do 42 sleep `expr 60 \* $REINDEX` 43 /scripts/index.sh 44 done 45} 46 47# Start all necessary services. 48indexer & 49catalina.sh run 50