自动化构建
https://my.oschina.net/u/2306127/blog/541222
持续集成
持续集成的核心价值在于: 持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,有利于减少重复过程以节省时间、费用和工作量; 持续集成保障了每个时间点上团队成员提交的代码是能成功集成的。换言之,任何时间点都能第一时间发现软件的集成问题,使任意时间发布可部署的软件成为了可能; 持续集成还能利于软件本身的发展趋势,这点在需求不明确或是频繁性变更的情景中尤其重要,持续集成的质量能帮助团队进行有效决策,同时建立团队对开发产品的信心
持续集成的原则(摘录)
业界普遍认同的持续集成的原则包括: 1)需要版本控制软件保障团队成员提交的代码不会导致集成失败。常用的版本控制软件有 IBM Rational ClearCase、CVS、Subversion 等; 2)开发人员必须及时向版本控制库中提交代码,也必须经常性地从版本控制库中更新代码到本地; 3)需要有专门的集成服务器来执行集成构建。根据项目的具体实际,集成构建可以被软件的修改来直接触发,也可以定时启动,如每半个小时构建一次; 4)必须保证构建的成功。如果构建失败,修复构建过程中的错误是优先级最高的工作。一旦修复,需要手动启动一次构建;
jenkins原理 (与maven,gitlab,tomcate持续构建集成)
ln -s jdkXXX/ jdk -- Linxu软连接
jenkins部署与环境安装
jenkins 原理讲解,如何通过git 、maven gitlab 、tomcat 构建持续集成环境 jenkins 部署与环境安装 jenkins 项目配置与管理 GIT的原理 1 必须从gitlab(源码私服) 获取我要打包的源 1.1下载指定分支最新源码(TEst) 1.2 并在本地切换过去 2 运行 mvn clean install 构建打包 3 打包之后存储至指下位置 4 将对应的包 上传到我们的nexus 私服(deploy、用户和密码) 5 基于Tomcat进行动态部署上去。 jenkins 部署
- 下载 https://jenkins.io/download/ 下载对应war 包 两种启动试:
- 直接基于任何servlet 容器(jetty\tomcat)等即可启动
- 基于java -jar 命令启动 java -jar jenkins.war --ajp13Port=-1 --httpPort=8888
- 关于jenkins 插件安装
- 首先选择默认推推荐的插件安装完成
- 进入插件管理页安装如下插件 #maven 管理插件 Maven Integration plugin #容器部署插件 Deploy to container Plugin 构建环境安装 :
- 服务端安装maven
- 服务端安装git 客户端
- 系统的工作流程大概分为以下几步: 1> 开发者将新版本push到git server (Gitlab)。 2> Gitlab随后触发jenkins master结点进行一次build。(通过web hook或者定时检测) 3> jenkins master结点将这个build任务分配给若干个注册的slave结点中的一个,这个slave结点根据一个事先设置好的脚本进行build。这个脚本可以做的事情很多,比如编译,测试,生成测试报告等等。这些原本需要手动完成的任务都可以交给jenkins来做。 4> 我们在build中要进行编译,这里使用了分布式编译器distcc来加快编译速度。 notes jenkins的工作原理是先将源代码从gitlab中拷贝一份到本地,然后根据设置的脚本进行build。我们可以看出,整个系统的关键就是那个build脚本,用来告诉jenkins在一次集成中需要执行的任务。 不过我之后是用的Github作为git server。但其实差不多,先讲到这里,重点难点还是在之后jenkins的安装配置使用上。