一.简介
Jenkins是一个开源项目,提供了一种易于使用可扩展的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实现上。同时Jenkins能实时监控集成时存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。
2009年,甲骨文收购了Sun并继承了Hudson代码库。在 2011 年年初,甲骨文和开源社区之间的关系破裂,该项目被分成两个独立的项目: Jenkins:由大部分原始开发人员组成 Hudson:由甲骨文公司继续管理
Jenkins 其本身上没有整合太多的功能,只是提供了一个持续集成的WEB平台,它是通过大量的插件,实现了一系列的持续化集成的工作。
例如通过gitlab插件进行代码下载,指定下载分支。通过Git Parameter Plug-In动态获取代码的分支信息,构建时可以选择分支发布。
觉得默认显示的pipeline流程页面不好看,用Blue Ocean插件可以显示更舒服的流程页面。
实际上不使用那些插件,只单纯写一个shell脚本,里面写上git clone代码,编译再ansible发布,而jenkins只是运行这个脚本并打印日志也是可以的。并且也推荐用这种方法,这里使用ansible插件就需要在jenkins中进行配置不方便后续进行迁移。而在机器上安装一个Ansible并在脚本中运行playbook会更加方便管理