ant项目打包的劣势,ant目录打包教程

  

  

概述

  

  

  今天我简单整理了一下詹金斯的一些概念性内容,总结如下:   

  

  

1、概念

  

  

   jenkins是一个开源项目,它提供了一个易于使用的持续集成系统,将开发人员从复杂的集成中解放出来,专注于更重要的业务逻辑实现。同时,Jenkins可以实时监控集成中存在的错误,提供详细的日志文件和提醒功能,并以图表的形式图形化显示项目建设的趋势和稳定性。   

  

  Jenkins可以构建一个自动化的持续集成环境,该环境可用于“自动”编译、打包、分发和部署应用程序。兼容ant、maven、gradle等第三方构建工具,可以与svn、git无缝集成。它还支持与知名源代码托管网站的直接集成,如github和bitbucket。   

  

     

  

  

2、Jenkins的功能

  

  

     

  

  1. 定时拉取代码并编译   

  

  2. 静态代码分析   

  

  3. 定时打包发布测试版   

  

  4. 自定义操作,如跑单元测试等   

  

  5. 出错提醒   

  

     

  

  

3、原理

  

  

     

  

  这里选择Gitlab作为git服务器。Gitlab的功能和Github类似,但它是开源的,可以用来构建私有git服务器。它还提供了一个非常强大的web GUI。例如,开发人员互相审查源代码将会很方便。系统的工作流程大致分为以下几个步骤:   

  

  1开发者将新版本推送到git服务器(Gitlab)。   

  

  Gitlab然后触发jenkins主节点进行构建。(通过网络挂钩或定时检测)   

  

  3 jenkins主节点将这个构建任务分配给几个注册的从节点中的一个,这个从节点按照预先设置的脚本进行构建。这个脚本可以做很多事情,比如编译、测试、生成测试报告等等。这些需要人工完成的任务都可以交给詹金斯。   

  

  4我们准备在build中编译,这里使用分布式编译器distcc来加速编译。   

  

  Jenkins的工作原理是从gitlab复制一份源代码到本地,然后按照设定好的脚本进行构建。我们可以看到,整个系统的关键是构建脚本,它用来告诉jenkins在一个集成中要执行的任务。   

  

  但是后来我用Github做git服务器。但是也差不多。   

  

  

4、部署方式

  

  

   1.詹金斯触发器结构:   

  

  用于开发环境部署,开发者推送代码或将代码合并到gitlab项目的master分支,jenkins将代码部署到相应的服务器。   

  

  2.jenkins的参数化构造;   

  

  用于测试环境的预发布环境部署。在push代码被开发或者合并到gitlab项目的master分支之后,该代码将不会被部署。而是需要登录jenkins的web界面,点击build按钮,输入相应的参数(比如要构建的标签和要部署的分支),然后再进行部署。   

  

  3.jenkins定期构建:   

  

  用于APP自动打包,在参数化构造的基础上增加了定时构造。开发人员可以登录jenkins手动导入标签进行打包。如果没有,詹金斯会每天早上从gitlab拉最新的APP代码进行打包。   

  

  

5、持续集成的分类

  

  

     

  

  1.持续集成:它意味着程序员可以频繁地将代码部署到主干上,并在代码开发项目中进行自动化测试。   

  

  2.持续交互:指在持续集成的基础上,将代码部署到在线测试环境中。   

  

  3.持续部署:基于持续交互对待部署代码进行自动部署,包括持续交互和持续部署。   

  

  后面会分享更多关于devops和DBA的内容,感兴趣的朋友可以关注一下~   

  

     

相关文章