本文介绍jenkins,利用其做项目发布与持续集成交付工具。

一、Jenkins是什么?

Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作。
3、省去项目不必要的繁琐重复的发布工作。

二、安装Jenkins

打开官方网址:

http://mirrors.jenkins-ci.org
直接下载合适的版本,有多种操作系统版本,

对于linux还可以添加系统安装源形式进行安装,不过个人不建议这么做,使用最直接最简单的方式:下载官方war包到服务器一个tomcat webapps目录下,重启动tomcat即可工作。
打开浏览器:http://localhost:8080/jenkins 端口和IP根据实际情况而定。
如部署在内网jenkins的: http://10.10.2.102:8011/jenkins/
1、第一次打开jenkins需要记录一串初始化密码,直接看tomcat logs有一串密码串直接拷贝就行了。
2、密码验证通过之后,可以直接创建管理员账号和密码。
3、创建完成用户名和密码之后,来到安装插件界面,可以选择官方建议插件安装也可跳过自已进入系统配置中选择安装,我个人建议先按官方建议插件安装就行了
(注意:不过安装时间有点久,特别还有一个插件pip是google的下载需要国外VPN,等它超时直接刷新页面跳过这个就行了)。
进入之后看到如下界面:
上图中有一个 pipeline警告,就是前面说的安装不成功,暂时不管它,用不到!
可以点击“系统管理->管理插件-》搜索 maven plugin插件安装“,同时结合自己环境需要选择安装其他插件。

三、新建任务

如assp项目:
可选参数化构建,即可以根据tag构建版本列表。
源码管理根据实际情况选择SVN或GIT我assp项目使用的是SVN,所以选择SVN输入SVN路径,用户名,密码。选择SVN更新策略。
然后可选择部署策略,这里选择选增加构建步骤
因为我们前端源代码使用了 GIT作源代码管理,还是发布部署web服务是tomcat所以需要写shell脚本来辅助我们发布工作。
添加SHELL脚本如下
保存,当然还可添加构建后的步骤,如发邮箱通知,这里没有部署邮局服务,所以省略此步骤。

四、最后构建

回到控制面版中
可以点击立即构建按钮,进行工作。
工具根据SVN,GIT获取最新版本,编译打包,发布。重启服务等。
可以设置构建策略,即可以定时发布,也可以设置每次提交代码自动发布。
Jenkins还有很高级的功能,如:分布式构建、参数化、并发等,这里介绍了最简单的方式!

最新文章

  1. H5案例分享:JS手势框架 —— Hammer.js
  2. openstack云5天资料
  3. Python开发【前端】:DOM
  4. Windows编程入门程序详解
  5. 如何确定C#代码是在编译时执行还是在运行时执行
  6. String和StringBuffer的转换
  7. MFC之动态创建按钮
  8. 一些有意思的APP
  9. 怎么通过 Microsof Office Project 2010 来写功能开发计划
  10. javascript 原生事件综合查询
  11. JSONP解决ajax跨域问题
  12. CDH版HDFS Block Balancer方法
  13. 自问自答-hadoop在安全模式下究竟干了什么见不得人的事
  14. (转)webstorm快捷键
  15. MySQL 加锁处理分析-转载
  16. PPT分享 | 怎么在区块链上保护隐私?
  17. React Native在特赞的应用与实践
  18. mysql用户链接数
  19. LSTM和GRU
  20. 「Android」 Surface分析

热门文章

  1. java.lang.NoClassDefFoundError: Lcom/opensymphony/xwork2/util/logging/Logger tomcat6 启动错误
  2. mysql 8 server windows 安装经验分享
  3. Kafka在大型应用中的 20 项最佳实践
  4. 【Python】Python网络编程
  5. 【bzoj4011】[HNOI2015]落忆枫音 容斥原理+拓扑排序+dp
  6. BZOJ3591 最长上升子序列(状压dp)
  7. Expect the Expected UVA - 11427(概率dp)
  8. 【刷题】BZOJ 1453 [Wc]Dface双面棋盘
  9. Opencv2.4.9+win7+VS2012一次性配置的方法--通过建立属性表永久配置
  10. 【SPOJ】QTREE6(Link-Cut-Tree)