2、jenkins+svn自动发布和回滚



- 通过ssh连接远程服务器,并能执行脚本部署项目
- 安装publish-over-ssh
- 在“系统管理” -> “系统设置“ -> “Publish over SSH” 中配置对应的ssh信息
- Key中填登录远程服务器的密码
- 点击"SSH Servers"后的“增加”按钮,新增一个远程服务器
- 点开“高级...”按钮,能进一步的配置端口等信息。
- 配置为Server信息后,点击"Test Configuration"按钮测试是否能够连接成功。

- 点击左侧边栏的“新建”按钮,新建一个任务。
- 填写项目的名称,并选择一种构建的方式,此时我们选择第一个,构建一个自由风格的软件项目,然后点击“OK”按钮创建任务,并进行详细的配置(这里选择的是自由风格的软件项目,项目的打包实在脚本命令中进行)

- 默认设置里填写项目名和描述,并选择之前配置好的要连接的svn(这里使用本地链接配置)

- 配置源码,填写要构建项目的源码仓库地址。

- 配置触发器,选择触发构建的方式,选择的定时检测项目变动,如果检测到分支有新的变动就触发构建,可以自己设置时间频率。

- 配置构建后操作, 该行为会在构建完成后执行,我们选用的是“Send build artifacts over SSH”的方式,把构建完成的jar包发送到远程服务器上用ssh命令执行启动,此时jenkins所有机器的默认路径是任务所在的目录,远程机器的默认路径是之前publish-over-ssh中指定的文件地址。Source files指定要传送到远程服务器上的文件,remote directory指定的是传送到远程服务器上的文件地址,Remove prefix是值要去除的文件目录,不然传送到远程服务器也会带有该目录层级结构的。exec Command里输入的是在远程服务器上要执行的指令。


- 项目构建后会有构建历史,点击进去,选择“Console Output”就可以查看构建过程中的执行记录
- 目前实现了项目的自动部署,但有时需要在部署失败时回滚到指定版本的构建,这样才能更灵活的进行项目的构建部署。可以选择“参数化的构建过程”进行传递不同的参数来选择是进行新的构建还是回滚。
- 要实现回滚,一定要在构建后将,构建完成的文件进行存档,方便以后回滚的时候使用。

- 使用参数化构建过程,让后面的脚步可以根据不同的变量执行不同的操作。添加“Choice”参数配置不同的选项,让选择发布还是回滚,添加“String Parameter”参数来传递要回滚的版本号。


- 构建选择“Execute Shell”的方式,自己根据变量,自定义构建的脚本。
- 如果是参数是选择deploy就使用maven的构建过程进行新的构建
- 如果是回滚,知道历史构建后的文件,复制到当前构建结果目录。

- 点击构建,根据不同的参数选择发布还是回滚,回滚的时候填写要回滚到的历史版本号

