Execute shell Command

BUILD_ID=DONTKILLME
if [ ! -d "/usr/jenkins/$JOB_NAME" ]; then
mkdir /usr/jenkins/$JOB_NAME
fi
cd /usr/jenkins/$JOB_NAME
rm -rf *
cp $JENKINS_HOME/workspace/$JOB_NAME/target/*.zip ./
unzip -o *.zip
cd /usr/zocrm/server/tomcat8/zocrm/bin

PROJECT=/usr/zocrm/server/tomcat8/zocrm/
echo "--------------shutdown tomcat server-------------"

count=`ps -ef|grep -v 'grep'|grep $PROJECT |awk '{print $2}'|wc -l`
if [ $count -gt 0 ];then
echo "kill running process, please waiting..."
kill -9 `ps -ef|grep -v 'grep'|grep $PROJECT|awk '{print $2}'`
sleep 1
else
echo "--------------shutdown tomcat done -------------"
fi

rm -rf /usr/zocrm/projects/zocrm/WEB-INF/classes/cn/aresoft
rm -rf /usr/zocrm/projects/zocrm/WEB-INF/lib
unzip -o /usr/jenkins/$JOB_NAME/*.war -d /usr/zocrm/projects/zocrm
export JAVA_PATH=/usr/bin
export JRE_HOME=/usr
./startup.sh

*********************************日志************************************************

Started by user dev
Building in workspace /root/.jenkins/workspace/zocrm-147
Updating https://172.10.10.101/svn/路径 at revision '2019-05-27T15:49:42.625 +0800'
Using sole credentials liaokai/****** in realm ‘<https://172.10.10.100:443> VisualSVN Server’
U
At revision 9695

Using sole credentials liaokai/****** in realm ‘<https://172.10.10.100:443> VisualSVN Server’
Parsing POMs
using global settings config with name MyGlobalSettings
Replacing all maven server entries not found in credentials list is true
Established TCP socket on 33518
[zocrm-147] $ /usr/jenkins/jdk1.8.0_152/bin/java -cp /root/.jenkins/plugins/maven-plugin/WEB-INF/lib/maven35-agent-1.12-alpha-1.jar:/root/.jenkins/tools/hudson.tasks.Maven_MavenInstallation/maven3/boot/plexus-classworlds-2.5.2.jar:/root/.jenkins/tools/hudson.tasks.Maven_MavenInstallation/maven3/conf/logging jenkins.maven3.agent.Maven35Main /root/.jenkins/tools/hudson.tasks.Maven_MavenInstallation/maven3 /root/.jenkins/war/WEB-INF/lib/remoting-3.10.2.jar /root/.jenkins/plugins/maven-plugin/WEB-INF/lib/maven35-interceptor-1.12-alpha-1.jar /root/.jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.12-alpha-1.jar 33518
<===[JENKINS REMOTING CAPACITY]===>channel started
using global settings config with name MyGlobalSettings
Replacing all maven server entries not found in credentials list is true
Executing Maven: -B -f /root/.jenkins/workspace/zocrm-147/pom.xml -gs /tmp/global-settings127350087469421300.xml clean package -Pdev
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building zocrm.manager 2.1.6
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ zocrm.manager ---
[INFO] Deleting /root/.jenkins/workspace/zocrm-147/target
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ zocrm.manager ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 860 resources
[INFO] Copying 14 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.3:compile (default-compile) @ zocrm.manager ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1488 source files to /root/.jenkins/workspace/zocrm-147/target/classes
[INFO] /root/.jenkins/workspace/zocrm-147/src/cn/aresoft/manager/push/UmengNotification.java: Some input files use or override a deprecated API.
[INFO] /root/.jenkins/workspace/zocrm-147/src/cn/aresoft/manager/push/UmengNotification.java: Recompile with -Xlint:deprecation for details.
[INFO] /root/.jenkins/workspace/zocrm-147/src/cn/aresoft/manager/service/impl/redis/RedisCacheStorageServiceImpl.java: Some input files use unchecked or unsafe operations.
[INFO] /root/.jenkins/workspace/zocrm-147/src/cn/aresoft/manager/service/impl/redis/RedisCacheStorageServiceImpl.java: Recompile with -Xlint:unchecked for details.
[INFO]
[INFO] --- aspectj-maven-plugin:1.7:compile (default) @ zocrm.manager ---
[INFO] Showing AJC message detail for messages of types: [error, warning, fail]
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ zocrm.manager ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /root/.jenkins/workspace/zocrm-147/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.3:testCompile (default-testCompile) @ zocrm.manager ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ zocrm.manager ---
[INFO] No tests to run.
[JENKINS] Recording test results
[INFO]
[INFO] --- maven-war-plugin:2.6:war (default-war) @ zocrm.manager ---
[INFO] Packaging webapp
[INFO] Assembling webapp [zocrm.manager] in [/root/.jenkins/workspace/zocrm-147/target/zocrm.manager-2.1.6]
[INFO] Processing war project
[INFO] Copying webapp resources [/root/.jenkins/workspace/zocrm-147/webapp]
[INFO] Webapp assembled in [1695 msecs]
[INFO] Building war: /root/.jenkins/workspace/zocrm-147/target/zocrm.manager-2.1.6.war
[INFO]
[INFO] --- maven-assembly-plugin:2.4:single (makezip) @ zocrm.manager ---
[INFO] Reading assembly descriptor: assembly.xml
[INFO] Building zip: /root/.jenkins/workspace/zocrm-147/target/zocrm2.1.6.zip
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 45.512 s
[INFO] Finished at: 2019-05-27T15:50:38+08:00
[INFO] Final Memory: 37M/433M
[INFO] ------------------------------------------------------------------------
[JENKINS] Archiving /root/.jenkins/workspace/zocrm-147/pom.xml to zocrm.manager/zocrm.manager/2.1.6/zocrm.manager-2.1.6.pom
[JENKINS] Archiving /root/.jenkins/workspace/zocrm-147/target/zocrm.manager-2.1.6.war to zocrm.manager/zocrm.manager/2.1.6/zocrm.manager-2.1.6.war
[JENKINS] Archiving /root/.jenkins/workspace/zocrm-147/target/zocrm2.1.6.zip to zocrm.manager/zocrm.manager/2.1.6/zocrm.manager-2.1.6.zip
channel stopped
[zocrm-147] $ /bin/sh -xe /tmp/jenkins1993294478867023234.sh
+ BUILD_ID=DONTKILLME
+ '[' '!' -d /usr/jenkins/zocrm-147 ']'
+ cd /usr/jenkins/zocrm-147
+ rm -rf zocrm2.1.6.zip zocrm.manager-2.1.6.war
+ cp /root/.jenkins/workspace/zocrm-147/target/zocrm2.1.6.zip ./
+ unzip -o zocrm2.1.6.zip
Archive: zocrm2.1.6.zip
extracting: zocrm.manager-2.1.6.war
+ cd /usr/zocrm/server/tomcat8/zocrm/bin
+ PROJECT=/usr/zocrm/server/tomcat8/zocrm/
+ echo '--------------shutdown tomcat server-------------'
--------------shutdown tomcat server-------------
++ ps -ef
++ grep -v grep
++ grep /usr/zocrm/server/tomcat8/zocrm/
++ awk '{print $2}'
++ wc -l
+ count=3
+ '[' 3 -gt 0 ']'
+ echo 'kill running process, please waiting...'
kill running process, please waiting...
++ ps -ef
++ grep -v grep
++ grep /usr/zocrm/server/tomcat8/zocrm/
++ awk '{print $2}'
+ kill -9 4388 4389 4390
+ sleep 1
+ rm -rf /usr/zocrm/projects/zocrm/WEB-INF/classes/cn/aresoft
+ rm -rf /usr/zocrm/projects/zocrm/WEB-INF/lib
+ unzip -o /usr/jenkins/zocrm-147/zocrm.manager-2.1.6.war -d /usr/zocrm/projects/zocrm
Archive: /usr/jenkins/zocrm-147/zocrm.manager-2.1.6.war
inflating: ...........正文。。。。。。
+ export JAVA_PATH=/usr/bin
+ JAVA_PATH=/usr/bin
+ export JRE_HOME=/usr
+ JRE_HOME=/usr
+ ./startup.sh
Tomcat started.
Process leaked file descriptors. See https://jenkins.io/redirect/troubleshooting/process-leaked-file-descriptors for more information
Finished: SUCCESS

jenkins 自动化部署的更多相关文章

  1. Linux下的Jenkins+Tomcat+Maven+Gitlab+Shell环境的搭建使用(jenkins自动化部署)

    jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...

  2. Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)【转】

    jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...

  3. Jenkins自动化部署代码

    通过jenkins自动化部署项目代码可以大幅度节省打包上传部署的时间,提高开发测试的工作效率 ========== 完美的分割线 =========== 1.Jenkins是什么 1)Jenkins是 ...

  4. Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)

    jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...

  5. AspNetCore容器化(Docker)部署(四) —— Jenkins自动化部署

    一.前言 (Jenkins.Docker.Git/Svn组建一套简单的自动化发布流程) 文章中用到的相关服务器角色 角色 环境 功能 开发机 Win10.Docker(Linux OS) 编码.调试 ...

  6. jenkins自动化部署项目1--下载安装启动(windows)

    年初以来断断续续研究jenkins自动化部署项目,前些天终于搞定了,接下来一点点把做的时候遇到的坑以及自己的心得写下来,方便以后复用. 我的jenkins服务是是部署在windows上的 一.下载安装 ...

  7. Jenkins自动化部署入门详细教程

    大纲 1.背景 在实际开发中,我们经常要一边开发一边测试,当然这里说的测试并不是程序员对自己代码的单元测试,而是同组程序员将代码提交后,由测试人员测试: 或者前后端分离后,经常会修改接口,然后重新部署 ...

  8. Windows环境下实现Jenkins自动化部署

    详见:https://blog.csdn.net/Try_harder_every_day/article/details/79170065 Jenkins自动化部署: 几条具体的思路:1.开发人员将 ...

  9. Jenkins 自动化部署上线

    转载于互联网 jenkins自动化部署项目,通过jenkins 部署来节省运维时间,不需要手动cp上线及版本发布 Jenkins 自动化部署上线 Jenkins Jenkins 自动化部署上线一.Je ...

  10. docker安装jenkins自动化部署

    Docker之Jenkins自动化部署 1.拉取jenkins镜像images(类比:java中的类) docker pull jenkinsci/jenkins:lts 或 docker pull ...

随机推荐

  1. ASP内置对象—Request、Response 、Server、Application 、ObjectContent (二)

    Response (应答)对象 Request 对象.用于在HTTP请求期间,訪问不论什么client浏览器传递给server的信息,包含通过URL传递的參数信息.使用GET方法或POST方法传递的H ...

  2. 【cl】字符串

    使用单引号(') 你可以用单引号指示字符串,就如同‘How are you’这样.所有的空白,即空格跟制表符都照原样保留 使用双引号(“) 在双引号中的字符串与单引号中的字符串的使用完全相同,例如“W ...

  3. 【iOS开发-80】Quartz2D画图简单介绍:直线/圆形/椭圆/方形以及上下文栈管理CGContextSaveGState/CGContextRestoreGState

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2Vpc3ViYW8=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...

  4. 编程基础知识——C++能不能支持Java和ObjC的反射?

    C++能不能支持Java和ObjC的反射? 要回答这个问题.首先我们要清楚什么是反射.什么是反射? 教科书的解释我就不说了,(^o^)事实上我也记不得.实际开发应用的反射就是在没有某个类型的头文件或者 ...

  5. UVa 572 - Oil Deposits (简单dfs)

    Description GeoSurvComp地质调查公司负责探測地下石油储藏. GeoSurvComp如今在一块矩形区域探測石油.并把这个大区域分成了非常多小块.他们通过专业设备.来分析每一个小块中 ...

  6. '无法将“vue”项识别为 cmdlet、函数、脚本文件或可运行程序的名称' 或 'vue不是内部或外部命令' 的解决方法

    如果在使用 vue 初始化项目的时候提示: vue : 无法将“vue”项识别为 cmdlet.函数.脚本文件或可运行程序的名称.请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次. 或者: ...

  7. GIT 源码管理-简介

    关于GIT GIT 是一个分布式版本控制软件,最初由林纳斯·托瓦兹(Linus Torvalds)创作,于2005年以GPL发布.最初目的是为更好地管理Linux内核开发而设计.是目前世界上最先进的分 ...

  8. spark 按照key 分组 然后统计每个key对应的最大、最小、平均值思路——使用groupby,或者reduceby

    What you're getting back is an object which allows you to iterate over the results. You can turn the ...

  9. Linux查找并杀死僵尸进程

    1.查看系统是否有僵尸进程 使用Top命令查找,当zombie前的数量不为0时,即系统内存在相应数量的僵尸进程. 2.定位僵尸进程 使用命令ps -A -ostat,ppid,pid,cmd |gre ...

  10. BZOJ 2729 高精度+组合数学

    思路: 考虑 把男生排成一排 女生和老师往里插 分成两种情况. 1. 女生中间夹着老师 2. 女生中间没有夹着老师 求一下组合* 阶乘就好了 先放Python代码 简洁易懂 def fact(n): ...