1. path="${WORKSPACE}/git" # 创建目录
  2. if [ -d $path ];
  3. then
  4. echo "The files is already exists "
  5. else
  6. mkdir -p $path
  7. fi
  8.  
  9. cd $path
  10.  
  11. path="${WORKSPACE}/git/bc-common" # 创建目录
  12. if [ -d $path ];
  13. then
  14. echo "The files is already exists "
  15. else
  16. git clone git@xxx:root/bc-common.git
  17. fi
  18.  
  19. cd bc-common
  20. pwd
  21. git pull
  22.  
  23. cd BC-Comm-Basic
  24. mvn clean package -Dmaven.test.skip=true
  25. mvn install
  26.  
  27. cd ../BC-Comm-FeignEI
  28. mvn clean package -Dmaven.test.skip=true
  29. mvn install

  1. path="${WORKSPACE}/git" # 创建目录
  2. if [ -d $path ];
  3. then
  4. echo "The files is already exists "
  5. else
  6. mkdir -p $path
  7. fi
  8.  
  9. cd $path
  10.  
  11. path="${WORKSPACE}/git/bc-bas-configrepository" # 创建目录
  12. if [ -d $path ];
  13. then
  14. echo "The files is already exists "
  15. else
  16. git clone git@xxx:root/bc-bas-configrepository.git
  17. fi
  18.  
  19. cd $path
  20. pwd
  21. git pull
  1. case $Status in
  2. Deploy)
  3. echo "Status:$Status"
  4. path="${WORKSPACE}/bak/BC-BUS-PlatformServer/${BUILD_NUMBER}" # 创建每次要备份的目录
  5. if [ -d $path ];
  6. then
  7. echo "The files is already exists "
  8. else
  9. mkdir -p $path
  10. fi
  11. \cp -f ${WORKSPACE}/BC-BUS-PlatformServer/target/*.jar $path # 将打包好的jar包备份到相应目录,覆盖已存在的目标
  12. echo "Completing!"
  13. ;;
  14. Rollback)
  15. echo "Status:$Status"
  16. echo "Version:$Version"
  17. cd ${WORKSPACE}/bak/BC-BUS-PlatformServer/$Version # 进入备份目录
  18. \cp -f *.jar ${WORKSPACE}/BC-BUS-PlatformServer/target/ # 将备份拷贝到程序打包目录中,并覆盖之前的war包
  19. ;;
  20. *)
  21. exit
  22. ;;
  23. esac

  

  1. ReservedNum=6 # 保留文件数
  2. FileDir=${WORKSPACE}/bak/BC-BUS-PlatformServer/
  3. date=$(date "+%Y%m%d-%H%M%S")
  4.  
  5. cd $FileDir # 进入备份目录
  6. FileNum=$(ls -l | grep '^d' | wc -l) # 当前有几个文件夹,即几个备份
  7.  
  8. while(( $FileNum > $ReservedNum))
  9. do
  10. OldFile=$(ls -rt | head -1) # 获取最旧的那个备份文件夹
  11. echo $date "Delete File:"$OldFile
  12. rm -rf $FileDir/$OldFile
  13. let "FileNum--"
  14. done

Jenkins-java项目自动发布的更多相关文章

  1. docker swarm实现java项目的发布/滚动更新/回滚/镜像管理

    使用docker swarm滚动更新java项目,部署集群,这一切的前提是使用Jenkins+maven进行项目打包,分发等功能 具体可以参考我的另外三篇文章 https://www.cnblogs. ...

  2. eclipse项目自动发布到tomcat目录,缺文件。

    eclipse项目自动发布到tomcat目录,缺文件. 解决方案: 项目--Properties-->Deployment Assembly-->Add--> Folder Add- ...

  3. Java学习之道:Java项目打包发布

    Java项目打包发布 如果只想发布为一个可执行的jar包,使用eclipse的Export功能就可以了 使用eclipse的Export功能,将项目中的所有package打包为一个pet.jar文件, ...

  4. Java项目打包发布

    Java项目打包发布 如果只想发布为一个可执行的jar包,使用eclipse的Export功能就可以了 使用eclipse的Export功能,将项目中的所有package打包为一个pet.jar文件, ...

  5. Eclipse中将web项目自动发布到Tomcat webapps下(转)

    A:FileàDynamic Web Project[工程名:test] B:右键WebContent,New-->Jsp File C:右键test,Run AsàRun on Serverà ...

  6. Jenkins+Ansible+Gitlab自动发布/回滚Spring项目

    一.实现方法流程图 流程图如下:代码托管在本地GitLab上(为了复现整套流水线,我直接使用了GitHub,懒得再搭建GitLab),开发完成后提交代码到代码仓库,[自动]触发Jenkins进行持续集 ...

  7. 使用jenkins 实现 .net core项目自动发布到 docker

    在Docker内运行Jenkins pull镜像  docker pull jenkins/jenkins:lts Dockerfile FROM jenkins/jenkins:lts USER r ...

  8. Jenkins 搭建U3D自动发布 Android

    工具 [u3d相关的PostProcessBuildPlayer,PerformBuild.cs] 1.Jenkins 开源包  Java -jar jenkins.war,参考链接 http://w ...

  9. Jenkins 搭建U3D自动发布 IOS

    http://www.cnblogs.com/yinghuochong/archive/2013/09/01/3294940.html 1.安装包,工具略过. 2.插件管理 Subversion Pl ...

  10. Jenkins Vue项目自动构建以及构建后续操作

    Jenkins在linux上的安装教程:http://www.ityouknow.com/springboot/2017/11/11/springboot-jenkins.html 另外,关于在win ...

随机推荐

  1. 使用Font Awesome替换EasyUI的图标

    用过EasyUI的朋友都知道,大部分组件都有一个iconCls属性,用于显示一个图标.但是EasyUI自带图标数量少.不美观,于是想到了使用Font Awesome来更换和拓展这些图标. 先看看Eas ...

  2. 利用主机域名配置Apache的虚拟主机功能

    利用主机域名配置Apache的虚拟主机功能,可以减轻服务器为每一个网站分配IP地址的压力.而且根据不同的主机域名可以输出不同的网页内容.要实现此项功能,可以通过修改/etc/host文件来强制定义IP ...

  3. 8.switch语句

    switch语句语法 switch(expression){ case value : //语句 break; //可选 case value : //语句 break; //可选 //你可以有任意数 ...

  4. 用laravel Maatwebsite\Excel 教你导出漂亮的Excel表单

    先来看效果图 还算是漂亮吧 哈哈哈. 第一步当然是安装包咯 环境要求 PHP: ^7.0Laravel: ^5.5 composer require maatwebsite/excel 目前3.1 只 ...

  5. DexHunter的原理分析和使用说明(二)

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/53715325 前面的博文<Android通用脱壳工具DexHunter的原理 ...

  6. hdu4998 旋转坐标系

    题意:       一开始的时候有一个坐标系(正常的),然后有n个操作,每个操作是 x y d,意思是当前坐标系围绕x,y点逆时针旋转d度,最后让你输出三个数x y d,把这n个操作的最后结果,用一步 ...

  7. 手脱UPX3.91壳(练习)

    0x01 准备 OD UPX加壳程序 可以加壳的软件 0x02 给软件加壳 我找了半天发现winhex不错,而且是没壳的可以直接加壳 1.复制一份可执行文件 将赋值好的文件用UPX3.91加壳 0x0 ...

  8. 10.PHP加密相关

    PHP加密函数 <?php    $str = 'This is an example!';    echo '1:'.$str.'<br>';    $crypttostr = c ...

  9. 每天一道面试题LeetCode 01 -- 两数之和

    Two Sum 两数之和 Given an array of integers, find two numbers such that they add up to a specific target ...

  10. 认识WPF

    新开一节WPF桌面开发的讲解,这节先初步认识一下什么是WPF. 1.简介 WPF是 Windows Presentation Foundation 的英文缩写,意为"窗体呈现基础" ...