Jenkins
Jenkins作为老牌的持续集成框架,在这么多年的发展中,积累很多优秀的plugin工具,对进行持续集成工作带来很大的便利。
gitlab-ci
gitlab-ci作为gitlab提供的一个持续集成的套件,完美和gitlab进行集成,gitlab-ci已经集成进gitlab服务器中,在使用的时候只需要安装配置gitlab-runner即可。
gitlab-runner基本上提供了一个可以进行编译的环境,负责从gitlab中拉取代码,根据工程中配置的gitlab-ci.yml,执行相应的命令进行编译。
jenkins VS gitlab-runner
- gitlab-runner配置简单,很容易与gitlab集成。当新建一个项目的时候,不需要配置webhook回调地址,也不需要同时在jenkins新建这个项目的编译配置,只需在工程中配置gitlab-ci.yml文件,就可以让这个工程可以进行编译。
- gitlab-runner没有web页面,但编译的过程直接就在gitlab中可以看到,不需要像jenkins进入web控制台查看编译过程。
- gitlab-runner仅仅是提供了一个编译的环境而已,全部的编译都通过shell脚本命令进行。当然,jenkins也可以是全部的编译都通过shell脚本命令进行。
- jenkins的好处就是编译服务和代码仓库分离,而且编译配置文件不需要在工程中配置,如果团队有开发、测试、配置管理员、运维、实施等完整的人员配置,那就采用jenkins,这样职责分明。不仅仅如此,jenkins依靠它丰富的插件,可以