#!/bin/bash set -e yell() { printf "\033[1;6;37;41m$0: $*\033[0m\n" >&2; } die() { yell "$*" exit 111 } try() { "$@" || die "FAIL: $*"; } cmd() { local info="${2:-$1}" echo -e "\n\033[1;34m💡 $info\033[0m" eval "$1" } TARGET=$VAR2 BROKER=$VAR3 if [[ $TARGET == "DRC" ]]; then if [[ $(mqsilist | grep "$BROKER" | grep "stopped") ]]; then if [[ $(dspmq | grep ${BROKER}.QM | grep "Ended") ]]; then try cmd "strmqm ${BROKER}.QM > output.log 2>&1 &" \ "Start QM ${BROKER}.QM" sleep 30 fi; try cmd "mqsistart $BROKER > output.log 2>&1 &" \ "Start Integration Node $BROKER" sleep $((2 * 60)) fi; fi; cek_is="" while IFS='|' read -r IS bar name target IN TYPE; do if [ "$IS" != "$cek_is" ]; then echo "==================================" echo "DEPLOY BAR FOR ${IS} " echo "==================================" cek_is=$IS fi if [ -f "/opt/mdw/bars/bars/$IN/$name-$target-$IN-$IS.properties" ]; then echo "mqsiapplybaroverride -b /opt/mdw/bars/bars/${IN}/${bar} -p /opt/mdw/bars/bars/${IN}/${name}-${target}-${IN}-${IS}.properties -r" try mqsiapplybaroverride -b /opt/mdw/bars/bars/$IN/$bar -p /opt/mdw/bars/bars/$IN/$name-$target-$IN-$IS.properties -r elif [ -f "/opt/mdw/bars/bars/$IN/$name-$target-$IN.properties" ]; then echo "mqsiapplybaroverride -b /opt/mdw/bars/bars/${IN}/${bar} -p /opt/mdw/bars/bars/${IN}/${name}-${target}-${IN}.properties -r" try mqsiapplybaroverride -b /opt/mdw/bars/bars/$IN/$bar -p /opt/mdw/bars/bars/$IN/$name-$target-$IN.properties -r elif [ -f "/opt/mdw/bars/bars/$IN/$name-$target.properties" ]; then echo "mqsiapplybaroverride -b /opt/mdw/bars/bars/${IN}/${bar} -p /opt/mdw/bars/bars/${IN}/${name}-${target}.properties -r" try mqsiapplybaroverride -b /opt/mdw/bars/bars/$IN/$bar -p /opt/mdw/bars/bars/$IN/$name-$target.properties -r elif [ -f "/opt/mdw/bars/bars/$IN/$name.properties" ]; then echo "mqsiapplybaroverride -b /opt/mdw/bars/bars/${IN}/${bar} -p /opt/mdw/bars/bars/${IN}/${name}.properties -r" try mqsiapplybaroverride -b /opt/mdw/bars/bars/$IN/$bar -p /opt/mdw/bars/bars/$IN/$name.properties -r fi echo "mqsideploy ${IN} -e ${IS} -a /opt/mdw/bars/bars/${IN}/${bar}" try mqsideploy "$IN" -e "$IS" -a /opt/mdw/bars/bars/$IN/$bar done < <( cat $VAR4/bars/execute.tmp | sort | uniq) # echo $TARGET if [[ $TARGET == "DRC" ]]; then try cmd "mqsistop $BROKER > output.log 2>&1 &" \ "Stop Integration Node $BROKER" sleep $((2 * 60)) try cmd "endmqm -i ${BROKER}.QM" \ "Stop QM ${BROKER}.QM" fi; # while read -r ln; do # if [[ "$ln" =~ ^([a-zA-Z0-9_\-]+)=(.*) ]]; then # eval export ${BASH_REMATCH[1]}=\${BASH_REMATCH[2]} # fi # done < <((cat /var/jenkins/.env.local 2>/dev/null || cat .env 2>/dev/null || echo) | grep -v -E '^[#$]') # echo DEPLOY BAR $1 # if [[ -f $1.properties ]]; then # try mqsiapplybaroverride -b $1.bar -p $1.properties -r # fi # app="$1" # version="$2" # ext="$3" # broker="$4" # executiongroup="$5" # # if [[ $(mqsilist | grep "$" | grep "stopped") ]]; then # # try cmd "strmqm $broker.QM 2>/dev/null" "Start QM $qm" # # try cmd "mqsistart $broker" "Start Integration Node $broker" # # fi; # try mqsideploy "$broker" -e "$executiongroup" -a /opt/mdw/bars/bar/"$app"-"$version"."$ext"