Jenkins

是什么:
基于JAVA开发的持续集成工具(CI),持续、自动化构建、测试、监控持续重复的工作。
持续集成是软件开发实践,团队开发成员集成工作,每次集成通过自动化的构建(编译、发布、自动化测试)来验证。

目的:尽快发现集成中的问题,省时省力,提升开发效率。

优点:

1、软件的持续构建和测试。
2、见识job的执行。
3、项目源代码修改的检测。
4、分布式构建。

Ansible

自动化运维工具,提供一种框架,集成多种运维模块(Puppet、cfengine、chef、func、fabric),实现批量部署的能力。

优点:

1、轻量级、客户端无需agent
2、批量任务可写成脚本
3、使用python编写,维护简单
4、支持sudo

Gitlab

代码仓库