2、jenkins+svn自动发布和回滚的更多相关文章
- Jenkins 搭建企业实战案例 (发布与回滚)
让我们的代码部署变得easy,不再难,Jenkins是一个可扩展的持续集成引擎,是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能.Jenkins非常易于安装和配置,简单易用 ...
- Jenkins实用发布与回滚PHP项目生产实践
目录 1.概述 2.项目实践 2.1.环境说明 2.2.Jenkins配置 2.2.1.修改Jenkins的运行用户 2.2.2.配置Jenkins用户和Gitlab的ssh-key 2.2.3.Je ...
- ansible实现发布、回滚功能
ansible的两篇博客,本来是打算合二为一的,发现只用一篇写,嗯,好鬼长.... 一向秉承简单为美的我于是忍痛割爱,一分为二了 ansible实现升级发布.回滚功能 1.应用场景 在实际生产环境中, ...
- Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(四):发布与回滚
写在前面 我们以前windows跑.net Framework程序的时候,发布,自己乖乖的替换程序:备份,也是自己一个一个的重命名备份:回滚,发布遇到问题的回滚更是不用说了:运维很是怕我们 这些用wi ...
- jenkins 实现测试发布、预发布、真实发布、回滚发布
主要思路: 1.做三个文件夹,用于放置不可随意修改的配置文件(测试发布.预发布.真实发布) 2.每次都先修改配置文件再进行构建(构建时会先把配置文件复制到构建的目录,再同步到发布的目录) 3.发布完代 ...
- Jenkins+tomcat自动发布的热部署/重启及遇到的坑解决办法
一.背景 公司的项目一直手动maven打包.上传服务器.关闭/开启tomcat,整个流程下来耗时耗力,虽然可以将所有流程通过shell脚本一次性解决,但如果可以通过idea的Jenkins插件一键自动 ...
- svn命令行版本回滚
下面以版本号2011回滚到2010为例,在命令行输入: svn merge --dry-run -r 2011:2010 http://my.repository.com/my/project/tru ...
- k8s用kubectl管理应用升级,服务发布与回滚,扩缩容
应用升级 Kubectl set image --help 有案例指定新版本 [root@k8s-master ~]# kubectl set image deployment/nginx nginx ...
- 配置Jenkins 实现自动发布maven项目至weblogic(svn+maven+weblogic12c)
Jenkins安装完成之后,需要我们对其配置,然后才可以实现自动部署项目. 前提 防火墙开放weblogic的7001端口 Linux(CentOS):firewall-cmd --zone=publ ...
随机推荐
- 2019中山大学程序设计竞赛 Triangle
今天水了一发hdu上的中山校赛 这个题交了将近十遍才过...... 就是说给 n 个木棍,如果能找出3个能组成三角形的木棍就输出yes 反之输出no 乍一看很简单 一个排序遍历一遍就好了 但是n值太大 ...
- CentOS7使用yum安装MySQL8.0
1.yum仓库下载MySQL:sudo yum localinstall https://repo.mysql.com//mysql80-community-release-el7-1.noarch. ...
- celery概述
celery介绍 Celery是一个功能完备即插即用的任务队列.它使得我们不需要考虑复杂的问题,使用非常简单.celery看起来似乎很庞大,本章节我们先对其进行简单的了解,然后再去学习其他一些高级特性 ...
- P3366 【模板】最小生成树
原题链接 https://www.luogu.org/problemnew/show/P3366 一道最小生成树的模板题...... 昨天刚学最小生成树,wz大佬讲的一塌糊涂井然有序,所以我们今天做起 ...
- XMLHttpRequest的使用
XMLHttpRequest的使用 标签(空格分隔): JavaScript 前端 编程 function sendAjax() { //构造表单数据 var formData = new FormD ...
- C# 将前端传来的图片文件分别以大图和缩略图保存
HttpPostedFile pic_upload = Request.Files["file"]; Bitmap bitmap = (Bitmap)System.Drawing. ...
- [ZJOI2011]营救皮卡丘
题目描述 皮卡丘被火箭队用邪恶的计谋抢走了!这三个坏家伙还给小智留下了赤果果的挑衅!为了皮卡丘,也为了正义,小智和他的朋友们义不容辞的踏上了营救皮卡丘的道路. 火箭队一共有N个据点,据点之间存在M条双 ...
- 【WebSocket】WebSocket介绍
1.背景 在WebSocket出现之前客户端向服务器发出请求是通过http协议实现的,而http协议有个特点是通行请求只能由客户端发起,然后服务端响应查询结果,HTTP 协议没法让服务器主动向客户端推 ...
- Apache Hadoop 2.9.2 完全分布式部署
Apache Hadoop 2.9.2 完全分布式部署(HDFS) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.环境准备 1>.操作平台 [root@node101.y ...
- 机器学习在入侵检测方面的应用 - 基于ADFA-LD训练集训练入侵检测判别模型
1. ADFA-LD数据集简介 ADFA-LD数据集是澳大利亚国防学院对外发布的一套主机级入侵检测数据集合,包括Linux和Windows,是一个包含了入侵事件的系统调用syscall序列的数据集(以 ...