博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
gitlab+jenkins+pipeline打包java项目
阅读量:5942 次
发布时间:2019-06-19

本文共 2663 字,大约阅读时间需要 8 分钟。

背景:使用gitlab+jenkins+pipeline打包java项目

1.配置jenkins+pipeline项目
gitlab+jenkins+pipeline打包java项目
备注上面的代码项 目 地址:http://git.bqjr.club/NCP/new_crm_platform.git&lt;br/&gt;<br/>服务器地址:PRD 环境192.168.5.75 &lt;br/&gt;<br/>项目 经理:&lt;br/&gt;<br/>开发 人员:&lt;br/&gt;<br/>&lt;p style="color: #e9013b !important;font-weight: 700;"&gt;注意事项: 由于生产环境是负载均衡, 请注意单台部署! &lt;/p&gt;
2.配置pipeline
gitlab+jenkins+pipeline打包java项目
备注:上面的代码&lt;p style="color: #e9013b !important;font-weight: 700;"&gt;选择分支,根据项目组提供的分支构建&lt;/p&gt;
3.pipeline语法
`node {
try {
stage('代码拉取') {
//input id: 'ncpprd', message: '发布生产请找-/admin--批准?', ok: '确认', submitter: 'admin,xiongxinjiang'
sh "rm -rf /var/lib/jenkins/jobs/prd-mt-ncp75/workspace/*"
git branch: "${BranchName}", credentialsId: 'xiongxj', url: ''
}
stage('项目构建') {
sh "/usr/local/maven/bin/mvn -Dmaven.test.skip=true clean package"
}
stage('上传WAR包') {
sh "scp -P 10022 target/ncp-0.0.1-SNAPSHOT.war bqadm@192.168.5.75:/home/bqadm/sftp/"
}
stage('项目部署'){
sh "ssh -p 10022 bqadm@192.168.5.75 'sudo sh -x /opt/shell/ncp_deploy75.sh'"

} }catch (any) {    currentBuild.result = 'FAILURE'    throw any}

}`

4.ncp_deploy75.代码

#/bin/bash#买买提新客服平台系统自动部署脚本 适用tomcat程序JAVA_HOME=/usr/local/jdk1.8.0_144JRE_HOME=/usr/local/jdk1.8.0_144/jreCLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/libPATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/binCATALINA_HOME=/opt/ncp-tomcatexport JAVA_HOME JRE_HOME CLASS_PATH PATH############################################app_name=ncp-tomcatecho "==============[停止tomcat]=================="/opt/ncp-tomcat/bin/catalina.sh stop#ps -ef |grep -v grep  |grep "${app_name}"ps -ef |grep java |grep "${app_name}" |grep -v grep  if [ "$?" == 0 ];then    for x in `ps -ef |grep -v grep |grep java |grep "${app_name}" |awk '{print $2}'`;do        echo "Killing pid $x ..."        sudo  kill -15 $x    doneelse    echo "Stop app [ SUCCESS ]"fisleep 3ps -ef |grep -v grep |grep java |grep "${app_name}"  if [ "$?" == 0 ];then    for x in `ps -ef |grep -v grep |grep java |grep "${app_name}" |awk '{print $2}'`;do        echo "Killing pid $x ..."        sudo  kill -9 $x    doneelse    echo "Stop app [ SUCCESS ]"sleep 3fiecho "==============文件备份========================"if [ ! -f "/home/bqadm/sftp/ncp-0.0.1-SNAPSHOT.war" ];then   echo "没有文件或已为最新文件"else  sudo mv /opt/ncp-tomcat/webapps/ncp.war /opt/war_bak/ncp.war_$(date +%Y-%m-%d_%H%M%S)  sudo rm -rf /opt/ncp-tomcat/webapps/*echo "============拷贝文件======================"   mv /home/bqadm/sftp/ncp-0.0.1-SNAPSHOT.war  /opt/ncp-tomcat/webapps/ncp.war   sleep 5   echo "================重启tomcat============"   /opt/ncp-tomcat/bin/startup.sh   sleep 10   ps -ef |grep java |grep "${app_name}" |grep -v grepfi

转载于:https://blog.51cto.com/whitehat/2399403

你可能感兴趣的文章
Java温故而知新(1)集合类
查看>>
使用T2表中的值替换T1表的值
查看>>
以sysdba身份登录oracle报ORA-1031权限不足错误之完美分析
查看>>
mac navicat premium 使用技巧
查看>>
default.html
查看>>
课本学习笔记5:第七章 20135115臧文君
查看>>
C# 导出word文档及批量导出word文档(2)
查看>>
最大子数组
查看>>
网站(陆续更新)
查看>>
17个提升iOS开发效率的神器
查看>>
android 3.0+百度地图api地图如何移动到指定的经纬度处
查看>>
点权生成树(gentree)
查看>>
[POJ 3270]Cow Sorting
查看>>
Mysql分析-profile详解
查看>>
WebServiceHost 在ConsoleApplication中使用时添加命名空间添加不上,报错
查看>>
《蚁贼》
查看>>
王工的权限理解
查看>>
最大的算式
查看>>
让PHP更快的提供文件下载 【转】
查看>>
Oauth2认证以及新浪微博开放平台应用
查看>>