Jenkins 安装 (四) 后端构建一个自由风格的软件项目
后端配置:
创建
任务名, 选中构建一个自由风格的软件项目
备注描述信息
配置 git 源码管理 (私服)
构建触发器 (默认)
构建环境 (默认)
构建 (微服务一个项目里面有多个子工程):
增加构建步骤: 选择 "调用顶层 Maven 目标"(如果没有引用类 common 可跳过)
字段 | 参数 | 说明 |
maven 版本 | Maven | 填写你自己配置的 maven 名字 |
目标 | clean install -Dmaven.test.skip=true -pl qqt-platform-common,qqt-platform-io,qqt-platform-redis -am | 我这配置的是我自己项目的引用类 |
POM | ${WORKSPACE}/pom.xml | 指定微服务项目的外层 pom.xml |
再次添加一个 "调用顶层 Maven 目标"
字段 | 参数 | 说明 |
maven 版本 | Maven | 填写你自己配置的 maven 名字 |
目标 | clean install -Dmaven.test.skip=true | 这个是编译该工程成 jar 包 |
POM | ${WORKSPACE}/qqt-platform-admin/pom.xml | 指定你要发布的微服务项目的子工程的 pom.xml |
ssh 推送 jar
字段 | 参数 | 作用 |
name | tomcat03 | ssh server 因为之前的配置会默认出现 tomcat 业务服务器的名字 |
source file | qqt-platform-admin/target/*.jar | 构建之后,在 jenkins 服务器上是可以自动看到 jar 包的。(该路径不需要创建) |
Remove prefix | 自动删除路径前缀(不需要创建路径前缀) | |
Remote directory | ssh 推送地址 | tomcat 业务服务器上的路径,需要提前在服务器 2 上创建该目录。 用来存放网站源代码编译成的 jar 包。(需要后台创建) |
Exec command | 脚本路径 | tomcat 服务器 2 在接收到源码之后的自定义动作。 比如:启动 jar 包程序等等 |
启动 jar 包的.sh 脚本
#!/bin/bash
#这里可替换为你自己的执行程序,其他代码无需更改
APP_NAME=qqt-platform-admin-1.0.0.jar
#使用说明,用来提示输入参数
usage() {
echo "Usage: sh 脚本名.sh [start|stop|restart|status]"
exit 1
}
#检查程序是否在运行
is_exist(){
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' `
#如果不存在返回1,存在返回0
if [ -z "${pid}" ]; then
return 1
else
return 0
fi
}
#启动方法
start(){
is_exist
if [ $? -eq "0" ]; then
echo "${APP_NAME} is already running. pid=${pid} ."
else
nohup /mnt/soft/java/jdk1.8.0_231/jre/bin/java -jar -Xms1024m -Xmx3072m /mnt/soft/malls/malls/admin/$APP_NAME --spring.profiles.active=dev1 > /mnt/soft/malls/malls/admin/qqt-platform-admin.log 2>&1 &
echo "${APP_NAME} start success"
fi
}
#停止方法
stop(){
is_exist
if [ $? -eq "0" ]; then
kill -9 $pid
else
echo "${APP_NAME} is not running"
fi
}
#输出运行状态
status(){
is_exist
if [ $? -eq "0" ]; then
echo "${APP_NAME} is running. Pid is ${pid}"
else
echo "${APP_NAME} is NOT running."
fi
}
#重启
restart(){
stop
start
}
#根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in
"start")
start
;;
"stop")
stop
;;
"status")
status
;;
"restart")
restart
;;
*)
usage
;;
esac
上一篇 Jenkins 安装 (三) 构建一个 Maven 工程
目录
下一篇 Jenkins 安装 (五) 前端构建一个自由风格的软件项目