ME=xbuild.sh
#echo - Check for updates ......
if [ /home/sh13256/$ME -nt $0 ]; then
# echo - New version found. Update ...
cp /home/sh13256/$ME $0
echo - $0 Updated. Relaunching ...
echo
echo "$0 $*"
$0 $*
exit
fi
#echo - $0 is up to date
#set -x
Usage(){
echo
echo " Usage:"
echo
echo " - 1 - Compilation Jobs - "
echo
echo " $0 lqtfront : build LQT front end (CVS Update, Compile)"
echo " $0 lqtback : build LQT back end (CVS Update, Compile)"
echo " $0 lqt : build LQT front & back (CVS Update, Compile)"
echo
echo " $0 lqtfront [N] : build LQT front end lazily"
echo " $0 lqtback [N] : build LQT back end lazily"
echo " $0 lqt [N] : build LQT front & back lazily"
echo
echo " $0 lqtfrontC : build LQT front end (Compile Only)"
echo " $0 lqtbackC : build LQT back end (Compile Only)"
echo
echo " $0 loanwl : build Loan WL"
echo " $0 loanwl [N] : build Loan WL lazily"
echo
echo " [N] : number of updated files, will skip compile if there are not enough updates."
echo
echo " Create a file 'To' at the same dir. Enter email addresses in it, one email each line."
echo " Logs will be send to these emails."
echo
echo " - 2 - Hermes Jobs - "
echo
echo " $0 lqtfrontH releasetype [config file] : send LQT front end to Hermes "
echo " $0 lqtbackH releasetype [config file] : send LQT back end to Hermes "
echo " $0 loanwlH releasetype [config file] : send LoanWL to Hermes "
echo " $0 lqtDBH releasetype [config file] : send LoansQTDB to Hermes "
echo
echo " releasetype = integration | major | minor | bugfix | resubmission"
echo " in [config file]: AdditionalEmailList=[comma separated list of email addresses to CC.]"
echo
exit
}
if [ $# -lt 1 ]; then
Usage
fi
CMD=$1
CMD_LQT='lqt'
CMD_FRONT='lqtfront'
CMD_BACK='lqtback'
CMD_LWL='loanwl'
CMD_LQTDBH='lqtDBH'
xROOT=`pwd`
LOGFRONT=$xROOT/.$CMD_FRONT.log
LOGBACK=$xROOT/.$CMD_BACK.log
LOGLWL=$xROOT/.$CMD_LWL.log
LOGCVS=$xROOT/.cvs.log
LOG_DB=$xROOT/.$CMD_LQTDBH.log
TO=$xROOT/To
LWL_COMPILE=lwlCompile
BRANCH_FILE=$xROOT/.branch
LQT_BRANCH=`cat ${BRANCH_FILE} | grep '^LQT:' | sed 's/^LQT://'`
LWL_BRANCH=`cat ${BRANCH_FILE} | grep '^LWL:' | sed 's/^LWL://'`
sendMail(){
# #set -x
TOLIST=`echo shangshang.hu@iuo.citi.com`
MY_MAIL=$TOLIST
if [ -f $TO ]; then
TOLIST=`cat $TO | tr '\n' ' '`
elif [ -f /home/sh13256/To ]; then
TOLIST=`cat /home/sh13256/To | tr '\n' ' '`
fi
echo "---------------- Send Mail Start ------------------"
mailx -b $MY_MAIL -t <<EOF
To: $TOLIST
Subject: $1
Mime-Version: 1.0;
Content-Type: text/html; charset="ISO-8859-1";
Content-Transfer-Encoding: 7bit;
<html><body><pre style='font-size:12px; color:003366'>
`cat $2`
</pre></body></html>
EOF
echo " Subject : $1"
echo " Attach : $2"
echo " Sent to : ${TOLIST}"
echo "---------------- Send Mail Finish ------------------"
# mailx -s $1 -b shangshang.hu@citi.com "$TOLIST" < $2
# for to in $TOLIST
# do
# mailx -s $1 ${to}< $2
# echo " - Mail sent to ${to}"
# done
}
updateCode(){
# set -x
echo
echo "========== Updating Code from CVS STARTED: `date` =========="
echo "========== Updating Code from CVS STARTED: `date` ==========" >> $1
rm -f ./checkout
cp /home/sh13256/checkout.sh checkout
chmod +x ./checkout
if [ $1 = $LOGLWL ]; then
if [ -d $xROOT/zTRSBackEnd ]; then
echo " - Source code found, start update. (zTRSBackEnd) "
./checkout updateLWL $1
else
echo " - No source code found, please do checkout first. "
exit
fi
else
# if [ $1 = $LOGBACK ] or [ $1 = $LOGFRONT ]; then
if [ -d $xROOT/LoansQuickTicket/LQT ]; then
echo " - Source code found, start update. (LoansQuickTicket/LQT) "
./checkout updateLQT $1
else
echo " - No source code found, please do checkout first. "
exit
fi
fi
rm -f ./checkout
}
lazyPrepare(){
# set -x
rm $LOGCVS
cat $1 | grep "^[UPARMC]" | sed '/LQT\/libBack\/CBIdl\/idl\/CBTicket\.idl/d' >> $LOGCVS
COUNT=`wc -l $LOGCVS | sed 's/ \/.*$//' | sed 's/ //g'`
echo "" >> $LOGCVS
echo "$COUNT file(s) updated" >> $LOGCVS
echo " - $COUNT file(s) updated"
BRANCH='Trunk'
if [ $LQT_BRANCH ]; then
BRANCH=$LQT_BRANCH
fi
if [ $1 = $LOGLWL ]; then
if [ $LWL_BRANCH ]; then
BRANCH=$LWL_BRANCH
fi
fi
if [ $# -gt 1 ]; then
if [ $COUNT -le $2 ]; then
echo " - Required changes for compile: [$2] - Skip !"
echo "Not Enough Changes. [$2] - Skip Compile" >> $LOGCVS
if [ $COUNT -gt 0 ]; then
sendMail "CVS_${BRANCH}_${xROOT}" $LOGCVS
fi
exit
fi
fi
if [ $COUNT -gt 0 ]; then
sendMail "CVS_${BRANCH}_${xROOT}" $LOGCVS
fi
echo
echo "========== Prepare Code STARTED: `date` =========="
rm -f ./checkout
cp /home/sh13256/checkout.sh checkout
chmod +x ./checkout
if [ $1 = $LOGLWL ]; then
if [ -d $xROOT/zTRSBackEnd ]; then
echo " - Source code found, start prepare. (zTRSBackEnd) "
./checkout prepareLWL $1
else
echo " - No source code found, please do checkout first. "
exit
fi
else
# if [ $1 = $LOGFRONT ] or [ $1 = $LOGBACK ]; then
if [ -d $xROOT/LoansQuickTicket/LQT ]; then
echo " - Source code found, start prepare. (LoansQuickTicket/LQT) "
./checkout prepareLQT $1
else
echo " - No source code found, please do checkout first. "
exit
fi
fi
rm -f ./checkout
}
doCompile(){
# #set -x
echo
echo "========== Compile STARTED: `date` Logging to $1 =========="
echo
echo " Please wait ....... "
echo
echo "========== Compile STARTED: `date` Logging to $1 ==========" >> $1
if [ $1 = $LOGFRONT ]; then
cd $xROOT/LoansQuickTicket/compile
cp /home/sh13256/build.sh build
chmod +x ./build
./build build_front $1
rm -f ./build
elif [ $1 = $LOGBACK ]; then
cd $xROOT/LoansQuickTicket/compile
cp /home/sh13256/build.sh build
chmod +x ./build
./build build_back $1
rm -f ./build
elif [ $1 = $LOGLWL ]; then
cp /home/sh13256/build.sh build
chmod +x ./build
./build build_loanWL $1 "${xROOT}/$LWL_COMPILE/"
rm -f ./build
else
echo Unknown Log file for do compile: $1
fi
echo "========== Compile ENDED: `date` Logged to $1 =========="
echo "========== Compile ENDED: `date` Logged to $1 ==========" >> $1
}
achive(){
currdate=`date '+%m%d%H%M%S'`
cd $xROOT
archivePath=$xROOT/archive
find $archivePath -mtime +10 -exec rm -rf {} \;
if [ ! -d $archivePath ]; then
mkdir $archivePath
fi
msg=". - Archive failed"
if [ $1 = $LOGFRONT ]; then
cp $xROOT/LoansQuickTicket/compile/front/LQTFront.dstream $archivePath/LQTFront.dstream.$currdate
if [ -f $archivePath/LQTFront.dstream.$currdate ]; then
msg=". - Archived to $archivePath/LQTFront.dstream.$currdate"
fi
elif [ $1 = $LOGBACK ]; then
cp $xROOT/LoansQuickTicket/compile/back/LoansQT.dstream $archivePath/LoansQT.dstream.$currdate
if [ -f $archivePath/LoansQT.dstream.$currdate ]; then
msg=". - Archived to $archivePath/LoansQT.dstream.$currdate"
fi
elif [ $1 = $LOGLWL ]; then
cp $xROOT/$LWL_COMPILE/LoanWL.dstream $archivePath/LoanWL.dstream.$currdate
if [ -f $archivePath/LoanWL.dstream.$currdate ]; then
msg=". - Archived to $archivePath/LoanWL.dstream.$currdate"
fi
fi
chmod 777 $archivePath/*
echo $msg
echo $msg >> $1
}
sendToHermes(){
cp /home/sh13256/build.sh build
chmod +x ./build
if [ $# -lt 2 ]; then
./build hermes
rm ./build
exit
fi
if [ $1 = $LOGFRONT ]; then
./build hermes $2 lqtfront $3
elif [ $1 = $LOGBACK ]; then
./build hermes $2 lqtback $3
elif [ $1 = $LOGLWL ]; then
./build hermes $2 loanwl $3
elif [ $1 = $LOG_DB ]; then
./build hermes $2 lqtdb $3
fi
rm ./build
}
doPrepareProcess(){
rm -f $1
updateCode $1
lazyPrepare $1 $2
}
doPostPreparePorcess(){
doCompile $1
achive $1
BRANCH='Trunk'
RESULT='FAILED'
PROJ_NAME=''
if [ $1 = $LOGFRONT ]; then
if [ ${LQT_BRANCH} ]; then
BRANCH=${LQT_BRANCH}
fi
DSTREAM=$xROOT/LoansQuickTicket/compile/front/LQTFront.dstream
if [ -f $DSTREAM ] and [ $DSTREAM -nt $1 ]; then
RESULT='SUCCESS'
fi
PROJ_NAME='LQTFront'
elif [ $1 = $LOGBACK ]; then
if [ ${LQT_BRANCH} ]; then
BRANCH=${LQT_BRANCH}
fi
DSTREAM=$xROOT/LoansQuickTicket/compile/back/LoansQT.dstream
if [ -f $DSTREAM ] and [ $DSTREAM -nt $1 ]; then
RESULT='SUCCESS'
fi
PROJ_NAME='LoansQT'
elif [ $1 = $LOGLWL ]; then
if [ ${LWL_BRANCH} ]; then
BRANCH=${LWL_BRANCH}
fi
DSTREAM=$xROOT/$LWL_COMPILE/LoanWL.dstream
if [ -f $DSTREAM ] and [ $DSTREAM -nt $1 ]; then
RESULT='SUCCESS'
fi
PROJ_NAME='LoanWL'
fi
sendMail "${RESULT}_${PROJ_NAME}_${BRANCH}_${xROOT}" $1
}
#====================== LQT Update - Compile ======================
if [ $CMD = $CMD_BACK ]; then
if [ -d $xROOT/LoansQuickTicket/LQT ]; then
doPrepareProcess $LOGBACK $2
doPostPreparePorcess $LOGBACK
else
echo
echo "Build folder not fund."
echo "Required $xROOT/LoansQuickTicket/LQT"
fi
elif [ $CMD = $CMD_FRONT ]; then
if [ -d $xROOT/LoansQuickTicket/LQT ]; then
doPrepareProcess $LOGFRONT $2
doPostPreparePorcess $LOGFRONT
else
echo
echo "Build folder not fund."
echo "Required $xROOT/LoansQuickTicket/LQT"
fi
#====================== LQT Compile Only ======================
elif [ $CMD = ${CMD_BACK}C ]; then
if [ -d $xROOT/LoansQuickTicket/LQT ]; then
rm -f $LOGBACK
doPostPreparePorcess $LOGBACK
else
echo
echo "Build folder not fund."
echo "Required $xROOT/LoansQuickTicket/LQT"
fi
elif [ $CMD = ${CMD_FRONT}C ]; then
if [ -d $xROOT/LoansQuickTicket/LQT ]; then
rm -f $LOGFRONT
doPostPreparePorcess $LOGFRONT
else
echo
echo "Build folder not fund."
echo "Required $xROOT/LoansQuickTicket/LQT"
fi
#====================== LQT Update - Compile Together ======================
elif [ $CMD = ${CMD_LQT} ]; then
rm -f ${LOGFRONT}
updateCode ${LOGFRONT}
lazyPrepare ${LOGFRONT} $2
doPostPreparePorcess $LOGFRONT &
rm -f $LOGBACK
doPostPreparePorcess $LOGBACK
#====================== LQT Hermes ======================
elif [ $CMD = ${CMD_BACK}H ]; then
if [ $# -lt 2 ]; then
Usage
fi
if [ -d $xROOT/LoansQuickTicket/LQT ]; then
doPrepareProcess $LOGBACK
sendToHermes $LOGBACK $2 $3
else
echo
echo "Build folder not fund."
echo "Required $xROOT/LoansQuickTicket/LQT"
fi
elif [ $CMD = ${CMD_FRONT}H ]; then
if [ $# -lt 2 ]; then
Usage
fi
if [ -d $xROOT/LoansQuickTicket/LQT ]; then
doPrepareProcess $LOGFRONT
sendToHermes $LOGFRONT $2 $3
else
echo
echo "Build folder not fund."
echo "Required $xROOT/LoansQuickTicket/LQT"
fi
#====================== LWL Update - Compile Together ======================
elif [ $CMD = $CMD_LWL ]; then
if [ -d $xROOT/zTRSBackEnd ]; then
doPrepareProcess $LOGLWL $2
doPostPreparePorcess $LOGLWL
else
echo
echo "Build folder not fund."
echo "Required $xROOT/zTRSBackEnd"
fi
#====================== LWL Hermes ======================
elif [ $CMD = ${CMD_LWL}H ]; then
if [ $# -lt 2 ]; then
Usage
fi
if [ -d $xROOT/zTRSBackEnd ]; then
doPrepareProcess $LOGLWL
sendToHermes $LOGLWL $2 $3
else
echo
echo "Build folder not fund."
echo "Required $xROOT/LoansQuickTicket/LQT"
fi
#====================== LQT DB Hermes ======================
elif [ $CMD = ${CMD_LQTDBH} ]; then
if [ $# -lt 2 ]; then
Usage
fi
echo " -- checking out -- "
cp /home/sh13256/checkout.sh checkout
chmod +x ./checkout
./checkout DB >> $LOG_DB 2>&1
rm ./checkout
echo " -- sending to Hermes -- "
sendToHermes $LOG_DB $2 $3 >> $LOG_DB 2>&1
sendMail "LoansQTDB_Send_To_Hermes_${xROOT}" $LOG_DB
else
Usage
fi
发表评论
-
unix study
2012-06-21 16:47 605dgfffffffffffffffffffffffffffff ... -
unix
2012-06-19 17:41 0fetgggggggggggggggggggggggggggg ... -
checkout.sh
2012-06-19 17:32 749ME=checkout.sh #echo - Check f ... -
gbuild.sh
2012-06-19 17:29 971ME=gbuild.sh #echo - Check for ... -
build.sh
2012-06-19 17:21 797ME=build.sh #echo - Check for ... -
tree.ksh
2012-06-19 15:18 591#!/bin/bash # tree.sh # Writt ... -
project -lib4
2012-06-18 17:02 0dffffffffffffffffffffffffffffff ... -
prject - lib3
2012-06-18 16:55 0sdfsdgreyyyyhhhhhhhhhhhhhhhh -
prject -lib2
2012-06-18 16:52 0sddddddddddddddddddddddddf -
project1 - lib
2012-06-18 16:48 0sfffffffffffffffffff -
project1
2012-06-18 16:45 0sfsfdsfdsffdf -
build.ksh
2012-06-06 17:22 765#! /bin/sh #################### ... -
tool.ksh
2012-06-06 10:34 623#! /bin/sh ################## ... -
Question
2012-05-08 13:56 6521. java存在内存泄露吗?什么情况下会出现? 2. ind ... -
Unix kshell fragments arrangement
2012-05-08 11:24 585RESP="" 判断是否为空 : if [ ...
相关推荐
ubuntu执行.sh文件,1 .sh文件是Ubuntu下可执行文件,首先需要确定它的权限是否是可执行的,2、 用vim打开sh文件,3、查看文件格式:4. 修改文件格式: 5. 保存退出: 6. 执行:./filename 注意:不可以用sh ...
命令输入工具(终端模拟器,可在自带的应用商店中搜索下载 一个551k大小的安装包),公开版官方包(官网中下载),脚本文件global.sh 手机必须彻底root(自带root开启后下载Kingroot获取完整权限 这个root不用担心...
linux服务器,springboot,spring cloud、spring ...sh start.sh start sh start.sh stop sh start.sh restart sh start.sh status 或者: ./start.sh start ./start.sh stop ./start.sh restart ./start.sh status
startup.sh linux 启动jar包命令startup.sh linux 启动jar包命令startup.sh linux 启动jar包命令startup.sh linux 启动jar包命令startup.sh linux 启动jar包命令
tinyos.sh文件,在linux环境下生成,cygwin环境下可用,tinyos.sh文件总出问题的可以下载,将绝对路径修改成自己的
The following scripts are located in obisolaris.tar.gz (2013-07-12) obimon (0.1) - monitor memory and connection...unpackDbx.sh.sh (0.2) - extracts dbx from Studio 12.3 download. See instructions below.
startServer.sh
linux通用版本jar启动脚本傻瓜式启动 sh run.sh start 启动 sh run.sh stop 停止 nohup java -jar XXX.jar & nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行
liunx 一键安装jdk脚本,实现jdk 一键安装 (bash jdk_install.sh)
ubuntu执行.sh文件
get-docker.sh docker安装脚本,可直接执行 sh get-docker.sh --mirror Aliyun 安装
BA 5070 齿轮减速机 H.SH, H.HH, H.DH, H.KH, H.HM, H.DM, H.KM, B.SH, B.HH, B.DH, B.KH, B.HM, B.DM, B.KM Sizpdf,
UnSHc, UnSHc如何解密 SHc *.sh.x 加密文件? UnSHcUnSHc - 如何解密 SHc *.sh.x 加密文件?请注意我不会给任何人解密任何文件。 GitHub上的问题只是讨论 Bug 和/或者工具"unshc"的改进。如果你认为你找到了一个 Bug...
鉴于K8S1.9.6版本 需要提前拉取镜像到服务器,本开发脚本里面罗列了1.9.6版本所要依赖的全部的镜像只需要到对应的主机上执行 ./image.sh 即可 其中etcd 那个镜像超慢,等待一会儿就好
如:* * * * * sh /home/kaiyuanuser/webspace/shell/auto_process.sh * * * * * sleep 15; sh /home/kaiyuanuser/webspace/shell/auto_process.sh * * * * * sleep 30; sh /home/kaiyuanuser/webspace/shell/auto_...
sshUserSetup.sh
cmake-3.20.3-linux-x86_64.sh 该版本为Linux跨操作系统版本,从github上备份到此处 https://github.com/Kitware/CMake/releases/download/v3.20.3/cmake-3.20.3-linux-x86_64.sh
脚步可以带版本参数执行./mysql7install.sh 5.7.29,如不带参赛默认安装5.7.30。本脚步具有一定自动调优功能,可以自动跟进机器资源完整部分参数调优,可供中型企业使用。这不能删除,也不能替换上传内容有点蛋疼呀...
cmake-3.15.0-rc4-Linux-x86_64.sh是Ubuntu上的Cmake工具,chmod +x cmake-3.15.0-rc4-Linux-x86_64.sh 修改权限,然后选择加压目录
CentOS7的yum原。解压执行install.sh自动替换163源。