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就行了,发布由软件 ...
随机推荐
- Linux系统管理_主题01 :初识Linux_1.6 用好帮助文档man
在 man 界面中,可以使用如下快捷键来进行操作: 上/下箭头 向上/下滚动一行 [Space] 向下翻一页 [Page Down] 向下翻一页 [Page Up] 向上翻一页 [ ...
- 【转载】oracle中decode函数用法
1.DECODE的语法:DECODE(value,if1,then1,if2,then2,if3,then3,...,else).表示假设value 等于if1时,DECODE函数的结果返回then1 ...
- socket --自己简单的理解
一,网络编程中两个主要的问题 一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输. 在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可 ...
- Django前期知识准备
一. WEB应用 WEB应用程序是一种可以通过WEB访问的应用程序, 程序的最大好处是用户很容易访问应用程序, 用户只需要有浏览器即可, 不需要再安装其他软件. 应用程序有两种模式: C/S, B/S ...
- Spring boot Gradle项目搭建
Spring boot Gradle项目搭建 使用IDEA创建Gradle工程 操作大致为:File->new->Project->Gradle(在左侧选项栏中) 创 ...
- jQuery之替换节点
如果要替换节点,jQuery提供了两个方法:replaceWith()和replaceAll(). 两个方法的作用相同,只是操作颠倒了. 作用:将所有匹配的元素都替换成指定的HTML或者DOM元素.( ...
- 【miscellaneous】VLC组播与接收
搭建组播服务器 第一步:运行程序后选择"媒体--串流": 第二步:通过"添加"选择需要播放的文件(以wmv文件为例),单击"串流": 第三 ...
- Shortest Distance from All Buildings
You want to build a house on an empty land which reaches all buildings in the shortest amount of dis ...
- 【转帖】K8s-yaml的使用及命令
K8s-yaml的使用及命令 https://www.cnblogs.com/fuyuteng/p/9460534.html YAML配置文件管理对象 对象管理: # 创建deployment资源 k ...
- [转帖]SOCKS5代理与HTTP代理
SOCKS5代理与HTTP代理 https://blog.csdn.net/watson2017/article/details/79897693 [1]什么是SOCKS5协议. SOCKS是一种网络 ...