jenkins+maven+svn 自动化布署

2024-01-02 13:58

本文主要是介绍jenkins+maven+svn 自动化布署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

环境:linux 6.5
一、下载jenkins 安装jdk1.8
地址http://mirrors.jenkins-ci.org/下载适合的Jenkins版本。
下载war包 java -jar jenkins.war 或者tomcat来部署jenkins。本人使用的是第一种方式
二、配置maven。
下载maven。

mkdir  /usr/local/maven
wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz

配置环境变量

tar -xf apache-maven-3.3.9-bin.tar.gz -C /usr/local/maven
vim /etc/profile
export M2_HOME=/usr/local/maven
export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin
source /etc/profile

配置setting.xml私有maven仓库。

三、配置Jenkins
1、打开http://ip:80进入里面没有数据,我们需要创建job,
这里写图片描述
这里写图片描述
然后提交
这里写图片描述
第一次会有有红色警告信息提示输入用户名和密码验证svn

然后可以配置自动构建的计划任务列如
假设我们想让项目中每天20点自动构建一次,只需要在Build Triggers中选择Build periodically,并在Schedule中输入 0 20 * * *。
这里写图片描述
配置到这里,可能有人发现在Build配置节点,有红色错误信息,提示
Jenkins needs to know where your Maven2 is installed.
Please do so from the system configuration
这里写图片描述
这是因为Jenkins找不到maven的原因,点击"system configuration",是system configuration的maven配置中添加maven目录就OK,如下图:
这里写图片描述
保存好所有配置后,你配置的job就完成了。
接下来是我们来配置当项目构建失败了系统发送邮件通知。
这里写图片描述
填写邮件服务器的信息以及你的用户名,这是本公司的邮件服务器,除了用户名和密码更改你本来的就行了
这里写图片描述
配置完毕我们可以test
这里写图片描述
然后在回到我们配置的job里面
这里写图片描述
这里写图片描述
这里写图片描述

四、配置自动部署应用。
首先我们来安装插件
选择“系统管理”菜单的“管理插件”:
这里写图片描述
找到插件
这里写图片描述

点击安装这两个插件(maven插件)。

接下来
这里写图片描述
这里写图片描述
配置ssh信息

然后在回到工程配置里面
这里写图片描述
/root/jenkins.sh是本人编写的shell脚本。shell内容可以自己定义:
列如一个最简单的shell(很多其他内容省去)

#!/bin/sh
#关闭真正运行的进程
kill -9 `ps -ef | grep  -w tomcat|grep -v grep  |awk '{print $2}'`
#copy API工程的配置文件
cp /root/.jenkins/workspace/cf-sms/target/cf-sms-1.0.0.war /root/tomcat/webapps/
#重启tomcat
sh /root/tomcat/bin/startup.sh

然后访问自己的工程

注:归档回滚配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

export BUILD_ID=dontKillme
case $deploy in 
update)
mvn clean install -Dmaven.test.skip=true
sh /home/dubbo/lt_project_workspace/lt-jenkins.sh
;;
rollback)
echo "version:${version}"rm -f /root/.jenkins//workspace/lt-bs/dolphin-longtian-web/target/dolphin-longtian-web.war
cp -f  /root/.jenkins/jobs/lt-bs/builds/${version}/archive/dolphin-longtian-web/target/dolphin-longtian-web.war /root/.jenkins//workspace/lt-bs/dolphin-longtian-web/targetrm -f /root/.jenkins//workspace/lt-bs/dolphin-longtian-basic-serivce/target/dolphin-longtian-basic-service.war
cp -f  /root/.jenkins/jobs/lt-bs/builds/${version}/archive/dolphin-longtian-basic-service/target/dolphin-longtian-basic-service.war /root/.jenkins//workspace/lt-bs/dolphin-longtian-basic-service/targetsh /home/dubbo/lt_project_workspace/lt-jenkins.sh
;;
*)
exit
;;
esac
cd /root/.jenkins/jobs 
find ./ -name *.war* -mtime +30 -exec rm -fr {} \;

在这里插入图片描述
在这里插入图片描述

