问答详情
源自:5-2 创建Jenkins自动化部署任务

最后的shell脚本老师能不能发一波

最后的shell脚本老师能不能发一波

提问者:破南瓜 2018-06-13 22:43

个回答

  • 老钱
    2018-06-14 11:37:57

    这段脚本是为了控制如下内容

    1. 代码编译、打包

    2. 停止tomcat

    3. 部署新的war包

    4. 启动tomcat

  • 老钱
    2018-06-14 11:36:24

    #!/usr/bin/env bash
    #编译+部署order站点
    
    #需要配置如下参数
    # 项目路径, 在Execute Shell中配置项目路径, pwd 就可以获得该项目路径
    # export PROJ_PATH=这个jenkins任务在部署机器上的路径
    
    # 输入你的环境上tomcat的全路径
    # export TOMCAT_APP_PATH=tomcat在部署机器上的路径
    
    ### base 函数
    killTomcat()
    {
        pid=`ps -ef|grep tomcat|grep java|awk '{print $2}'`
        echo "tomcat Id list :$pid"
        if [ "$pid" = "" ]
        then
          echo "no tomcat pid alive"
        else
          kill -9 $pid
        fi
    }
    cd $PROJ_PATH/order
    mvn clean install
    
    # 停tomcat
    killTomcat
    
    # 删除原有工程
    rm -rf $TOMCAT_APP_PATH/webapps/ROOT
    rm -f $TOMCAT_APP_PATH/webapps/ROOT.war
    rm -f $TOMCAT_APP_PATH/webapps/order.war
    
    # 复制新的工程
    cp $PROJ_PATH/order/target/order.war $TOMCAT_APP_PATH/webapps/
    
    cd $TOMCAT_APP_PATH/webapps/
    mv order.war ROOT.war
    
    # 启动Tomcat
    cd $TOMCAT_APP_PATH/
    sh bin/startup.sh


  • 神无月Y
    2019-05-22 16:26:46

    ? 变量和=号之间不能有空格啊!!! pid = "11"错误,pid="11"正确