#!/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_stop.sh 1.1.1.1 # # 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 # @(#)60 1.1.1.1 src/43haes/usr/sbin/cluster/sa/filenet/sbin/cl_filenet_process_engine_stop.sh, hacmp, 61haes_r720, 1539B_hacmp720 9/11/15 15:32:05 ############################################################################### # # Name: cl_filenet_process_engine_stop # # Command used as the PowerHA Application Server "Stop Script" for FileNet # Process Engine. # # Syntax: # cl_filenet_process_engine_stop [-D | -v] PROCESS_ENGINE_USER # # Arguments: # -D Turn on debug mode. # -v Turn on verbose mode. # PROCESS_ENGINE_USER Process Engine User # # Returns: # 0 on SUCCESS # 1 on FAILURE # ############################################################################### . /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 3 1 filenetsa.cat "Usage:\ncl_filenet_process_engine_stop [-D | -v] PROCESS_ENGINE_USER.\n" exit 1 } ############################################################################### # # Name: isRunning # # Check to see if Process Engine is running or not. # # 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 INFO 4 3 filenetsa.cat "Process Engine is not active\n" return 1 # instance not running } ############################################################################### # # Name: doStop # # Becomes the PE USER OWNER and stops the process engine # # Arguments: none # # Returns: # 0 on SUCCESS # 1 on FAILURE # ################################################################################ doStop() { [[ $VERBOSE_LOGGING == "high" ]] && set -x echo | /usr/bin/su - $PE_USER_NAME -c "initfnsw -y stop" >> $LOG_FILE 2>&1 echo | /usr/bin/su - $PE_USER_NAME -c "LC_ALL=C killfnsw -DAyS" | grep -i error >> $LOG_FILE 2>&1 RC=$? echo | /usr/bin/su - $PE_USER_NAME -c "killfnsw -r" >> $LOG_FILE 2>&1 (( $RC == 0 )) && { KLIB_SA_logmsg INFO 5 3 filenetsa.cat "Process Engine has not been stopped\n" return 1 } KLIB_SA_logmsg INFO 5 2 filenetsa.cat "Process Engine has been stopped\n" return 0 } ############################################################################### # Main program procedure. ############################################################################### # Load the common variables . /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/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" if [[ $VERBOSE_LOGGING == "high" ]] then set -x version='1.1.1.1 $Source: 61haes_r711 43haes/usr/sbin/cluster/sa/filenet/sbin/cl_filenet_process_engine_stop.sh 1$' fi 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 3 filenetsa.cat 5 "# PROCESS ENGINE STOP LOG" >> $LOG_FILE echo "######################################################" >> $LOG_FILE [[ -z "$PE_USER_NAME" ]] && { KLIB_SA_logmsg ERROR 2 6 filenetsa.cat "Process Engine user is missing\n" usage } isRunning if (( $? == 0 )); then KLIB_SA_logmsg INFO 3 4 filenetsa.cat "Stopping Process Engine\n" doStop exit $? fi exit $?