#!/bin/bash cd ~ WORKSPACE=$(pwd) echo ${WORKSPACE} # 41A、51M、41/51 三分代码 是否需要重新下载; RD_41A=$1 RD_51M=$2 RD_4151=$3 # 换服务器编译时,这里的PATH要以新服务器的环境变量重新配置 export PATH=/opt/git-repo:/usr/lib/jvm/java-8-openjdk-amd64/bin:/home/wangjianfeng/.vscode-server/bin/d2e414d9e4239a252d1ab117bd7067f125afd80a/bin:/opt/git-repo:/usr/lib/jvm/java-8-openjdk-amd64/bin:/home/wangjianfeng/.vscode-server/bin/d2e414d9e4239a252d1ab117bd7067f125afd80a/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin # 更新完后,等待gerrit释放; function WaitGerritFree() { sleep 600 } # ---------------------更新41A代码---------------------; function sync_41A() { cd ${WORKSPACE} if [ $RD_41A == true ]; then if [ -d "${WORKSPACE}/dailybuildA" ]; then echo "rm -rf ${WORKSPACE}/dailybuildA begin "$(date +"%Y-%m-%d %T") rm -rf $WORKSPACE/dailybuildA echo "rm -rf ${WORKSPACE}/dailybuildA finished "$(date +"%Y-%m-%d %T") fi # 创建目录; mkdir ${WORKSPACE}/dailybuildA echo "mkdir dailybuildA finished "$(date +"%Y-%m-%d %T") else # 路径是否存在; if [ ! -d $WORKSPACE/dailybuildA ]; then RD_41A=true # 创建目录; mkdir ${WORKSPACE}/dailybuildA echo "RD_41A: "${RD_41A} fi fi cd ${WORKSPACE}/dailybuildA/ echo "路径:"${WORKSPACE}/dailybuildA/ if [ $RD_41A == true ]; then echo "更新开始: "`pwd` repo init -u ssh://10.126.16.60:29418/rt41A_manifest -m odin-gms.xml -b realtek/mac7p/android-11/scbc sleep 120 else echo "无须重新下载: "${RD_41A} fi # 更新失败; echo "repo init dailybuildA finished "$(date +"%Y-%m-%d %T") repo sync -j8 echo "repo sync dailybuildA finished "$(date +"%Y-%m-%d %T") echo -e "##############################################################################################\n\n\n" WaitGerritFree } # ---------------------更新51M代码---------------------; function sync_51M() { cd ${WORKSPACE} if [ $RD_51M == true ]; then if [ -d "${WORKSPACE}/dailybuildM" ]; then echo "rm -rf ${WORKSPACE}/dailybuildM begin "$(date +"%Y-%m-%d %T") rm -rf $WORKSPACE/dailybuildM echo "rm -rf ${WORKSPACE}/dailybuildM finished "$(date +"%Y-%m-%d %T") fi # 创建目录; mkdir ${WORKSPACE}/dailybuildM echo "mkdir dailybuildM finished "$(date +"%Y-%m-%d %T") else # 路径是否存在; if [ ! -d $WORKSPACE/dailybuildM ]; then RD_51M=true # 创建目录; mkdir ${WORKSPACE}/dailybuildM echo "RD_51M: "${RD_51M} fi fi cd ${WORKSPACE}/dailybuildM/ echo "路径:"${WORKSPACE}/dailybuildM/ if [ $RD_51M == true ]; then echo "更新开始: "`pwd` repo init -u ssh://10.126.16.60:29418/rt51M_manifest -m odin-gms.xml -b realtek/merlin5/android-11/scbc sleep 120 else echo "无须重新下载: "${RD_51M} fi # 更新失败; echo "repo init dailybuildM finished "$(date +"%Y-%m-%d %T") repo sync -j8 echo "repo sync dailybuildM finished "$(date +"%Y-%m-%d %T") echo -e "##############################################################################################\n\n\n" WaitGerritFree } # ---------------------更新4151代码---------------------; function sync_4151() { cd ${WORKSPACE} if [ $RD_4151 == true ]; then if [ -d "${WORKSPACE}/dailybuild" ]; then echo "rm -rf ${WORKSPACE}/dailybuild begin "$(date +"%Y-%m-%d %T") rm -rf $WORKSPACE/dailybuild echo "rm -rf ${WORKSPACE}/dailybuild finished "$(date +"%Y-%m-%d %T") fi # 创建目录; mkdir ${WORKSPACE}/dailybuild echo "mkdir dailybuild finished "$(date +"%Y-%m-%d %T") else # 路径是否存在; if [ ! -d $WORKSPACE/dailybuild ]; then RD_4151=true # 创建目录; mkdir ${WORKSPACE}/dailybuild echo "RD_4151: "${RD_4151} fi fi cd ${WORKSPACE}/dailybuild/ echo "路径:"${WORKSPACE}/dailybuild/ if [ $RD_4151 == true ]; then echo "更新开始: "`pwd` repo init -u ssh://10.126.16.60:29418/rt2841_manifest -m odin-gms.xml -b master sleep 120 else echo "无须重新下载: "${RD_4151} fi # 更新失败; echo "repo init dailybuild finished "$(date +"%Y-%m-%d %T") repo sync -j8 echo "repo sync dailybuild finished "$(date +"%Y-%m-%d %T") echo -e "##############################################################################################\n\n\n" WaitGerritFree } function main() { # 如果参数没有被传入参数,默认为false if [ ! $RD_41A ]; then RD_41A=false fi if [ ! $RD_51M ]; then RD_51M=false fi if [ ! $RD_4151 ]; then RD_4151=false fi echo "RD_41A=${RD_41A}, RD_51M=${RD_51M}, RD_4151=${RD_4151}" sync_41A sync_51M sync_4151 echo "all sync finished" } main