• jenkins配置从git指定分支下载代码,打包部署jar包


    1.如何构造一个jenkins部署?

    1.1 目标

    从git上指定分支下载代码,打包并发布到指定机器上,启动。

    1.2 实现

    如果已有项目,直接copy一份配置即可,修改一下即可使用

    如果没有配置好的,见第二节。

     

    2.配置jenkins

    2.1 General

    1)描述:项目描述

    2)丢弃旧的构建----打勾

    策略:Log Rotation 

    保持最大构建:5

    参数化构建过程----打勾 

    构造参数project就是项目名,后续部署的时候各种文件目录都使用这个参数。所以要配置好了!!!

    git 参数:

    手动选择分支构建,定义了变量branch,对应git分支名。默认master分支。如下图:

    2.2 git配置

    主要是下载git代码的url。 http://username@ip:port/**.git  下面一行是username/password(配置好后是加密的星号)

    指定下载分支$branch  就是上面配置的branch参数

    如下图:

    2.3 构建maven+最终执行脚本

    maven:指定pom.xml 和参数

    Post Steps:构建shell.  ssh登录机器后 把构建好的jar包拷贝到指定目录下,最后运行机器上的启*.sh脚本启动java服务。

    真实*.sh  shell脚本如下:

    #!/bin/bash
    #
    export JAVA_HOME=/usr/local/jdk1.8.0_221------》导入运行java所需要的环境变量
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    
    APP_NAME=${1}           ------》定义参数:应用名,外部传入参数$project就是项目名
    xms=256          ------》定义参数:启动内存
    xmx=256          ------》定义参数:最大运行内存
    APP_DIR=/data/app/${APP_NAME}------》定义参数:应用的绝对路径
    
    start()
    {
    cd ${APP_DIR}  -----》进入应用的绝对路径
    pwd
    /bin/nohup java -jar ${APP_DIR}/${APP_NAME}*.jar -Xms=${xms}m -Xmx=${xmx}m -XX:CompressedClassSpaceSize=128m -XX:+UseConcMarkSweepGC &
    echo "${APP_NAME} is running !!!!"    -----》启动命令 定义了运行内存,压缩空间,GC使用CMS ,最后打印  is running
    }
    
    restart()
    {
    PID=`ps -ef|grep java|grep ${APP_NAME}|grep -v grep|awk '{print $2}'`
    if [ "$PID" ]; then       ------》1.如果存在进程,强杀了
            kill -9 $PID
    start                     ------》再启动
    else                      ------》2.不存在进程,直接启动
    start
    fi
    }
    
    restart                   ------》入口
  • 相关阅读:
    forms组件、cookie与session
    choices参数、MTV与MVC模型、Ajax、序列化组件、sweetalert搭建页面、自定义分页器
    Django 常用字段,数据库查询优化 only与defer
    django配置代码
    django 模板层、模型层
    Django 请求生命周期、路由层
    centos6.8安装httpd后无法访问
    初次认识dedecms和帝国cms内容管理系统
    遇到一个json解码失败的问题
    关于apache配置映射端口
  • 原文地址:https://www.cnblogs.com/dennyzhangdd/p/13129394.html
Copyright © 2020-2023  润新知