svn+jenkins自动部署
- 需求:项目经理想要将原型图修改完后直接发布
前置条件:
已经有了svn服务器,并正常使用
- 已经有了jenkins服务器,之前搭建的gitlab+jenkins,
- 如需搭建jenkins,参考 https://www.cnblogs.com/lz0925/p/10858278.html,
- 如需自动部署到远程服务器,参考 https://www.cnblogs.com/lz0925/p/10860460.html
步骤
- 1、首先在jenkins上添加svn凭据,配置svn权限
- 点击凭据,然后点击任一(global)进入凭据管理

点击左侧的添加凭据


其中的用户名密码,是svn的账号密码,填错的话,创建jenkins任务时会提示
- 点击凭据,然后点击任一(global)进入凭据管理
- 2、创建一个自由风格的jenkins项目
- General部分,根据自己需求设置,也可以不设置
- 源码管理 ,这里的Credentials就是我们刚添加的svn账号密码,Repository URL 填写项目地址

- 然后保存,在任务列表中找到刚建立的任务并点击进入,点击左侧立即构建测试一下,如果正常,进行下一步
- 3、配置svn的钩子
- 进入svn服务器,进入svn的钩子目录,我的目录是/home/svn/MyRepository/hooks
- 下载jenkins命令行客户端 wget http://172.168.50.41:9999/jnlpJars/jenkins-cli.jar,(如遇到权限问题,尝试修改文件所属用户和组,我的用户和组都是root)
- 复制一份post-commit.tmpl模板,名称改为post-commit,赋予777权限
vim post-commit
```!/bin/bash
source /etc/profile
java -jar /home/svn/MyRepository/hooks/jenkins-cli.jar -s http://172.168.50.41:9999/ -auth admin:jinglan build svn_test
保存退出
其中
-s http://172.168.50.41:9999/ 是jenkins服务器
-auth admin:admin 是jenkins用户名和密码
-build svn_test 是指定构建jenkins的任务名称,
其实这里还需要指定svn中的哪个项目的commit动作,触发哪个jenkins的任务 ,
通过REPOS="$1" 判断即可,
我这自动部署的项目都在gitlab上,svn仅部署项目经理用的这个文件夹,所以没有进行判断
```
- 现在可以在本地修改文件,通过svn的commit即可部署到指定服务器的指定目录了。
- 如有jenkins不会用的,参考文章开头的两篇博客,如需构建后删除旧文件的,可以自己写文本,然后执行,或者直接将脚本写到jenkins中
svn+jenkins自动部署的更多相关文章
- Jenkins自动部署Tomcat项目
Jenkins自动部署Tomcat项目 1.安装jenkins 插件 启动Jenkins,进入系统管理-插件管理: 选择Deploy to container Plugin 插件安装:
- 关于gitlab+jenkins自动部署代码的实现
本人PHP开发者,项目组大多是PHP,少量java项目. 因公司目前服务器和项目的管理比较混乱,与领导商量后,决定尝试 gitlab+jenkins自动化部署(之前用的svn FTP手动部署代码),解 ...
- 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建
使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 目录 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 使用jenkins自动 ...
- 使用Jenkins自动部署博客
title: 使用Jenkins自动部署博客 toc: true comment: true date: 2017-12-17 19:48:10 tags: ['Jenkins', 'CI'] cat ...
- 内存溢出导致jenkins自动部署到tomcat失败
原文地址:http://openwares.net/java/jenkens_deploy_to_tomcat_error_of_outofmemoryerror.html jenkins自动部署wa ...
- jenkins自动部署代码到多台服务器
下面讲一下如何通过一台jenkins服务器构建后将代码分发到其他的远程服务器,即jenkins自动部署代码到多台服务器. 1.下载 pulish over ssh 插件 2.系统管理 -> 系统 ...
- Jenkins自动部署spring boot
Jenkins自动部署spring boot 背景介绍 本公司属于微小型企业,初期业务量不高,所有程序都写在一个maven项目里面,不过是多模块开发. 分了login模块,service模块,cms模 ...
- Jenkins+Maven+SVN搭建自动部署、自动测试环境
.打开http://10.3.15.78:8080/jenkins/,第一次进入里面没有数据,我们需要创建job,我们这有2个项目,需要创建2个job.http://10.3.34.163:9890/ ...
- SVN——Jenkins自动发布
最近公司项目处于开发阶段,很多功能开发完后就需要发布到测试环境等待测试去验收,这个时候如果手动更新网站的话,是很费时费力的. 于是乎,我们做成了自动发布,这样我们只管提交代码到SVN就行了,发布由软件 ...
随机推荐
- 侧方、s弯道、坡起相关
侧方: 方向盘上端对准路中箭头直行,当前面箭头头部尖角刚刚消失,停车,挂倒档,倒,当箭头尾部快要消失时右打死,侧身看左后视镜(这时可以稍微踩一下离合控制速度为低速),当出现库底角回正,坐直,当左侧第一 ...
- 一百二十六:CMS系统之轮播图管理页面布局和添加轮播图的模态对话框制作
视图 @bp.route('/banners/')@login_required@permission_required(CMSPersmission.POSTER)def banners(): re ...
- .NET下的对称加密算法
1.关于.NET下的对称加密算法. .NET Framework类库提供了对称加密.散列函数.非对称加密.数字签名等现有的主流加密算法..NET中默认实现了4种对称加密算法:DES.Triple ...
- 实战keras——用CNN实现cifar10图像分类
原文:https://blog.csdn.net/zzulp/article/details/76358694 import keras from keras.datasets import cifa ...
- sql server 备份语句
1.BACKUP DATABASE your_database TO DISK = 'diff.bak'with DIFFERENTIAL #差异备份,仅备份数据2.BACKUP DATABASE y ...
- python3速查参考- python基础 2 -> if语句应用 + while循环应用
if语句应用之——求最大值 """ 求三个数字中的最大值,并打印出来 """ a = int(input("a:")) ...
- Python3 Selenium自动化web测试 ==>FAQ:隐式等待和sleep区别
FAQ: 情景1: 设置等待时间 A方法:sleep 线程休眠,但只单次有效,其他操作需要加载等待时间,需要再次添加time.sleep() B方法:implicitly_wait() from se ...
- 鸟哥私房菜基础篇:Linux 账号管理与 ACL 权限配置习题
猫宁!!! 参考:http://cn.linux.vbird.org/linux_basic/0410accountmanager.php 1-root 的 UID 与 GID 是多少?而基于这个理由 ...
- Linux服务器感染kerberods病毒 | 挖矿病毒查杀及分析 | (curl -fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org)|sh)
概要: 一.症状及表现 二.查杀方法 三.病毒分析 四.安全防护 五.参考文章 一.症状及表现 1.CPU使用率异常,top命令显示CPU统计数数据均为0,利用busybox 查看CPU占用率之后,发 ...
- JAVA语言课堂测试01源代码(学生成绩管理系统)
package 考试; /*信1807-8 * 20183798 * 向瑜 */ import java.util.Scanner; //ScoreInformation 类 class ScoreI ...