zoukankan      html  css  js  c++  java
  • 使用jenkins的SSH Publishers远程执行

    使用jenkins的SSH Publishers远程执行

    配置 SSH Servers

    如图,系统管理->系统设置->SSH Servers
    点击
    往下翻到:


    远程脚本功能说明

    本次远程脚本需要实现:
    a.将WORKERSPACE下面的包传到远程服务器上
    b.备份包
    c.更新包
    d.kill掉旧得进程
    e.启动进程

    具体操作:

    1. 添加git仓库登录的账户



    2. 配置git仓库地址:
      创建一个自由风格的项目,给项目配置:

    3. 配置构建命令:

    4. 配置远程机器:

      在Exec command中配置需要在远程机器上执行的脚本
      这里脚本最好是在linux机器上编写好再复制过来。直接在jenkins界面上编写容易出现中文字符的空格导致执行失败且不会有报错提示

    #/bin/sh
    
    #jar包名称
    JAR_NAME=voneDAO-file-service.jar
    #内存参数大小
    JVM_OPS="-Xmx256m -Xms256m"
    #发布的环境
    #ENV="--spring.profiles.active=test"
    ENV='--spring.profiles.active=test --spring.cloud.consul.host=10.10.3.88'
    #日志路径
    LOG_HOME='/data/vonedao/log'
    ##项目日志名称
    LOG_NAME='file'
    #新包存放路径
    UPDATE_JAR='/data/vonedao/jar'
    #项目路径
    JAR_HOME='/data/vonedao'
    #包备份路径
    BAK_HOME='/data/vonedao/bak'
    
    
    
    #下面参数顺序不需要变动
    sh -x /data/vonedao/jar.sh ${JAR_NAME},${ENV},${LOG_HOME},${UPDATE_JAR},${JAR_HOME},${BAK_HOME},${LOG_NAME},${JVM_OPS},${BUILD_ID}
    
    

    编写在服务器10.10.3.88上的/data/vonedao/jar.sh:

    #/bin/sh
    
    string="$*"
    JAR_NAME=`echo $string | awk -F ',' '{print $1}'`
    ENV=`echo $string | awk -F ',' '{print $2}'`
    LOG_HOME=`echo $string | awk -F ',' '{print $3}'`
    UPDATE_JAR=`echo $string | awk -F ',' '{print $4}'`
    JAR_HOME=`echo $string | awk -F ',' '{print $5}'`
    BAK_HOME=`echo $string | awk -F ',' '{print $6}'`
    NAME=`echo $string | awk -F ',' '{print $7}'`
    JVM_OPS=`echo $string | awk -F ',' '{print $8}'`
    BUILD_ID=`echo $string | awk -F ',' '{print $9}'`
    
    
    PID=`pgrep -f "java*.*${JAR_NAME}"`
    
    if [ -f "${JAR_HOME}/${JAR_NAME}" ];then
    cp ${JAR_HOME}/${JAR_NAME} ${BAK_HOME}/${JAR_NAME}_${BUILD_ID}
    fi
    
    cp ${UPDATE_JAR}/${JAR_NAME}  ${JAR_HOME}  -rf
    
    if [ -n "$PID" ]; then
        kill -9 ${PID}
    fi
    
    cd ${JAR_HOME}/
    nohup /data/jdk/bin/java -jar ${JVM_OPS} ./${JAR_NAME} ${ENV} >${LOG_HOME}/${NAME}.log 2>&1 &
    
    

    保存后,构建:


    去服务器10.10.3.88上查看:

  • 相关阅读:
    std thread
    windows更新包发布地址
    How to set up logging level for Spark application in IntelliJ IDEA?
    spark 错误 How to set heap size in spark within the Eclipse environment?
    hadoop 常用命令
    windows 安装hadoop 3.2.1
    windows JAVA_HOME 路径有空格,执行软连接
    day01MyBatisPlus条件构造器(04)
    day01MyBatisPlus的CRUD 接口(03)
    day01MyBatisPlus入门(02)
  • 原文地址:https://www.cnblogs.com/zoujiaojiao/p/12574016.html
Copyright © 2011-2022 走看看