#!/bin/sh
set -m
#关闭service-tomcat运行的进程
kill -9 `ps -ef | grep  -w lt-tomcat-service-8200|grep -v grep  |awk '{print $2}'`
#copy API工程的配置文件
cp /root/.jenkins/workspace/lt-bs/dolphin-longtian-basic-service/target/dolphin-longtian-basic-service.war /home/dubbo/lt-tomcat-service-8200/webapps/
rm -fr /home/dubbo/lt-tomcat-service-8200/ROOT
#重启service-tomcat
sh /home/dubbo/lt-tomcat-service-8200/bin/startup.sh#关闭web-tomcat运行的进程
kill -9 `ps -ef | grep  -w lt-tomcat-web-8201|grep -v grep  |awk '{print $2}'`
#copy API工程的配置文件
cp /root/.jenkins/workspace/lt-bs/dolphin-longtian-web/target/dolphin-longtian-web.war /home/dubbo/lt-tomcat-web-8201/webapps/
rm -fr /home/dubbo/lt-tomcat-web-8201/ROOT
#重启web-tomcat
sh /home/dubbo/lt-tomcat-web-8201/bin/startup.sh

这篇关于jenkins+maven+svn 自动化布署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/562645

相关文章

Docker部署Jenkins持续集成(CI)工具的实现

《Docker部署Jenkins持续集成(CI)工具的实现》Jenkins是一个流行的开源自动化工具,广泛应用于持续集成(CI)和持续交付(CD)的环境中,本文介绍了使用Docker部署Jenkins... 目录前言一、准备工作二、设置变量和目录结构三、配置 docker 权限和网络四、启动 Jenkins

Python自动化处理手机验证码

《Python自动化处理手机验证码》手机验证码是一种常见的身份验证手段,广泛应用于用户注册、登录、交易确认等场景,下面我们来看看如何使用Python自动化处理手机验证码吧... 目录一、获取手机验证码1.1 通过短信接收验证码1.2 使用第三方短信接收服务1.3 使用ADB读取手机短信1.4 通过API获取

Rust中的Drop特性之解读自动化资源清理的魔法

《Rust中的Drop特性之解读自动化资源清理的魔法》Rust通过Drop特性实现了自动清理机制,确保资源在对象超出作用域时自动释放,避免了手动管理资源时可能出现的内存泄漏或双重释放问题,智能指针如B... 目录自动清理机制:Rust 的析构函数提前释放资源:std::mem::drop android的妙

Python自动化Office文档处理全攻略

《Python自动化Office文档处理全攻略》在日常办公中,处理Word、Excel和PDF等Office文档是再常见不过的任务,手动操作这些文档不仅耗时耗力,还容易出错,幸运的是,Python提供... 目录一、自动化处理Word文档1. 安装python-docx库2. 读取Word文档内容3. 修改

Python自动化办公之合并多个Excel

《Python自动化办公之合并多个Excel》在日常的办公自动化工作中,尤其是处理大量数据时,合并多个Excel表格是一个常见且繁琐的任务,下面小编就来为大家介绍一下如何使用Python轻松实现合... 目录为什么选择 python 自动化目标使用 Python 合并多个 Excel 文件安装所需库示例代码

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

使用maven依赖详解

《使用maven依赖详解》本文主要介绍了Maven的基础知识,包括Maven的简介、仓库类型、常用命令、场景举例、指令总结、依赖范围、settings.xml说明等,同时,还详细讲解了Maven依赖的... 目录1. maven基础1.1 简介1.2 仓库类型1.3 常用命令1.4 场景举例1.5 指令总结

10个Python自动化办公的脚本分享

《10个Python自动化办公的脚本分享》在日常办公中,我们常常会被繁琐、重复的任务占据大量时间,本文为大家分享了10个实用的Python自动化办公案例及源码,希望对大家有所帮助... 目录1. 批量处理 Excel 文件2. 自动发送邮件3. 批量重命名文件4. 数据清洗5. 生成 PPT6. 自动化测试

10个Python Excel自动化脚本分享

《10个PythonExcel自动化脚本分享》在数据处理和分析的过程中,Excel文件是我们日常工作中常见的格式,本文将分享10个实用的Excel自动化脚本,希望可以帮助大家更轻松地掌握这些技能... 目录1. Excel单元格批量填充2. 设置行高与列宽3. 根据条件删除行4. 创建新的Excel工作表5

MySQL分表自动化创建的实现方案

《MySQL分表自动化创建的实现方案》在数据库应用场景中,随着数据量的不断增长,单表存储数据可能会面临性能瓶颈,例如查询、插入、更新等操作的效率会逐渐降低,分表是一种有效的优化策略,它将数据分散存储在... 目录一、项目目的二、实现过程(一)mysql 事件调度器结合存储过程方式1. 开启事件调度器2. 创