很高兴地宣布 flow.ci 在 Apache-2.0 协议下正式开源了.flow.ci 是国内首套开源持续集成(CI) 解决方案,帮助企业团队实现开发流程(build-test-deploy)自动化,快速持续交付高质量软件. 官方网站:https://flow.ci 开源地址:https://github.com/flowci 以此,你可以将功能完整的 flow.ci 持续集成服务部署到内网使用.在使用过程中有任何 bug 反馈或功能建议,可直接在 github 提 issues,或者通过 p…
概述 持续集成(Continuous Integration,简称CI)是一种软件开发实践,团队开发人员每次都通过自动化的构建(编译.发布.自动化测试)来验证,从而尽早的发现集成错误.持续集成最大的优点是避免了传统模式在集成阶段的除虫会议(bug meeting),其要素包括统一的代码库.自动构建.自动测试.自动部署.频繁提交修改过的代码等. Jenkins的前身是Hudson,是基于Java开发的一种持续集成工具,是一个开源软件项目,主要用于: 持续.自动地构建/测试软件项目,如CruiseC…
Git Hooks.GitLab CI持续集成以及使用Jenkins实现自动化任务 前言 在一个共享项目(或者说多人协同开发的项目)的开发过程中,为有效确保团队成员编码风格的统一,确保部署方式的统一,等等(git的用户经常会涉及到此类场景),常常会使用类似 Git Flow 这种比较复杂的工作流开发模式.在较大型的项目中,虽然这种工作流模式比较成熟,但在分支处理方面,这种工作流就会造成较多的重复劳动. 因此,如果能借助某些工具来自动化处理这些重复性事务,比如自动合并分支,那么对于提升我们的工作效…
CI持续集成 “我的TDD实践”系列之CI持续集成 写在前面: 我的TDD实践这几篇文章主要是围绕测试驱动开发所展开的,其中涵盖了一小部分测试理论,更多的则是关注工具的使用及环境的搭建,做到简单实践先行,后理论专精的目的. TDD实践系列文章: 1.TDD概念篇 2.CI持续集成 3.SVN架设篇 4.NUint测试框架 5.Mock模拟框架 6.Inject注入框架 7.TestCoverage代码覆盖率工具 8.UMLTool建模工具 9.SandCastle构建文档 简介 CI(Conti…
Gitlab CI 持续集成的完整实践 本着公司团队初创,又在空档期想搞点事情,搭建了私有Gitlab的契机,顺便把持续集成搭建起,实现了对Python服务端代码的单元测试.静态代码分析和接口测试的持续集成.总体架构如下: 执行过程: 开发提交代码后,自动触发gitlab-runner拉取executor镜像执行单元测试,单元测试代码中包含上传测试结果到x-utest测试平台: 单元测试通过后,gitlab-runner拉取sonar-scanner镜像执行静态代码分析,分析结果评论在commi…
“我的TDD实践”系列之CI持续集成 写在前面: 我的TDD实践这几篇文章主要是围绕测试驱动开发所展开的,其中涵盖了一小部分测试理论,更多的则是关注工具的使用及环境的搭建,做到简单实践先行,后理论专精的目的. TDD实践系列文章: 1.TDD概念篇 2.CI持续集成 3.SVN架设篇 4.UnitTest单元测试 简介 CI(Continuous Integration)持续集成,最重要的服务对象是TDD,它是一个集合概念,包括自动构建build项目,自动分析代码,自动测试,自动邮件报告,自动预…
用好这个工具不仅可以提高效率,还能使开发流程更可靠和专业化,从而提高软件的价值.而且,它对于开源项目是免费的,不花一分钱,就能帮你做掉很多事情. 一.什么是持续集成? Travis CI 提供的是持续集成服务(Continuous Integration,简称 CI).它绑定 Github 上面的项目,只要有新的代码,就会自动抓取.然后,提供一个运行环境,执行测试,完成构建,还能部署到服务器. 持续集成指的是只要代码有变更,就自动运行构建和测试,反馈运行结果.确保符合预期以后,再将新代码"集成&…
0.前言 前段时间,考虑到要练习部署一套CI/CD的系统.一开始考虑到Jenkins,随着这两天的了解,发现最新版的GitLab已经提供有CI/CD集成了.所以本次博客,干脆一步到位,直接用GitLab里面的CI/CD模块.Jenkins可能需要更高级的应用场合.经过测试GitLab自带的功能完全符合我的需求. 1. 安装GitLab和GitLab-CI(gitlab-runner) 英语比较好的,可以直接看官方文档.https://docs.gitlab.com/omnibus/docker/…
Jenkins的CI持续集成 全局配置 系统管理->全局工具配置,配置Git,JDK和Maven 1)解压maven到当前目录 tar zxf apache-maven-3.5.4-bin.tar.gz 2)移动maven解压目录里的所有文件到/usr/local/maven/目录下 mv apache-maven-3.5.4/* /usr/local/maven/ 3)设置maven的环境变量(追加后边) vi /etc/profileexport MAVEN_HOME=/usr/local/…
(1)什么是CI What is CI? CI就是持续集成,持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译.发布.自动化测试)来验证,从而尽快地发现集成错误.许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件. PS:把企业中的一系列过程集成在CI平台上,可以写好脚本,点击执行,或者定时执行. CD就是持续交付,是在CI的基础进行了扩展,在CI环节完成了软件…