#!/usr/bin/ksh93 # IBM_PROLOG_BEGIN_TAG # This is an automatically generated prolog. # # 61haes_r720 src/43haes/usr/sbin/cluster/sa/filenet/sbin/cl_filenet_process_engine_start.sh 1.2 # # Licensed Materials - Property of IBM # # COPYRIGHT International Business Machines Corp. 2010 # All Rights Reserved # # US Government Users Restricted Rights - Use, duplication or # disclosure restricted by GSA ADP Schedule Contract with IBM Corp. # # IBM_PROLOG_END_TAG # @(#)26 1.2 src/43haes/usr/sbin/cluster/sa/filenet/sbin/cl_filenet_process_engine_start.sh, hacmp, 61haes_r720, 1539B_hacmp720 9/11/15 15:21:55 . /usr/es/lib/ksh93/func_include ############################################################################### # # Name: usage # # Prints usage message and exits the program. # # Arguments: none # # Returns: does not return # ################################################################################ usage() { [[ "$VERBOSE_LOGGING" == "high" ]] && set -x KLIB_SA_logmsg WARN 2 1 filenetsa.cat "Usage:\ncl_filenet_process_engine_start [-D | -v] PROCESS_ENGINE_USER\n" exit 1 } ############################################################################### # # Name: isRunning # # Check to see if the process engine is running # # Arguments: none # # Returns: # 0 on RUNNING # 1 on NOT RUNNING # ################################################################################ isRunning() { [[ "$VERBOSE_LOGGING" == "high" ]] && set -x if echo | /usr/bin/su - $PE_USER_NAME -c "LC_ALL=C initfnsw -y status" | grep -i "software started" >> $LOG_FILE 2>&1 then KLIB_SA_logmsg INFO 4 2 filenetsa.cat "Process Engine is active\n" return 0 fi KLIB_SA_logmsg WARN 4 3 filenetsa.cat "Process Engine is not active\n" return 1 # Process engine not running } ############################################################################### # # Name: doStart # # Becomes the DB2 INSTANCE_OWNER and starts the instance. # # Arguments: none # # Returns: # 0 on SUCCESS # 1 on FAILURE # ################################################################################ doStart() { [[ "$VERBOSE_LOGGING" == "high" ]] && set -x echo | /usr/bin/su - $PE_USER_NAME -c "initfnsw -y start" >> $LOG_FILE 2>&1 sleep 10 if echo | /usr/bin/su - $PE_USER_NAME -c "LC_ALL=C initfnsw -y status" | grep -i "software started" >> $LOG_FILE 2>&1 then KLIB_SA_logmsg INFO 4 4 filenetsa.cat "Process Engine has been started\n" return 0 fi KLIB_SA_logmsg ERROR 4 5 filenetsa.cat "Process Engine unable to start\n" return 1 } ############################################################################### # Main program procedure. ############################################################################### . /usr/es/sbin/cluster/sa/filenet/sbin/cl_filenet_common_variables PROGNAME=${0##*/} PATH=$(/usr/es/sbin/cluster/utilities/cl_get_path all) FPATH_BASE=/usr/es/lib/ksh93 FPATH=$FPATH_BASE/hacmp:$FPATH_BASE/sa:$FPATH_BASE/db2:$FPATH_BASE/aix:$FPATH_BASE/aix/odm # # Process engine path is set to PATH variable # PE_BIN_PATH=$(lslpp -cw '*/bin/initfnsw' | tail -1 | cut -d ':' -f 1) PE_BIN_PATH=${PE_BIN_PATH%initfnsw} PATH=$PATH:$PE_BIN_PATH export PATH FPATH LOG_FILE=$(clodmget -q name=$KLIB_HACMPLOG_ENTRY -f value -d "=" HACMPlogs) LOG_FILE=${LOG_FILE//\"/} LOG_FILE="$LOG_FILE/$KLIB_HACMPLOG_ENTRY" [[ $VERBOSE_LOGGING == "high" ]] && set -x DEBUG=${DEBUG:-"0"} VERBOSE=${VERBOSE:-"0"} PE_USER_NAME="" NUM_ARGS=$# (( $NUM_ARGS == 0 )) && usage set -- $(getopt Dv $* 2> /dev/null) (( $? != 0 )) && { usage } while [[ $1 != -- ]] do case $1 in -D) # Verbose on + Debug on VERBOSE=1 DEBUG=1 shift ;; -v) # Verbose on VERBOSE=1 shift ;; *) usage ;; esac done shift # get rid of the trailing -- PE_USER_NAME=$1 echo "######################################################" >> $LOG_FILE dspmsg -s 2 filenetsa.cat 8 "# PROCESS ENGINE START LOG" >> $LOG_FILE echo "######################################################" >> $LOG_FILE [[ -z "$PE_USER_NAME" ]] && { KLIB_SA_logmsg WARN 2 6 filenetsa.cat "Process Engine user is missing\n" usage } isRunning if (( $? == 1 )); then KLIB_SA_logmsg INFO 2 7 filenetsa.cat "Starting Process Engine\n" doStart exit $? fi exit $?